Понимание паттерна 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.

Другие вопросы по тегам