What are the best practices for handling form validation and error messages in PHP scripts?

When handling form validation and error messages in PHP scripts, it is important to validate user input on the server side to prevent malicious attacks and ensure data integrity. Display clear and specific error messages to the user if validation fails, indicating which fields need to be corrected. Use conditional statements to check for validation errors and display appropriate messages to guide the user through the form submission process.

<?php
// Check if form is submitted
if ($_SERVER["REQUEST_METHOD"] == "POST") {
    $name = $_POST["name"];
    $email = $_POST["email"];
    
    // Validate name
    if (empty($name)) {
        $errors[] = "Name is required";
    }
    
    // Validate email
    if (empty($email)) {
        $errors[] = "Email is required";
    } elseif (!filter_var($email, FILTER_VALIDATE_EMAIL)) {
        $errors[] = "Invalid email format";
    }
    
    // If there are errors, display them
    if (!empty($errors)) {
        foreach ($errors as $error) {
            echo "<p>$error</p>";
        }
    } else {
        // Process form submission
        // Add code here to handle successful form submission
    }
}
?>