Глава 40. Интерактивный Web-сайт____________________________995
SetCookie(Naine, Value Expire)
Эта функция сохраняет cookie документа под именем Name и со значением, указанным в value. Дата действительности cookie указывается значением Expire. Если значение Expire не указано, cookie действует до конца сеанса. Формат должен быть следующим:
Day, DD-MMM-YYYY HH:MM:SS GM GetCookie(Name)
Этафункция ищет и возвращает значение Name. Она просматривает все значения cookie документа, пока не обнаружит требуемое значение. Потом это значение интерпретируется функцией Getvalue ().
GetValue(Offset)
Эта функция возвращает часть cookie, начинающуюся с номера символа, указанного в offset, и кончающуюся первым встреченным двоеточием.
Две оставшиеся функции, writeCookies ()и GetCookies (), работают непосредственно с формой листинга 40.1. Первая дает значение cctokie для каждого поля формы. Вторая считывает все значения cookie документа и выводит в нужных полях формы.
Теперь вы вооружены функциями для сохранения значений формы в cookie документа. Лучшим местом для хранения значений cookie является функция проверки правильности заполнения формы isvalido. Добавьте следующие две строки в конец этой функции (перед оператором return). Теперь при отправке правильно заполненной формы значения полей будут сохранены в cookie.
if( binValid )
WriteCookies();
Можно ли занести эти значения в поля формы? Да, и это нетрудно сделать. Измените тэг <BODY>, как это показано ниже. Это свяжет событие onLoad окна с функцией GetCookies (), которая будет заполнять форму значениями cookie каждый раз, когда пользователь будет загружать документ с этой формой.
<BODY OnLoad="GetCookies()">
Совет ^
Посетите сайт Netscape для того, чтобы познакомиться с полной спецификацией cookie:http://home.netscape.com/newsref/std/cookie_spec.html
Дальнейшее усовершенствование сайта
Примеры, приведенные в этом разделе, нетрудно воспроизвести, однако посетители вашего сайта оценят эти новые возможности по достоинству. Вы