Я начал изучать немного MYSQLi & PHP сегодня, но я немного застрял в этом. Я пробовал несколько методов, но ничего не работает для меня, так как я действительно мало что понимаю. Я пытаюсь создать возможность входа для пользователя, у которого уже есть учетная запись, но это, похоже, не работает.Попытка создать систему входа в систему с PHP и MYSQLi
Кроме того, я знаю, что мое текущее шифрование пароля слабое, но я просто пытаюсь изучить основы, прежде чем я углубится в проблему безопасности.
В любом случае, вот мой код:
Форма:
<form method="POST" action="login.php" name="login">
Email <input type="email" name="email">
Password <input type="password" name="password">
<input type="submit" name="login" value="Login">
</form>
PHP: require_once ('ядро/init.php'); // подключиться к базе данных с помощью нового MySQLi
session_start();
if($_SESSION['user'] != ''){
header('Location: profile.php');
}
if (isset($_POST['submit'])){
$email = mysqli_real_escape_string($_POST['email']);
$password = mysqli_real_escape_string($_POST['password']);
$hash = md5($password);
$query = "SELECT * FROM users WHERE email='$email' AND password='$hash'";
$result = mysqli_query($db,$query)or die(mysqli_error());
$num_row = mysqli_num_rows($result);
if($num_row == 1) {
echo "Does work";
while ($row = mysqli_fetch_array($result)){
$_SESSION['user'] = $row['id'];
}
} else {
echo "Does not work.";
return false;
}
return true;
}
Спасибо заранее
так, что именно вы испытываете проблемы? – castis
@castis не дает ответа в инструкции if ($ num_row == 1). –
Я бы выбрал $ query и посмотрел, что он построил. –