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. Qualifiv - 20 Ноября, 2011 - 16:27:50 - перейти к сообщению
PHP:
скопировать код в буфер обмена
  1.  
  2. <?PHP
  3. //Функция  авторизации.
  4. function login($username, $cook)
  5. {
  6. if ($cook and $username != '')
  7.         {
  8.                 setcookie('username', "$username", time() + 36000);
  9.         }
  10. if($username != '')
  11.         {
  12.                 $_SESSION['username'] = $username;
  13.         }      
  14. }
  15. #кнопка запомнить меня ?
  16.  
  17. if(isset($_POST['cook']))
  18. {
  19.         $cook = true;
  20. }
  21. else
  22. {
  23.         $cook = false;
  24. }
  25.  
  26. if(!isset($_COOKIE['username']))
  27. {
  28.         login($_POST['username'], $cook);
  29.         echo 'нету куки функция выполняется';
  30. }
  31. elseif(isset($_COOKIE['username']))
  32. {
  33.         $_SESSION['username'] = $_COOKIE['username'];
  34.         echo 'куки обьвленная';
  35. }
  36. echo $_SESSION['username'];
  37. ?>
  38.  

Вроде все работает в кукух есть значение(смотрел в браузере время нормальное). Закрываеш браузер и все нету значения в куках подскажите пожалуста.
2. sKaa - 20 Ноября, 2011 - 18:10:30 - перейти к сообщению
Ты сохраняешь не в куки а в сесии $_SESSION['username'] = $username;
это два разных механизма
3. Bio man - 20 Ноября, 2011 - 18:15:18 - перейти к сообщению
session_start() НУЖНО написать сразу после <?PHP.
ты сохраняешь в сессионный массив не начав сессии!
Qualifiv пишет:
Закрываеш браузер и все нету значения в куках

setcookie(session_name(), session_id(), time()+260500);
(Добавление)
Bio man пишет:
ты сохраняешь в сессионный массив не начав сессии!

ой, не заметил что у тебя функция...
4. Qualifiv - 20 Ноября, 2011 - 18:38:16 - перейти к сообщению
sKaa
PHP:
скопировать код в буфер обмена
  1.  
  2. if ($cook and $username != '')
  3.         {
  4.                 setcookie('username', "$username", time() + 36000);
  5.         }
  6.  

вроде тут устанавливаю куки
5. sKaa - 20 Ноября, 2011 - 18:52:45 - перейти к сообщению
Ну куда у тебя сохранять определяется переменной $cook, либо в сессии либо в куки..
Ты сохраняешь куки на 10 минут сам по себе : time() + 36000, попробуй увеличить это время и закрыть \ открыть браузер, если переменной не будет то она в прошлый раз сохранилась в сессию, ведь сессия каждое новое открытие браузера меняется...
6. Qualifiv - 20 Ноября, 2011 - 19:08:02 - перейти к сообщению
sKaa
$cook я устанавливаю устанавливать куки или достаточно сессии .
PHP:
скопировать код в буфер обмена
  1.  
  2. if(isset($_POST['cook']))
  3. {
  4.         $cook = true;
  5. }
  6. else
  7. {
  8.         $cook = false;
  9. }
  10. if ($cook and $username != '')
  11.         {
  12.                 setcookie('username', "$username", time() + 36000);
  13.         }
  14.  
7. Qualifiv - 22 Ноября, 2011 - 20:50:20 - перейти к сообщению
Время поменял все равно время жизни кук до 2015 года
8. Bio man - 22 Ноября, 2011 - 21:49:15 - перейти к сообщению
Qualifiv, время жизни сессии увеличь! setcookie(session_name(), session_id(), time() + 234123423)
9. Qualifiv - 23 Ноября, 2011 - 19:47:09 - перейти к сообщению
Проблема в браузере оказалась. В мозиле все норм но это меня все равно не утешает(
На официальном форуме оперы вопрос поднимался на локалхосте проблемы с куки.
Извините за беспокойство Ниндзя
10. Bio man - 23 Ноября, 2011 - 19:59:36 - перейти к сообщению
Qualifiv, и все же попробуйте увеличить время жизни сессионной куки
11. Qualifiv - 23 Ноября, 2011 - 20:29:06 - перейти к сообщению
Я же говорил что увеличил до 2015 года в настройках смотрел там написано до 2015 года проблема с оперой существует.Да даже если 10 минут куки у меня браузер быстрее запускается
12. Bio man - 23 Ноября, 2011 - 20:34:00 - перейти к сообщению
Qualifiv пишет:
setcookie('username', "$username", time() + 36000);
тут вы не куку сессии устанавливаете
Bio man пишет:
setcookie(session_name(), session_id(), time() + 36000)
вот кука сессии

 

Powered by ExBB FM 1.0 RC1