![]() |
|
Модераторы: korob2001, ginnie |
![]()
|
|
| MaxPayne |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 72 Регистрация: 9.8.2005 Репутация: нет Всего: нет |
Для установки куков использую
my $query = CGI->new; print $query->header(-cookie => $query->cookie(-name => ses, -value => $ses, -expires => '+1M')); --------------------------------------------------------- Для проверки использую $q = CGI->new(); $vc = $q->cookie('ses'); Если $vc чтото есть - значит кука есть. ----------------------------------------------------------- Для выхода использую $q = CGI->new(); $vc = $q->cookie('ses'); $dbh = DBI -> connect("DBI:mysql:***:localhost", "", ""); $dbh -> do("UPDATE user set temp='' WHERE temp = '$vc'"); $dbh -> disconnect(); $q = CGI->new; $cookie = $q->cookie(-name => ses, -value => $vc, -expires => '-1m'); ----------------------------------------------------------- Все ли правильно здесь описано? Выхода из куков не происходит. Из базы стирается ключ, но сама кука остается. Я писал срок и -1М и now, как где то было уже описано. Но не получается. В чем может быть проблема. |
|||
|
||||
| Itsys |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1338 Регистрация: 21.1.2008 Где: г. Москва Репутация: нет Всего: 34 |
print $query->header(-cookie => $query->cookie(-name => ses, -value => $vc, -expires => 'now'));
Куки ты создал, а в заголовок кто его будет запихивать? Это сообщение отредактировал(а) Itsys - 1.4.2008, 16:59 |
|||
|
||||
| MaxPayne |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 72 Регистрация: 9.8.2005 Репутация: нет Всего: нет |
Т.е. для выхода с куков добаляю в конце строку (выделена жирным)
$q = CGI->new(); $vc = $q->cookie('ses'); $dbh = DBI -> connect("DBI:mysql:***:localhost", "", ""); $dbh -> do("UPDATE user set temp='' WHERE temp = '$vc'"); $dbh -> disconnect(); $q = CGI->new; $cookie = $q->cookie(-name => ses, -value => $vc, -expires => '-1m'); print $query->header(-cookie => $query->cookie(-name => ses, -value => $vc, -expires => 'now')); или print $q->header(-cookie => $q->cookie(-name => ses, -value => $vc, -expires => 'now')); |
|||
|
||||
| Itsys |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1338 Регистрация: 21.1.2008 Где: г. Москва Репутация: нет Всего: 34 |
ну конечно вторую, это я посто копировал и не посмортел исходную переменную
|
|||
|
||||
| MaxPayne |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 72 Регистрация: 9.8.2005 Репутация: нет Всего: нет |
Спасибо.
|
|||
|
||||
| MaxPayne |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 72 Регистрация: 9.8.2005 Репутация: нет Всего: нет |
Блин выход запарил - не выходит. Уже и браузер закрыл, открыл - не помогает.
Может кто подскажет. ПРоблем с входом и проверкой на наличие нет. ПРивожу код скритп по выходу.
|
|||
|
||||
| GoDleSS |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 105 Регистрация: 11.2.2007 Где: Пироговский Репутация: нет Всего: 2 |
MaxPayne, редирект проще сделать в том же хидере, зачем жабаскрипт пуляешь?!
--------------------
It's a nice day to die my friend! |
|||
|
||||
| MaxPayne |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 72 Регистрация: 9.8.2005 Репутация: нет Всего: нет |
Поскажите как - сделаю. Но главная проблема что куки не стираются.
|
|||
|
||||
| Itsys |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1338 Регистрация: 21.1.2008 Где: г. Москва Репутация: нет Всего: 34 |
Попробуй так:
и посмотри что он выведет в качестве заголовка |
|||
|
||||
| MaxPayne |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 72 Регистрация: 9.8.2005 Репутация: нет Всего: нет |
Set-Cookie: o2yql0nWos4QwxBPYpsIzul1rmdulR
Date: Sat, 12 Apr 2008 02:30:56 GMT Content-Type: text/html; charset=ISO-8859-1 В базе MySQL занесена таже сессия: o2yql0nWos4QwxBPYpsIzul1rmdulR Т.е. все верно. Аммм. А дата должна выводиться как -1 месяц? Март? Это сообщение отредактировал(а) MaxPayne - 12.4.2008, 09:36 |
|||
|
||||
| Itsys |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1338 Регистрация: 21.1.2008 Где: г. Москва Репутация: нет Всего: 34 |
У тебя получается не правильная строка с Куками:
Формат Set-Cookie Set-Cookie: name=[значение]; path=[путь]; expires=[дата]; domain=[домен]; secure Добавлено через 3 минуты и 58 секунд просто если не указано то считается, что куки акивны до тех пор, пока открыто окно браузера. я, обычно для задания куков пользуюсь модулем CGI::Cookie |
|||
|
||||
| MaxPayne |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 72 Регистрация: 9.8.2005 Репутация: нет Всего: нет |
Т.е. куки изначально не правильно ставятся?
|
|||
|
||||
| Itsys |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1338 Регистрация: 21.1.2008 Где: г. Москва Репутация: нет Всего: 34 |
да
Добавлено через 1 минуту и 23 секунды посмотри таким же образом что устанавливается при инициализации куков |
|||
|
||||
| MaxPayne |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 72 Регистрация: 9.8.2005 Репутация: нет Всего: нет |
При установке вот так:
Set-Cookie: ses=4vwFiykSzO3BMkXNpMsKKpgKhugdwr; path=/; expires=Mon, 12-May-2008 09:38:47 GMT Date: Sat, 12 Apr 2008 09:38:47 GMT Content-Type: text/html; charset=ISO-8859-1 Ставлю вот таким образом:
|
|||
|
||||
| Itsys |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1338 Регистрация: 21.1.2008 Где: г. Москва Репутация: нет Всего: 34 |
Значит его глючит на "-1М", попробуй "now"
|
|||
|
||||
![]()
|
| Правила форума "Perl: CGI программирование" | |
|
|
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, korob2001, sharq. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Perl: разработка для Web | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |