![]() |
Проблема с получением cookie
Сделал на сайте такую схему:
посетитель регистрируется, ему устанавливаются куки, после этого он может воспользоваться разделом. Тут все нормально, но если войти в этот раздел без регистрации (т.е. если куки не установлены) скрипт должен выдать "незарегистрирован", но браузер рисует пустую страницу. Код такой: if($ENV{'HTTP_COOKIE'}){ %cookies = fetch CGI::Cookie; $str = $cookies{'name'}->value; } else {$str="guest";} Подскажите, в чем ошибка? |
Я думаю что проблема в том что $ENV{'HTTP_COOKIE'} почти всегда выдает true, даже если конкретно $cookies{'name'}->value ничего и не содержит... попробуй, определять по конкретной переменной, ну например так (или что-то вроде):
Код:
%cookies = fetch CGI::Cookie; |
Цитата:
|
Цитата:
Цитата:
|
Если бы я знал где ошибка я бы на форум не обратился :)
Код:
Я подумал сделать проверку на существование переменной Код:
if($ENV{'HTTP_COOKIE'}) |
Вот работающий код, надеюсь все понятно :) Если нет, спрашивай.
Код:
#!/usr/bin/perl |
Спасибо, теперь работает.
Только все равно непонятно, почему прежний код Код:
use CGI::Cookie;Цитата:
Код:
$str=$ENV{'HTTP_COOKIE'}; |
Незнаю, я вообще не любитель так мучаться, просто ты спросил я помог...
Я пишу на ПХП обычно чтобы какраз не думать о таких геморроях.... (никого не хочу обидеть, и не надо плиз здесь со мной спорить натему "PHP vs PERL"...) |
| Часовой пояс GMT +4, время: 14:42. |
Powered by vBulletin® Version 3.8.5
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.