Пытаюсь разобраться с сессиями.
Сделала регистрацию, авторизацию и выход, но не до конца понимаю как ограничить права доступа.
Т.е. нужно сделать проверку
if(empty($login) and empty($password)){
echo "Вам необходимо зарегистрироваться, чтобы видеть этот контент";
}
else{
echo "Привет, ".$login." | <a href='exit.php'>Выход</a><br>";
}
То есть переходя со страницы на страницу логин и пароль будут сохраняться до тех пор, пока пользователь не закроет браузер.
Но когда прописываю на странице
echo "Привет, ".$login." | <a href='exit.php'>Выход</a>"
по идее должен выводиться логин пользователя, но у меня ничего не выводит, что наталкивает на мысль, что возможно, у меня не сохраняется логин и пароль.
Помогите пожалуйста разобраться
код для авторизации:
<?php
$conn = mysql_connect ("localhost", "root", "") or die ("Соединение не установлено!");
mysql_select_db('university'); // выбор БД
mysql_query("SET NAMES 'utf8'"); // кодировка
session_start();
if (isset($_POST['login'])){
$login = $_POST['login'];
if ($login == '') {
unset($login);
exit ("Введите пожалуйста логин!");
}
}
if (isset($_POST['password'])){
$password = $_POST['password'];
if ($password == '') {
unset($password);
exit ("Введите пароль");
}
}
$login = stripslashes($login);
$login = htmlspecialchars($login);
$password = stripslashes($password);
$password = htmlspecialchars($password);
$login = trim($login);
$password = trim($password);
$password = md5($password);//шифруем пароль
$user = mysql_query("SELECT id FROM admin WHERE login='$login' AND password='$password'");
$id_user = mysql_fetch_array($user) or die(mysql_error());;
if (empty($id_user['id'])){
exit ("Извините, введённый вами логин или пароль неверный.");
}
else {
$_SESSION['password'] = $password;
$_SESSION['login'] = $login;
$_SESSION['id'] = $id_user['id'];
}
echo "Привет, ".$login." | <a href='exit.php'>Выход</a><br>Контент для зарегистрированных пользователей";
echo "<a href='index.php'>Задать вопрос</a>"
?>