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

Форум PHP

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

 

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

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

тема: сессии
 
 автор: Dima1999   (16.09.2005 в 21:30)   письмо автору
 
 

У меня есть форма, где человек заполняет 8 полей с разными именами. Когда он нажимает сабмит, эти 8 переменных заносятся в сессию. На следующей странице человек заполняет еще несколько полей, и на 3ей странице все значения полей с 1 страницы и со 2ой заносятся в БД.
Вопрос: есть одна неприятная штука: если на 2ой странице человек закроет окно (alt-F4=), то следующий не сможет правильно заполнить новую форму, т.к. от предыдущего останется сессия. Как сделать, чтобы после закрытия окна удалялась и сессия? Или может есть другой путь?

   
 
 автор: cheops   (16.09.2005 в 21:43)   письмо автору
 
   для: Dima1999   (16.09.2005 в 21:30)
 

Вы проверяйте - все ли переменные, если не все автоматически его перенаправляйте редиректом на вторую страницу.

   
 
 автор: Dima1999   (16.09.2005 в 21:46)   письмо автору
 
   для: cheops   (16.09.2005 в 21:43)
 

Нет, дело не в том - мне надо, чтоб после закрытия активного окна (нажатием на крестик) удалялась сессия

   
 
 автор: cheops   (16.09.2005 в 21:52)   письмо автору
 
   для: Dima1999   (16.09.2005 в 21:46)
 

Она и так должна закрываться (если окно одно), но это событие невозможно отледить, гораздо проще отследить ушёл ли пользователь минут на 20, или обратился к странице не в той последовательности - вот тогда можно данные уничтожать, при помощи той же функции unset
<?php
  
unset($_SESSION['name']);
?>

   
 
 автор: Dima1999   (16.09.2005 в 22:01)   письмо автору
 
   для: cheops   (16.09.2005 в 21:52)
 

Странно... А у меня не закрывается и потом форма лагает (ввожу например $aaa = 3, а по второму кругу (после закрытия окна и повторного заполнения формы) переменная ааа выдает значение = 2(так было при первом заполнении формы)). И как отследить, ушел ли пользователь на сколько-то минут (если страница допустим закрыта)??

   
 
 автор: cheops   (16.09.2005 в 22:13)   письмо автору
 
   для: Dima1999   (16.09.2005 в 22:01)
 

>И как отследить, ушел ли пользователь на сколько-то минут (если
>страница допустим закрыта)??
Для этого заводится таблица (база данных или файл) и обновляется при каждом обращении к старницам сайта, если такого обновления не производится - пользователь ушёл.

   
Rambler's Top100
вверх

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