Реализую для сайта своей практики авторизацию и регистрацию. Код очень похож, но вот регистрация работает, а авторизация - нет. Вот код формы регистрации: Код (PHP): <?php include('../bd.php'); if (isset($_POST['submit'])) { $fio = trim($_POST['fio']); $login = trim($_POST['login']); $password = sha1(trim($_POST['password'])); $usertype = trim($_POST['usertype']); $query = "INSERT INTO user (`fio`, `login`, `password`, `usertype`) VALUES ('".$fio."','".$login."','".$password."','".$usertype."')"; $result = mysql_query($query); if($result) { $msg = "Пользователь зарегистрирован"; } else{ $msg = "Ошибка при регистрации!"; } } ?> <!DOCTYPE html> <head> <meta charset="UTF-8"> <title>Новый пользователь</title> <link rel="stylesheet" href="style.css"> </head> <body> <div align="center" class="cabinet"><h2>Добавление пользователя</h2> <?php if(!empty($msg)) { echo "<p class='msg'>".$msg. "</p>";} ?> <form method="post" action="new-user.php"> <p>Введите ФИО</p> <input type="text" name="fio" id="id-fio" size="50"> <p>Введите логин</p> <input type="text" name="login" id="id-login" size="50"> <p>Введите пароль</p> <input type="text" name="password" id="id-password" size="50"> <p>Ведите тип пользователя (1-3) </p> <input type="text" name="usertype" id="id-usertype" size="50"> <br> <div class="button"><input type="submit" name="submit" value="Создать"></div> </form> [url="userlist.php"]Назад[/url]</div> </body> </html> А вот авторизации: Код (PHP): <?php include('bd.php'); if (isset($_POST['submit'])) { $login = trim($_POST['login']); $password = sha1(trim($_POST['password'])); $query = "SELECT id, login FROM user WHERE login = '".$login."' AND password = '".$password."' LIMIT 1"; $result = mysql_query($query); if(mysql_num_rows($result) == 1){ $found_user = mysql_fetch_array($result); header("location:admin/admin.php"); } else{ $msg = "Не верная пара логин/пароль!"; } } ?> <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <link rel="stylesheet" href="style.css"> <title>Авторизация</title> </head> <body> <div align="center" class="block"> <h1>Авторизация</h1> <?php if(!empty($msg)) { echo "<p class='msg'>".$msg. "</p>";} ?> <form method="post" action="login_user.php"> <div align="center" class="row"> <label for="login-field">Ваш логин </label> </div> <div> <input type="text" name="login" id="login-field"> </div> <div> <label for="password-field">Ваш пароль </label> </div> <div> <input type="password" name="password" id="password-field"> </div> <div class="button"> <input type="submit" name="submit" value="Войти"> </div> </form> </div> </body> </html> В авторизации, если mysql_num_rows($result) == 1 приравнять нулю, то авторизация проходит. Но очевидно, что это не правильно. В запросе ошибок вроде-как нет. Может быть вы поможете. PHP, JavaScript, SQL и другой код пишите внутри тегов Код ( (Unknown Language)): [b]php][/b]Тут код[b][/[/b][b]code][/b][/color]
Попробуйте искать только по логину, а пароль вернуть в выборке и потом уже сравнивать. Тогда оба пароля можно будет ещё и вывести на экран, может, они отличаются.
Выведи свой запрос, т.е. echo $query, скопируй его и попробуй выполнить в phpmyadmin или чем ты там пользуешся для MySQL. И, кстати, процесс проверки пароля называется Аутентификация, а Авторизация это предоставление прав на действие.
Поменяй include на require или просто логи посмотри - у тебя подключения к БД наверное нет во втором случае Не знаю как у тебя в первом случае чего сработало, но USER - это зарезервированное ключевое слово - его надо брать в апострофы Код (Text): `user` а лучше таблицу переименовать в users