Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Авторизация
 
 автор: Лена   (22.10.2009 в 23:40)   письмо автору
1.8 Кб
 
 

Прошу помощи.
Не могу встроить авторизацию.
Проблема вот в чем.
Допустим, нахожусь я на странице index.php?page=1
Шаблон формы выводится в левой колонке(области) сайта.
Прохожу я авторизацию. Набираю в форме логин-пароль, нажимаю кнопку и передо мной появляется надпись "Добро пожаловать SSS". SSS - мой логин. Логин сохраняю в сессии.
Перехожу на страницу index.php?page=2 - и передо мной опять чистая форма. А должно быть приветствие, я же честно авторизовалась и записалась в сессию.
Что не так?

  Ответить  
 
 автор: cheops   (22.10.2009 в 23:49)   письмо автору
 
   для: Лена   (22.10.2009 в 23:40)
 

При переходе с одной страницы на другую не происходит ли переход с www.site.ru на site.ru или наоброт? Например, как на этом форуме
http://www.softtime.ru/forum/read.php?id_forum=1&id_theme=68998
http://softtime.ru/forum/read.php?id_forum=1&id_theme=68998

  Ответить  
 
 автор: Лена   (22.10.2009 в 23:55)   письмо автору
 
   для: cheops   (22.10.2009 в 23:49)
 

Нет.
Была ссылка - http://www.site/index.php?page=11
и осталась http://www.site/index.php?page=12 - меняется только страница.

  Ответить  
 
 автор: cheops   (22.10.2009 в 23:59)   письмо автору
 
   для: Лена   (22.10.2009 в 23:55)
 

А на второй странице вызов session_start() имеется?

  Ответить  
 
 автор: Лена   (23.10.2009 в 00:09)   письмо автору
 
   для: cheops   (22.10.2009 в 23:59)
 

У меня все идет через индекс-файл, куда все и подключается, в том числе и старт сессии.
Попробовала только что вывести $_SESSION['name'], - на странице, где авторизуюсь, выводится, на другой - ничего. Куда эта сессия пропадает, Бог ее знает...

  Ответить  
 
 автор: Trianon   (23.10.2009 в 00:14)   письмо автору
 
   для: Лена   (23.10.2009 в 00:09)
 

подключение идет файла? или http-обертки?

  Ответить  
 
 автор: Лена   (23.10.2009 в 00:24)   письмо автору
 
   для: Trianon   (23.10.2009 в 00:14)
 

Файла.
Еще одно заметила. Тупо вставила в файл - print "строка"; - на всех страницах строка выводится - и на тех страницах, где пустая форма, и на той, где приветствуют пользователя. Значит, файл подключается, есть сессия везде.
Появилось смутное чувство, что дело в структуре... Модули и меню нормально работают, но там же без сессии...

  Ответить  
 
 автор: Trianon   (23.10.2009 в 00:42)   письмо автору
 
   для: Лена   (23.10.2009 в 00:24)
 

>Файла.
>Еще одно заметила. Тупо вставила в файл - print "строка"; - на всех страницах строка выводится - и на тех страницах, где пустая форма, и на той, где приветствуют пользователя.
> Значит, файл подключается,

допустим.

>есть сессия везде.

почему?

сессия есть, только когда session_start() вызван, при чем в этом процессе.

  Ответить  
 
 автор: Лена   (23.10.2009 в 10:30)   письмо автору
 
   для: Trianon   (23.10.2009 в 00:42)
 

Выяснила, что практически во всех файлах-скриптах есть BOM. Ужас. Вспомнила, как у меня на хостинге, когда под Друпал сайт делала, если был BOM авторизация не происходила, сессия прерывалась. Писало ошибку header already send by... Теперь вручную что ли от этого BOM избавляться...

  Ответить  
 
 автор: Trianon   (23.10.2009 в 10:55)   письмо автору
 
   для: Лена   (23.10.2009 в 10:30)
 

простите, но если скрипт пишет ошибку "header already send by..." , то это же видно!
Зачем при этом что-то вспоминать?

  Ответить  
 
 автор: Лена   (23.10.2009 в 11:30)   письмо автору
 
   для: Trianon   (23.10.2009 в 10:55)
 

Вы меня не так поняли.
В том-то и дело, что здесь, именно в этом случае, ошибок никаких не пишет. Не знаю даже, что делать. BOMы поубирала - и все по прежнему.

  Ответить  
 
 автор: Trianon   (23.10.2009 в 13:18)   письмо автору
 
   для: Лена   (23.10.2009 в 11:30)
 

Если скрипт не пишет ошибку (ни на экран - display_errors, ни в лог - log_errors) но тем не менее оказывается в ситуации (headers_already_sent_by или какой-то другой, неважно) - это еще хуже.
Это означает потерю контроля над.

php_value error_reporting 32767
php_flag display_startup_errors on
php_flag log_errors on
php_value error_log "/home/site/error_log.txt"
#php_flag display_errors off

  Ответить  
 
 автор: Лена   (23.10.2009 в 14:15)   письмо автору
 
   для: Trianon   (23.10.2009 в 13:18)
 

Было у меня это.
Только.
php_value error_reporting 65535
И путь php_value error_log "/home/site/error_log.txt" я указала не от корня сервера, а от корня проекта - php_value error_log "/site/error_log.txt". Поэтому ничего не писалось.
Разгребаю ошибки. Много PHP Strict Standards.

  Ответить  
 
 автор: Trianon   (23.10.2009 в 14:45)   письмо автору
 
   для: Лена   (23.10.2009 в 14:15)
 

Ну STRICT можно и задавить, если сильно напрягает.. А вот WARN и NOTICE - стоит оставить.

  Ответить  
 
 автор: Лена   (23.10.2009 в 16:49)   письмо автору
 
   для: Trianon   (23.10.2009 в 14:45)
 

Есть ли возможность файл, в который пишутся ошибки, очищать?
Ошибки все исправила, пока что стою на том же месте, авторизуюсь - все норм., перехожу на другую страницу - опять передо мной форма.

  Ответить  
 
 автор: Trianon   (23.10.2009 в 17:07)   письмо автору
 
   для: Лена   (23.10.2009 в 16:49)
 

так а... в чем проблема?
Удаляете и всё.

  Ответить  
 
 автор: Trianon   (23.10.2009 в 00:07)   письмо автору
 
   для: Лена   (22.10.2009 в 23:40)
 

> $_SESSION['pass'] = $_POST['pass'];

н-да...

  Ответить  
 
 автор: Лена   (23.10.2009 в 00:12)   письмо автору
 
   для: Trianon   (23.10.2009 в 00:07)
 

Это вы еще мягко сказали... Согласна с тем, что подумали.

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования