Внимание! В связи с устареванием топика эта страница была взята из кэша.
|
Core
Зарегистрирован: 07.09.03
Сообщения: 252
|
Добавлено: 24/10/03 в 17:20
|
|
Ребзя!
Что делать? сессии глючат по страшному! Срабатывают со второго с третьего раза! session_start(); if(!@$authent) { бла бла бла } Переменная $authent была зарегистрирована на стартовой странице. Вышеуказанный строки вызываются в начале каждого сценария. Но $authent то есть то ее нет... Автостарт сессии не помогает... хрень какая-то
|
K началу
|
|
|
Pentarh
Зарегистрирован: 05.04.03
Сообщения: 1376
|
Добавлено: 24/10/03 в 17:58
|
|
Во-первых дырка в безопасности сразу и налицо. Я так понял, register_globals у тебя ON. Обращаюсь к твоему скрипту:
http://domain.com/script.php?authent=1
И я уже залогинен :-)
Применяй session_is_registered('authent'). Это раз.
Но лучше register_globals вырубить и юзать
$HTTP_SESSION_VARS['authent'] или $_SESSION['authent'].
Или не-вырубить и юзать :-). Но лучше вырубить.
|
K началу
|
|
|
Pentarh
Зарегистрирован: 05.04.03
Сообщения: 1376
|
Добавлено: 24/10/03 в 18:02
|
|
А может они у тебя криво настроены? У саппорта во всяеом случае спроси, все ли там нормально.
У меня точ такие симптомы были, только на .NET Framework - на хосте сессии в отдельном процессе были настроены. Но это я думаю к тебе не относится :-) Все равно спроси.
|
K началу
|
|
|
Pentarh
Зарегистрирован: 05.04.03
Сообщения: 1376
|
Добавлено: 24/10/03 в 18:11
|
|
Кстати, конструкция
if(!@$authent)
ИМХО неправильна, в случае, если $authent у тебя не-логическое. ПХП он сам в таком случае определяет, TRUE она или FALSE. Ну вот например, если
$authent="0";// "0" - строка.
То хрен тут поймешь как он ее интерпретирует. Иногда как FALSE, иногда TRUE. От версии зависит. Лучше конкретизируй. Например, когда $authent числовой, то юзай
if ($authent>0)
Когда строковый
if ($authent!='') или if (strlen($authent)>0)
|
K началу
|
|
|
Core
Зарегистрирован: 07.09.03
Сообщения: 252
|
Добавлено: 24/10/03 в 18:39
|
|
Пентарх сенкс! Счас правлю все. Даст Бог будет работать. Плохо когда не нужно определять переменные перед использованием ИМХО. Привык я определять, а тут - хочешл объявляй, хочешь нет...
|
K началу
|
|
|
Weber
Зарегистрирован: 03.10.03
Сообщения: 1276
|
Добавлено: 25/10/03 в 06:24
|
|
Pentarh писал: | Во-первых дырка в безопасности сразу и налицо. Я так понял, register_globals у тебя ON. Обращаюсь к твоему скрипту:
http://domain.com/script.php?authent=1
И я уже залогинен :-)
Применяй session_is_registered('authent'). Это раз.
Но лучше register_globals вырубить и юзать
$HTTP_SESSION_VARS['authent'] или $_SESSION['authent'].
Или не-вырубить и юзать :-). Но лучше вырубить. |
А кто мешает сделать так:
if ($HTTP_SESSION_VARS['authent']==1) { //bla-bla-bla }
Но конечно Пентарх прав... лучше вырубить globals
|
K началу
|
|
|
Текстовая реклама в форме ответа Заголовок и до четырех строчек текста Длина текста до 350 символов Купить рекламу в этом месте! |
Внимание! В связи с устареванием топика эта страница была взята из кэша.
|