Я пытаюсь создать сценарий входа, но я остановился на проверке входных значений. Вот мой HTML-код формы login.php:Как проверить запрос подтверждения
<form method="post" action="loginpro.php">
Username:
<input id="field" type="text" name="username" required>
User email:
<input id="field" type="text" name="email" requerid>
Password:
<input id="field" type="password" name="password" required>
<input id="button" type="submit" value="Log in">
</form>
И это мой loginpro.php файл:
<?php if(isset($_POST['username']) && $_POST['username'] !== '' && isset($_POST['email']) && $_POST['email'] !== '' && isset($_POST['username']) && $_POST['username'] !== ''){
require("../admin/libsec/connect.php");
$username = $_POST['username'];
$email = $_POST['email'];
$password = $_POST['password'];
$hashed_passoword = hash('sha384', $password);
$query = "SELECT * FROM user WHERE username = '{$username}' AND email = '{$email}' AND password '{$hashed_passoword}';";
$result = mysqli_query($con,$query);
// How to check if is query good so i can set session or if is not good to redirect to another page?
}
?>
Очень приятно, чтобы вы разрешили SQL-инъекцию. Имя пользователя 'admin '--' будет вводить меня в качестве пользователя« admin », не зная пароля. Благодаря! (Psst, вы должны избегать переменные или использовать подготовленные операторы и связывать переменные!) – h2ooooooo
Я знаю, что должен использовать mysqli_real_escape_string, и я сначала хочу решить эту проблему. – fr33jumper
дезинфицируйте свои входы с помощью готовых stmnts и проверьте 'if количество строк> 0' этого запроса, а затем разрешить это иначе –