What are the best practices for combining client-side and server-side validation in PHP?

When combining client-side and server-side validation in PHP, it is important to validate user input on the client side using JavaScript to provide immediate feedback to the user. However, client-side validation can be bypassed, so server-side validation should always be performed to ensure data integrity and security.

// Client-side validation using JavaScript
<script>
function validateForm() {
    var x = document.forms["myForm"]["fname"].value;
    if (x == "") {
        alert("Name must be filled out");
        return false;
    }
}
</script>

// Server-side validation in PHP
<?php
$name = $_POST['fname'];
if (empty($name)) {
    $errors[] = "Name is required";
}
?>