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

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: узнать оставшееся время жизни куки

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


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

> Без описания
jonston
Отправлено: 22 Января, 2013 - 16:47:05
Post Id



Посетитель


Покинул форум
Сообщений всего: 455
Дата рег-ции: Март 2011  


Помог: 3 раз(а)




Здравствуйте!Как узнать узнать оставшееся время жизни куки?Спасибо!


-----
$i = 0;
$i = $i++ + ++$i; ?
 
 Top
EuGen Администратор
Отправлено: 22 Января, 2013 - 17:00:59
Post Id


Профессионал


Покинул форум
Сообщений всего: 9095
Дата рег-ции: Июнь 2007  
Откуда: Berlin


Помог: 707 раз(а)




Никак - в общем случае. Поскольку время истечения куки определяет лишь, отправит ли браузер её или нет. Таким образом, это никак не передается на сервер.
При помощи javascript же можно поступить двумя способами:
0. Если приложение самостоятельно выставит в другую куку дату окончания нужной. Ненадежно, поскольку потребуется дополнительный контроль (так, при истечении исследуемой куки нужно еще потрудиться удалить вторую и т.п.)
1. Использовать AJAX-запрос для получаения ответа сервера - а точнее, заголовков этого ответа (Response headers). Там эта дата будет указана согласно стандартному HTTP-протоколу. Однако это потребует разбора, и, кроме того, нужно быть уверенным в том, что изначальный HTTP-запрос к серверу был построен корректно в соответствии с логикой приложения.

На "чистом" javascript эта задача так же неразрешима.


-----
Есть в мире две бесконечные вещи - это Вселенная и человеческая глупость. Но насчет первой .. я не уверен.
 
 Top
spsu
Отправлено: 22 Января, 2013 - 17:04:39
Post Id



Частый гость


Покинул форум
Сообщений всего: 176
Дата рег-ции: Нояб. 2012  


Помог: 3 раз(а)




[quote]Поскольку время истечения куки определяет лишь, отправит ли браузер её или нет[./quote]
Ну если пользователь не очистит кукисы то отправит.
Поэтому как вариант писать время ее установки, и расчитывать уже исходя из времени на которое она была установлена.
 
 Top
EuGen Администратор
Отправлено: 22 Января, 2013 - 18:00:56
Post Id


Профессионал


Покинул форум
Сообщений всего: 9095
Дата рег-ции: Июнь 2007  
Откуда: Berlin


Помог: 707 раз(а)




spsu пишет:
Ну если пользователь не очистит кукисы то отправит.

Нет. Если у куки истекло время жизни, и по какой-то причине она еще не удалена, браузер её не отправит. Но на деле такую куку удалит сам браузер по истечении даты.


-----
Есть в мире две бесконечные вещи - это Вселенная и человеческая глупость. Но насчет первой .. я не уверен.
 
 Top
spsu
Отправлено: 22 Января, 2013 - 18:08:48
Post Id



Частый гость


Покинул форум
Сообщений всего: 176
Дата рег-ции: Нояб. 2012  


Помог: 3 раз(а)




Цитата:
Нет. Если у куки истекло время жизни, и по какой-то причине она еще не удалена, браузер её не отправит. Но на деле такую куку удалит сам браузер по истечении даты.

Ну вот а больше причин и не может быть кроме багов каких-то и.т.д...
Поэтому все будет нормально при применении моего алгоритма.
 
 Top
EuGen Администратор
Отправлено: 22 Января, 2013 - 18:11:15
Post Id


Профессионал


Покинул форум
Сообщений всего: 9095
Дата рег-ции: Июнь 2007  
Откуда: Berlin


Помог: 707 раз(а)




spsu пишет:
Поэтому все будет нормально при применении моего алгоритма.

То есть? Не очень понял, чем это отличается от:
EuGen пишет:
Если приложение самостоятельно выставит в другую куку дату окончания нужной. Ненадежно, поскольку потребуется дополнительный контроль (так, при истечении исследуемой куки нужно еще потрудиться удалить вторую и т.п.)


-----
Есть в мире две бесконечные вещи - это Вселенная и человеческая глупость. Но насчет первой .. я не уверен.
 
 Top
spsu
Отправлено: 22 Января, 2013 - 18:17:25
Post Id



Частый гость


Покинул форум
Сообщений всего: 176
Дата рег-ции: Нояб. 2012  


Помог: 3 раз(а)




Цитата:
То есть? Не очень понял, чем это отличается от:

Я в том посте не указал куда именно писать, да вы не телепат поэтому могли подумать что в куки предлагал писать, но я имелл в виду в БД.
 
 Top
EuGen Администратор
Отправлено: 22 Января, 2013 - 18:29:01
Post Id


Профессионал


Покинул форум
Сообщений всего: 9095
Дата рег-ции: Июнь 2007  
Откуда: Berlin


Помог: 707 раз(а)




На самом деле, можно в куку. Если приложением управляете Вы - то достаточно выставить expire обоих кук одинаковым - тогда целостность будет соблюдаться автоматически, и, кроме того, время жизни первой куки будет доступна прямо из javascript без каких-либо обращений к серверу.


-----
Есть в мире две бесконечные вещи - это Вселенная и человеческая глупость. Но насчет первой .. я не уверен.
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Вопросы новичков »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB