Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Сессии-сохранение

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Описание: трабл
Johnny
Отправлено: 07 Мая, 2010 - 18:05:46
Post Id


Новичок


Покинул форум
Сообщений всего: 6
Дата рег-ции: Май 2010  


Помог: 0 раз(а)




В общем я делаю систему регистрации/логина для своего сайта,логин и регистрацию я всё сделал,но такой трабл,я авторизовываюсь(логинюсь) всё нормально выводит,то что надо,как только я перехожу на index.php или к примеру other.php и возращаюсь обратно на страницу где я залогинился мне пишет,что нужно опять логин делать,но ведь я уже логинился...


И так,что мы имеем: index.php,login.php,logged.php,stats.php во всех этих файлах прописано в начале session_start();

Что же делает каждый из этих файлов:login.php - ввод в специальные поля ника и пароля,logged.php открывает файл с именем(указанным в login.php) и вырывает от туда пароль и сверяет пароль с указанным на странице login.php,так же служит посредником в цепочке,тоесть если всё хорошо всё сходится ник и пароль то перекидывает на stats.php.


В чём проблема?:при заходе на logged.php задаются такие параметры $_SESSION['Login'] = true;
и дальше перекидывается на stats.php,но когда уже перекинуло на stats.php там идёт проверка if($_SESSION['Login'] == true) выполняем действие else вы не авторизовались,дело в том,что $_SESSION['Login'] не запоминает значение true(оно же 1).я делал дебаг тоесть print_r($_SESSION); в logged.php всё отображало нормально,тоесть значение присваевалось,принтил на stats.php там вообещ пишет Array ( ) и всё больше ничего...как решить эту проблему?
 
 Top
awiz
Отправлено: 07 Мая, 2010 - 18:17:15
Post Id



Гость


Покинул форум
Сообщений всего: 69
Дата рег-ции: Май 2010  


Помог: 0 раз(а)




браузер запоминает куку у Вас?
 
 Top
Johnny
Отправлено: 07 Мая, 2010 - 18:26:25
Post Id


Новичок


Покинул форум
Сообщений всего: 6
Дата рег-ции: Май 2010  


Помог: 0 раз(а)




браузер всё запоминает,говарю же что в logged.php $_SESSION['login'] равна одному тоесть true(принт выводит),а в stats.php вообще ничего не выводит,выводит что пусто Array( )
 
 Top
awiz
Отправлено: 07 Мая, 2010 - 19:24:20
Post Id



Гость


Покинул форум
Сообщений всего: 69
Дата рег-ции: Май 2010  


Помог: 0 раз(а)




Johnny пишет:
говарю же что в logged.php $_SESSION['login'] равна одному тоесть true(принт выводит),а в stats.php вообще ничего не

это не означает, что браузер запомнил куку
выведите print_r($_COOKIE); если нет PHPSESSID, то не запомнилась кука

(Отредактировано автором: 07 Мая, 2010 - 19:55:00)

 
 Top
valenok Модератор
Отправлено: 08 Мая, 2010 - 15:05:35
Post Id



Здесь могла бы быть ваша реклама


Покинул форум
Сообщений всего: 4574
Дата рег-ции: Июль 2006  
Откуда: Israel


Помог: 3 раз(а)




И session_start() в самом верху ставить не забывайте, как я.


-----
Truly yours, Sasha.
 
My status
 Top
Prog
Отправлено: 08 Мая, 2010 - 15:14:18
Post Id



Частый гость


Покинул форум
Сообщений всего: 207
Дата рег-ции: Апр. 2010  


Помог: 0 раз(а)




Если хотите дам свой скрипт авторизации с установкой сессии .
 
 Top
JustUserR
Отправлено: 09 Мая, 2010 - 15:17:27
Post Id



Активный участник


Покинул форум
Сообщений всего: 8715
Дата рег-ции: Июнь 2009  


Помог: 17 раз(а)




Johnny Похожая проблема бывает в том случае когда берется уже готовая система авторазиции и встраивается в свой сайт - и при этом идентификатор сессии передается неправильно и она сбивается Попробуйте в PHP-скрипте который проверяет правильность логина и пароля и потом делает перенаправление сразу указать номер сессии - то есть $sess=session_id() и добавить в строку запроса соответственно &PHPSESSID=$sess


-----
Сделать можно все что угодно - нужно только старание, терпение и хороший поисковик Улыбка
Безлимитный web-хостинг от 15 рублей за 40 МБ дискового пространства - http://ihost[dot]oks71[dot]ru/
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Программирование на PHP »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB