How can the use of HTTP_REFERER in PHP scripts lead to security vulnerabilities, and what alternative methods can be used for referer checking?

Using HTTP_REFERER in PHP scripts can lead to security vulnerabilities because it can be easily spoofed or manipulated by attackers. To enhance security, it is recommended to use alternative methods for referer checking, such as using session tokens or CSRF tokens.

// Alternative method for referer checking using session tokens

session_start();

if(isset($_SESSION['token']) && $_POST['token'] === $_SESSION['token']){
    // Referer check passed
    // Your code here
} else {
    // Referer check failed
    // Handle the error
}