Ответ 1
Сделайте так...
setcookie("myCookie",'exampleUserName',time()+31556926 ,'/');// where 31556926 is total seconds for a year.
Я пытаюсь установить cookie PHP на 1 год с момента входа пользователя в систему, и я делаю это следующим образом:
setcookie("myCookie",'exampleUserName',(365 * 24 * 60) ,'/');
Проблема заключается в том, что когда я просматриваю файл cookie с помощью консоли в Chrome или Firefox, он показывает Expires Sun, 05, 2014
в Chrome и Expires = Session
в Firefox.
Любой другой сайт, такой как Google или файлы cookie stackoverflows, показывает правильную дату истечения срока действия.
Как я могу установить это правильно?
Сделайте так...
setcookie("myCookie",'exampleUserName',time()+31556926 ,'/');// where 31556926 is total seconds for a year.
setcookie($cookie_name, $cookie_value, strtotime("+1 year"));
Третий параметр - это время в будущем, которое означает time() + time in seconds
. Ваш 365 * 24 * 60
означает 1971 (1970 + 1), это в прошлом. Cookie в прошлом не будет использоваться - люди устанавливают cookie в прошлый раз, чтобы очистить cookie.
Сделайте точно так же, как Шанкар.
Попробуйте следующее:
<?php
setcookie("TestName", "Test Value", time()+3600 * 24 * 365);
?>
>> Here 'TestName' is name of cookie.
>> "Test Value" is value to store.
>> time()+3600 * 24 * 365 - will set cookie time till 1 year.
Спасибо!
попробуйте этот
setcookie($cookie_name, $cookie_value, time() + ( 365 * 24 * 60 * 60));