What are the best practices for handling form data validation and submission in PHP to avoid duplicates?

When handling form data validation and submission in PHP to avoid duplicates, it is important to first check if the data being submitted already exists in the database before inserting it. One common approach is to use a unique constraint in the database table to prevent duplicate entries. Additionally, you can perform a query to check if the data already exists before inserting it to ensure data integrity.

// Assuming you have a database connection established

// Check if the data already exists in the database
$query = "SELECT * FROM table_name WHERE column_name = :value";
$stmt = $pdo->prepare($query);
$stmt->execute(['value' => $submitted_value]);
$row = $stmt->fetch();

if($row) {
    // Data already exists, handle the duplicate entry
    echo "Data already exists in the database.";
} else {
    // Data does not exist, proceed with inserting the new data
    $insert_query = "INSERT INTO table_name (column_name) VALUES (:value)";
    $insert_stmt = $pdo->prepare($insert_query);
    $insert_stmt->execute(['value' => $submitted_value]);
    echo "Data inserted successfully.";
}