Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: Проблема с куками
Форумы портала PHP.SU » » Вопросы новичков » Проблема с куками

Страниц (1): [1]
 

1. QDef - 23 Января, 2012 - 05:03:07 - перейти к сообщению
При просмотре куков в браузере они отображаются, а вот при выводе var_dump($_COOKIE) ничего нет кроме PHPSESSID (Firefox)
В GoogleChrome они даже в браузере не отображаются. Подскажите пожалуйста, в чем может быть проблема?
2. Okula - 23 Января, 2012 - 07:05:20 - перейти к сообщению
Напиши как ты их задаёшь.
3. QDef - 23 Января, 2012 - 23:45:16 - перейти к сообщению
4. Okula - 23 Января, 2012 - 23:49:23 - перейти к сообщению
Ты выводишь var_dump() сразу же после регисрации кук? Потому что они отобразяться в браузере только при последующей загрузке страницы.
5. QDef - 23 Января, 2012 - 23:55:38 - перейти к сообщению
поле того как записал значение в куки, делаю переадресацию на главную страницу и там смотрю..

PHP:
скопировать код в буфер обмена
  1. if (isset($_POST['autologin'])) {
  2.  
  3.                     $hash = md5(time() + date("d"));
  4.                     $model->autologin($hash, $_POST['login'], $_POST['password']);
  5.                     setcookie('hash',$hash,time() + 3600 * 24 * 30);
  6.  
  7.  
  8.  
  9.                     header('Location: /');
  10.                 }
6. OrmaJever - 23 Января, 2012 - 23:58:12 - перейти к сообщению
Скорее всего 4 и 5 параметры функции setcookie() надо указать, без них часто бывают проблемы.
7. QDef - 24 Января, 2012 - 00:10:43 - перейти к сообщению
string path
string domain
int secure

можно пример? что должны содержать параметры?
8. Okula - 24 Января, 2012 - 00:11:51 - перейти к сообщению
Пример
9. OrmaJever - 24 Января, 2012 - 00:17:07 - перейти к сообщению
QDef пишет:
можно пример? что должны содержать параметры?

domain это php.su или forum.php.su (для браузера это абсолютно разные домены)
ну а path это виртуальный адрес директории / (чаще всего используют) либо /forum/
10. QDef - 24 Января, 2012 - 00:27:23 - перейти к сообщению
PHP:
скопировать код в буфер обмена
  1. setcookie ('hash', $hash, time() * 3600, "/", 'test.loc', 1);


все так же не работает.. может быть что с сервером или с конфигурациями PHP что-то не так ?
11. PATCH - 24 Января, 2012 - 00:31:21 - перейти к сообщению
echo $_COOKIE['hash'];
попробуй по вставлять в отдельные скрипты во все подкаталоги сайта) если дето отобразится а вдругих каталогах нет значит ты не верно указал путь) и убери 6 параметр там вроде нид TRUE FALSE ет для HTTP/S,

вообще у меня вот так спокойно работает по всему сайту setcookie('hash',$hash,time()+3600*24*30); "скрипт который выдает куку находится в главной каталоге сайта мб эт важно) хотя на врятли, если не указан параметры то он на весь домен куку разрешает"
12. QDef - 24 Января, 2012 - 00:39:33 - перейти к сообщению
Undefined index: hash
у меня сборка Denwer..
13. PATCH - 24 Января, 2012 - 00:47:12 - перейти к сообщению
setcookie ('hash', $hash, time() * 3600, "", 'localhost');
а так или так
setcookie ('hash', $hash, time() * 3600, "/", 'localhost'); ?
14. QDef - 24 Января, 2012 - 00:54:41 - перейти к сообщению
PHP:
скопировать код в буфер обмена
  1. setcookie ('hash', $hash, time() * 3600, "/", 'localhost');

Сработало Улыбка Огромное спасибо!
15. PATCH - 24 Января, 2012 - 00:59:37 - перейти к сообщению
не советую использовать если буш переносить на хостинг) localhost потому что ты сказал денвер) у денвера свои заморочки с виртуальными доменами но сам то denwer на локалхосте. если не указываеш localhost то он передает по домену (кривого созданого денвером) хотя сам сайт находится на localhoste , но если ты будеш переносить на хостинг то там сайт не будет localhost, по этому а) забить на denwer я юзаю xampp он обновляется раз в месяц-2 + я не создаю всякие псевдодомены, а создаю каталоги в главном htdocsи разбрасываю и ссылка получается localhost/test/ допустим т.е можно использовать и
setcookie('hash',$hash,time()+3600*24*30); такой вариант (он уникален как для переноса на любой домен так и дял локалхоста)

 

Powered by ExBB FM 1.0 RC1