|
Как мне убить сессию ?
|
|||
---|---|---|---|
#18+
Вопрос в следующем : у меня юзер конектица к сайту, и я открываю сессию, если он захочет покинуть сайт, то я предлягаю ему нажать кнопку "Выход", котороя выполняет <?php session_start(); session_unset(); session_destroy(); ?> Все бы хорошо, но некоторые просто закрывают окно IE Explorera, и в директории сессий остается мусор ....... Можно ли сделать так, чтобы при нажатии крестика на форточке, серверу отсылалась комманда на удаление сессии, мне посоветовали сделать это на Javascript, но я просто в нем не рублю................ А мусора у меня собирается много.............. Дело еще в том, что я лабаю под винды, а под линухами там вроде как есть утилита, котороя чистит эту дирикторию, а как быть под win? Заранее благодарю, /MySQLdb/ /09/01/2004/10@20/ ... |
|||
:
Нравится:
Не нравится:
|
|||
09.01.2004, 10:13 |
|
Как мне убить сессию ?
|
|||
---|---|---|---|
#18+
Попробуй использовать метод onunload() - который вызывается браузером непосредственно перед выгрузкой страницы (или onbeforeunload() - в чем его особенность не помню). <html> <head> <script> function doUnload() { ... } </script> </head> <body onunload="javascript:doUnload();"> ... </body> </html> ... |
|||
:
Нравится:
Не нравится:
|
|||
09.01.2004, 13:08 |
|
Как мне убить сессию ?
|
|||
---|---|---|---|
#18+
2 Yes событие onunload срабатывает также и при рефреше страницы. На самом деле нельзя отследить именно закртытие страницы. Если бы для этого сделали отдельное событие, то это позволило бы написать скрипт, который бы не позволил юзеру закрыть броузер (что не очень хорошо) ... |
|||
:
Нравится:
Не нравится:
|
|||
10.01.2004, 16:13 |
|
Как мне убить сессию ?
|
|||
---|---|---|---|
#18+
:: Макс М. событие onunload срабатывает также и при рефреше страницы. И точно. Что-то я это забыл... или не учел... Если Бог за нас, кто против нас? ... |
|||
:
Нравится:
Не нравится:
|
|||
12.01.2004, 09:14 |
|
Как мне убить сессию ?
|
|||
---|---|---|---|
#18+
Я конечно Xpert в области PHP, но что мешает воспользоваться Код: plaintext
session_cache_expire() returns the current setting of session.cache_expire. The value returned should be read in minutes, defaults to 180. If new_cache_expire is given, the current cache expire is replaced with new_cache_expire. The cache expire is reset to the default value of 180 stored in session.cache_limiter at request startup time. Thus, you need to call session_cache_expire() for every request (and before session_start() is called). [SRC] А по поводу чистки директории - а разве php сам ее не чистит, а если не чистит, то что мешает воспользоваться at и написать маленький скрипт даже на том же php который будет сканировать директорию и убивать файлы чья дата последней модификации превысила XXX времени. ... |
|||
:
Нравится:
Не нравится:
|
|||
13.01.2004, 10:52 |
|
|
start [/forum/topic.php?fid=59&msg=32371185&tid=2154380]: |
0ms |
get settings: |
9ms |
get forum list: |
16ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
177ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
47ms |
get tp. blocked users: |
1ms |
others: | 269ms |
total: | 538ms |
0 / 0 |