|
Почему не работает сессия? Что я не так делаю?
|
|||
---|---|---|---|
#18+
Вот php код: <?php session_start(); require_once("dbconnect.php"); if(isset($_POST["l_username"])){ $l_username = $_POST["l_username"]; } if(isset($_POST["l_password"])){ $l_password = $_POST["l_password"]; } if(isset($_POST["l_send"])){ $l_send = $_POST["l_send"]; } /* Проверяем если была нажата кнопка Войти. Если да, то сравниваем данные полученные из формы с тем логином и паролем который есть в БД и если они совпадаю то пользователь успешно авторизирован, иначе, выводим сообщение что неправильный логин или пароль. Если кнопка не была нажата, значит что пользователь зашел на страницу напрямую и поэтому выводим ему сообщение об этом. */ if(isset($l_send)){ // делаем запрос к БД для выбора данных. $query = " SELECT * FROM usa WHERE login = '$l_username' AND password = '$l_password'"; $result = mysql_query($query) or die ( "Error : ".mysql_error() ); /* Проверяем, если в базе нет пользователей с такими данными, то выводим сообщение об ошибке */ if(mysql_num_rows($result) < 1){ echo "Неправильный логин или пароль. Нажмите <a href='index.php'>здесь</a> для того чтобы перейти на страницу авторизации"; }else{ // Если введенные данные совпадают с данными из базы, то сохраняем логин и пароль в массив сессий. $_SESSION['username'] = $l_username; $_SESSION['password'] = $l_password; // Выводим сообщение echo '<a href="index.php">Авторизация прошла успешно!</a>'; } }else{ echo "Вы зашли на эту страницу напрямую, поэтому нет данных для обработки. Вы можете возвращаться на <a href='index.php'> главную страницу </a>"; } ?> Вот index.php код, я хотел получить из той страницы кода $_SESSION['username'], но ничего не выводит вообще. Надо как то получать его? И вообще, можно заходить надо незарегестрированным пользователям. Что я не так написал? <?php session_start(); require_once("dbconnect.php"); $login = mysql_real_escape_string($_SESSION['username']); // Проверяем если существуют данные в сессий. if(isset($_SESSION['l_username']) && isset($_SESSION['l_password']) ){ // Вставляем данные из сессий в обычные переменные $l_username = $_SESSION['l_username']; $l_password = $_SESSION['l_password']; // Делаем запрос к БД для выбора данных. $query = " SELECT * FROM users WHERE username = '$l_username' AND password = '$l_password'"; $result = mysql_query($query) or die ( "Error : ".mysql_error() ); /* Проверяем, если в базе нет пользователей с такими данными, то выводим сообщение об ошибке */ if(mysql_num_rows($result) < 1){ echo "Вход доступен только авторизированным пользователям! Перейти на <a href='index.php'>главную страницу</a>"; }else{ /* Здесь пишите те функций, к которым имеет доступ авторизированный пользователь */ echo "Дополнительные функций"; } }else{ echo "Вход доступен только авторизированным пользователям! Перейти на <a href='index.php'>главную страницу</a>"; } ?> ... |
|||
:
Нравится:
Не нравится:
|
|||
15.02.2017, 13:56 |
|
Почему не работает сессия? Что я не так делаю?
|
|||
---|---|---|---|
#18+
Welester, обрати внимание на ключи ... |
|||
:
Нравится:
Не нравится:
|
|||
15.02.2017, 15:15 |
|
Почему не работает сессия? Что я не так делаю?
|
|||
---|---|---|---|
#18+
Я обратил, исправил, всё равно ... |
|||
:
Нравится:
Не нравится:
|
|||
15.02.2017, 15:33 |
|
|
start [/forum/topic.php?fid=23&msg=39405029&tid=1460762]: |
0ms |
get settings: |
9ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
34ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
41ms |
get tp. blocked users: |
1ms |
others: | 296ms |
total: | 415ms |
0 / 0 |