Понимание паттерна PHP PRG
Я немного прочитал о паттерне Post/Redirect/Get, и я не совсем уверен, как применить его в PHP. Может кто-нибудь взять этот очень простой пример и объяснить мне? Допустим, у вас есть форма и пользователь должен зарегистрироваться. После этого он просто перенаправляется на другую страницу. Как мне сделать это так, чтобы он предотвращал добавление дубликата контента в базу данных.
Моя форма
<form id="registerPage" method="POST" action="reg.php">
<input id="username" name="username" type="text" placholder="username">
<input id="password" name="password" type="password" placholder="password">
<button type="submit">Register</button>
</form>
reg.php
<?php
$username = $_POST['username'];
$password= $_POST['password'];
$encrypt= md5($password);
$con = mysqli_connect("localhost","yo","sup","cool");
$query = "INSERT INTO table(";
$query .= "username,";
$query .= "password)VALUES(";
$query .= "'$username',";
$query .= "'$password')";
mysqli_query($con,$query);
echo "<script>alert('Successfully Registered')</script>";
mysqli_close($con);
?>
1 ответ
Шаблон PRG говорит, что POST-запрос должен отправлять RedirectResult(HTTP 302) с указанием URL-адреса местоположения о том, куда идти и получить ответ. После получения ответа 302 от сервера браузер клиента отправит HTTP-запрос GET в указанное место.
Для получения дополнительной информации обратитесь к подробному примеру шаблона PRG в ASP.NET MVC.