15.08.2011, 11:45
|
Аспирант
|
|
Регистрация: 27.11.2010
Сообщений: 48
|
|
Javascript установить cookie до заданного числа
Здравствуйте, не могу разобраться, каким образом можно установить жизнь Cookie например до 00:00, т.е когда бы cookie небыли созданы они должны удаляться в 00:00
|
|
15.08.2011, 12:29
|
что-то знаю
|
|
Регистрация: 24.05.2009
Сообщений: 5,176
|
|
узнвешь текущее время, определяешь сколько осталось до 0 часов, потом при установке кук задаешь значение времени жизни, текущее время + остаток до 0 часов
|
|
15.08.2011, 12:51
|
|
Люмус, Емаксос Developer!
|
|
Регистрация: 06.05.2010
Сообщений: 677
|
|
Сообщение от devote
|
узнвешь текущее время, определяешь сколько осталось до 0 часов, потом при установке кук задаешь значение времени жизни, текущее время + остаток до 0 часов
|
Сам хоть понял что сказал?
|
|
15.08.2011, 13:21
|
что-то знаю
|
|
Регистрация: 24.05.2009
Сообщений: 5,176
|
|
Сообщение от Magneto
|
Сам хоть понял что сказал?
|
сойдет)
|
|
15.08.2011, 14:03
|
Аспирант
|
|
Регистрация: 27.11.2010
Сообщений: 48
|
|
Цитата:
|
узнвешь текущее время, определяешь сколько осталось до 0 часов, потом при установке кук задаешь значение времени жизни, текущее время + остаток до 0 часов
|
Спасиб))
var d = new Date();
var date = new Date(d.getFullYear(), d.getMonth(), d.getDate(), 23, 59,59);
сделал так, только вывод Mon Aug 15 2011 23:59:59 GMT+0400 (MSD)
в cookie записывается дата смерти cookie 16 2011 3:59:59
как можно это исправить?
|
|
15.08.2011, 14:39
|
|
Люмус, Емаксос Developer!
|
|
Регистрация: 06.05.2010
Сообщений: 677
|
|
Сообщение от Zhazhah
|
Спасиб))
|
Там незачто говорить спасибо, так как человек не понимает как живут куки.
Вот скрипт который тебе нужен:
// Получаем текущуее время
var now = new Date();
// Устанавливаем дату сегодня в полночь
var midnight = new Date(now.getFullYear(), now.getMonth(), now.getDate(), 23, 59, 59, 0);
// Записываем в переменную время жизни куки
// В переменной будет находиться время (в миллисекундах) которое нужно установить кукам чтоб они умерли
// сегодня в полночь
var cookiesLife = midnight.getTime() - now.getTime();
|
|
15.08.2011, 15:46
|
|
⊞ Развернуть
|
|
Регистрация: 11.01.2010
Сообщений: 1,810
|
|
Сообщение от Magneto
|
Там незачто говорить спасибо, так как человек не понимает как живут куки.
|
А Вы понимаете?
Cookie:
Цитата:
|
Expiry date
Each cookie has an expiry date after which it is trashed. If you don't specify the expiry date the cookie is trashed when you close the browser. This expiry date should be in UTC (Greenwich) time.
|
|
|
15.08.2011, 15:51
|
Аспирант
|
|
Регистрация: 27.11.2010
Сообщений: 48
|
|
Цитата:
|
Вот скрипт который тебе нужен:
|
Мне в Cookie необходимо удалять каждый день в 00:00 т.е мне достаточно этого
var now = new Date();
var midnight = new Date(now.getFullYear(), now.getMonth(), now.getDate(), 23, 59, 59, 0);
только чтобы GMT+0300 (MSK) а не GMT+0400 (MSD)
а ваш код возвращает Thu Jan 01 1970 11:20:36 GMT+0300 (MSK)
|
|
15.08.2011, 16:11
|
что-то знаю
|
|
Регистрация: 24.05.2009
Сообщений: 5,176
|
|
Сообщение от Magneto
|
Там незачто говорить спасибо, так как человек не понимает как живут куки.
|
Будь уверенным перед тем как говорить это.
|
|
15.08.2011, 16:14
|
|
Люмус, Емаксос Developer!
|
|
Регистрация: 06.05.2010
Сообщений: 677
|
|
Сообщение от B@rmaley.e><e
|
А Вы понимаете?
|
Я не говорю по-английски, и в даном случае ссылки Ваши имеют вес только для Вас.
Если есть желание подискутировать, давайте, только на Русском.
Насчет куков: кукам нужно устанавливать время, не то когда они должны умереть, а то сколько они должны прожить (в секундах). И я сейчас говорю о свойстве max-age.
document.cookie = 'key=value; max-age=(время в секундах)';
|
|
|
|