Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Cookies
 
 автор: chestozo   (02.08.2004 в 01:43)   письмо автору
 
 

возникла проблема: работаю (продложаю :) ) над своим форумом. Человек заходит на форум, вводит свое имя, имейл, адрес странички (последние два при желании) и обязательно сообщение. Нажав кнопочку - "сообщить" сообщение передается скрипту, который выполняет всю работу по добавлению сообщения в форум. Проблема: хочу запомнить введенные пользователем личные данные, чтобы в следующий раз он пришел, захотел добавить свое сообщение - а имя, имейл и страничку писать заново не надо. Использую Cookies, сохраняю 3 переменные:
<?php
setcookie
("nm",$name,mktime(0,0,0,01,25,2100));
setcookie("ma",$mail,mktime(0,0,0,01,25,2100));
setcookie("ur",$hp,  mktime(0,0,0,01,25,2100));
?>

Как видите, дата стоит большая (до 2100 года далеко еще .... по-моему), и если после одного сообщения сразу добавить еще одно - данные сохраняются и отображаються ... но: если закрыть все странички форума и попробовать добавить еще одно сообщение - кукиса как не бывало....
В форме использую следующий код:
<?php
if (isset($ma)) echo $ma;?>

для value-параметра тега INPUT . В чем проблема?
Возможно ли, что это из-за того, что на страничке добавления нового сообщения стоит :
<?php
header
("Expires: Mon, 26 Jul 1997 07:07:07 GMT");
header("Last-Modified: " gmdate("D, d M Y H:i:s") . " GMT");
header("Cache-Control: no-store, no-cache, must-revalidate");
header("Cache-Control: post-check=0, pre-check=0"false);
header("Pragma: no-cache"); 
?>

Эта запись приводит к обновлению страницы, приводит ли это к обновлению кукисов?...
Заранее спасибо!

   
 
 автор: cheops   (02.08.2004 в 09:44)   письмо автору
 
   для: chestozo   (02.08.2004 в 01:43)
 

Хм... оставил сообщение - перерыл всю свою машину не нашёл ваших cookie :( Вы знаете такое бывает когда cookies устанавливаются без времени, в этом случае они действуют только в течении сессии... погодите ка я кажется понял... так и есть... 2100 год это слишком большая дата в результате получается отрицательное число и время не устанавливается. "В большинстве современных систем, где время представляется 32-битным целым со знаком, допустимыми являются значения year между 1901 и 2038". Просто время хранится в секундах поэтому 32-разрядного числа хватает меньше чем на полтора столетия.

http://www.softtime.ru/dic/id_dic=201&id_group=7

   
 
 автор: chestozo   (02.08.2004 в 20:36)   письмо автору
 
   для: cheops   (02.08.2004 в 09:44)
 

большео спасибо, все заработало )

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования