Пара вопросов здесь: Моя конечная цель - защитить паролем файл logged_in.php.
Примечание: я только начинающий / средний программист, поэтому я хотел бы получить четкие объяснения, пожалуйста.
Во-первых, я установил имя пользователя и пароль в таблице базы данных.
У меня есть две страницы: login.php и logged_in.php (имена приведены только для примера).Как «потребовать» от пользователя сначала пройти login.php (процесс входа в систему), чтобы получить доступ к logged_in.php (если введенные имя пользователя / пароль верны)?
Это лучший способ защитить страницу паролем?
Что я пробовал:
Login.php:
<?php
$db_host="host";
$db_user="user";
$db_pass="pass";
$db_name="name";
$db_table="table";
$user = mysql_real_escape_string(strip_tags($_POST['user']));
$pass = mysql_real_escape_string(strip_tags($_POST['pass']));
mysql_connect($db_host, $db_user, $db_pass) or die(mysql_error());
mysql_select_db($db_name) or die(mysql_error());
if(isset($user) && isset($pass))
{
$sql = "SELECT * FROM $db_table WHERE username='$user' AND password='$pass'";
$result = mysql_query($sql);
$count = mysql_num_rows($result);
if($count == 1)
{
header("location:logged_in.php");
}
else
header("location:bad_login.html");
}
?>
Проблема с моим кодом на данный момент заключается в том, что кто-то может напрямую ввести URL-адрес logged_in.php и получить доступ к странице, не будучи «обязательным», чтобы сначала пройти через login.php (я уверен, чтоэто очевидно для всех ..).
Я поставил require(login.php);
в верхней части logged_in.php;однако, это не сработало.
Я проверил в Google несколько хороших учебников по этой теме, к сожалению, я не смог найти ни одного, который имел бы четкие объяснения.
Я также видел несколько других вопросов по этой теме относительно stackoverflow, но они мне не очень помогли.
Ятакже заинтересован в возможности защитить мою страницу с помощью метода, который использует phpMyAdmin (когда вы набираете URL-адрес и нажимаете ввод, в раскрывающемся меню в верхней части браузера запрашивается имя пользователя / пароль).Я не знаю, как это работает.Если кто-то может сказать мне, как это работает, я готов полностью игнорировать метод, который я пытаюсь использовать в данный момент (если метод phpMyAdmin достаточно безопасен и довольно прост в реализации).
Спасибо зазаранее!