How can PHP be used to prevent duplicate data entries when a user reloads a page after submitting a form?

When a user submits a form and then reloads the page, it can result in duplicate data entries being submitted to the database. To prevent this, we can use a technique called Post/Redirect/Get (PRG) pattern. After the form is submitted, the PHP script processes the data, inserts it into the database, and then redirects the user to a different page using the header() function. This way, if the user reloads the page, they are simply reloading the redirected page and not resubmitting the form data.

<?php
// Process form data
if ($_SERVER["REQUEST_METHOD"] == "POST") {
    // Insert data into the database
    // Redirect to a different page
    header("Location: success.php");
    exit();
}
?>

<!DOCTYPE html>
<html>
<head>
    <title>Form</title>
</head>
<body>
    <form method="post" action="<?php echo $_SERVER['PHP_SELF']; ?>">
        <!-- Form fields go here -->
        <input type="submit" value="Submit">
    </form>
</body>
</html>