What are the advantages of using sessions over $_SERVER["HTTP_REFERER"] for verifying page referrals?

When verifying page referrals, using sessions is more secure than relying solely on $_SERVER["HTTP_REFERER"]. This is because the HTTP_REFERER header can be easily spoofed or manipulated by the user, leading to potential security vulnerabilities. Sessions provide a more reliable and secure way to track and verify page referrals.

// Start a session
session_start();

// Set a session variable to store the referring page
$_SESSION['referrer'] = $_SERVER['HTTP_REFERER'];

// Verify the referring page in subsequent requests
if(isset($_SESSION['referrer']) && $_SESSION['referrer'] == 'expected_referring_page.php'){
    // Referring page is valid
    // Proceed with the desired actions
} else {
    // Referring page is not valid
    // Handle accordingly (e.g. redirect, display error message)
}