Доброго времени суток дамы и господа. Написал сайт на котором работает система авторизации. Но вот беда. Я не знаю как правильно настроить систему прав. При регистрации пользователю в базе данных автоматически прописываются права 0. 1 - это администратор. Хотел бы что бы во время запуска сессии проверялось администратор пользователь или нет. и если да то в меню для него появлялась отдельная кнопка Администрирование. Пока система авторизации и меню выглядят так. В базе данных в таблице users столбцы ID Login Pass Prava Проверка авторизации PHP: <?php session_start();//запускаем сессию require_once "connection.php";//подкл БД if($_POST['submit']) {//если нажата кнопка if(!$_POST['login'] == "" && !$_POST['pass'] == "") {//если не пустое $login = $_POST['login']; $login = htmlspecialchars($login);//превращаем весь html код в строку $login = trim($login);//удаляем пробелы $login = stripslashes($login);//удаляем обратный слэш $pass = $_POST['pass']; //проверяем, на существование такого же логина в бд $query = mysql_query("SELECT `login` FROM `users` WHERE login = '$login' && pass = '$pass'"); if(@mysql_num_rows($query) > 0) {//если есть $_SESSION['user'] = $login;//создаем сессию echo "<script>location.href = 'index.php' </script>"; //отправляем назад } else {//если нет такого логина exit('извините, Вы не правильно ввели данные.'); } } else {//если какое-то поле пустое exit('извините, Вы заполнили не все поля.'); } } else {//иначе if($_POST['submit_close']) {//если нажата кнопка назад unset($_SESSION['user']);//удаляем сессию echo "<script>location.href = 'index.php' </script>";//отправляем на гл.стр } else {//если не нажал но как то попал на стр exit('извините, ошибка. Проверьте URL'); } } ?> Форма авторизации PHP: <?php if(isset($_SESSION['user'])) { ?> <form name="myform" action="logchek.php" method="post"> <h3>Добро пожаловать <?php echo $_SESSION['user'];?> </h3> <input name="submit_close" value="Выход" type="submit"> </form> <?php } else { ?> <form name="myform" action="logchek.php" method="post"> <label>Имя пользователя:</label> <input name="login" placeholder="Имя пользователя" type="text"> <label>Пароль:</label><input name="pass" type="password"> <input name="submit" value="Войти" type="submit"> </form> <a href="reg.php">Создать аккаунт</a> <?php } ?> Меню HTML: <div style="position:relative; top:-30px; auto"> <nav class="two"> <ul> <li><a href="index.php"><i class="fa fa-home fa-fw"></i>Главная</a></li> <li><a href="zakaz.php">Каталог</a></li> <li><a href="About">О нас</a></li> </ul> </nav> <div style="position:absolute; bottom:3px; right:3px;"> <login> <?php require_once "login.php" // покдлючаем файл Login.php к сайту ?> </login> </div> </div>
Можете смело удалять то, что нагородили. Криво, дыряво + устаревший mysql_ Есть готовые решения на PDO, MYSQLI_ не поленитесь нагуглить, найти и почитать.