PHP: <?php 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); //шифруем пароль $result = mysql_query ("SELECT * FROM pg0 Where id = $GET["id"]); $row =mysql_fetch_array($result); if (empty($id_user['id'])){ exit ("Извините, введённый вами логин или неверный."); } else { $_SESSION['password'] = $password; $_SESSION['login'] = $login; $_SESSION['id'] = id_user['id']; } echo "<meta http-equiv='Refresh' content='0; URL=index.php'>"; ?>
Обрабатываете строки логин пароль, а выборку из базы в итоге по параметру гет запроса делаете. Потом проверяете на пустоту $id_user['id']. Где бы этому массиву взяться то P. S. md5 хеширует строку, а не шифрует
@Vladens что не работает? И в чём вопрос? Как найти ошибку. отладка/debug http://phpfaq.ru/debug https://netbeans.org/kb/docs/php/debugging_ru.html https://php.ru/forum/threads/howto-...i-po-shagam-i-s-kartinkami.58974/#post-474550
Переменная $login объявляется в условии (строка 2), а если условие не проходит то и переменной нет. А решение проблемы простое нужно проверить метод отправки данных: PHP: if ($_SERVER['REQUEST_METHOD'] == 'POST') { // Здесь код обработки post запроса } Ещё ошибка в строке 24 не закрыты ковычки и неправильная конкатерация строки с переменной. --- Добавлено --- Строковые операторы --- Добавлено --- Строки --- Добавлено --- В строке 32 перед именем переменной должен быть знак долорра ($).