What are the potential pitfalls of using cookies to determine language preference in a PHP website?

One potential pitfall of using cookies to determine language preference in a PHP website is that users can easily manipulate or delete cookies, leading to inaccurate language settings. To solve this issue, you can store the language preference in a session variable instead of a cookie. Sessions are stored on the server-side, making them more secure and less susceptible to manipulation by users.

<?php
session_start();

if(isset($_GET['lang'])) {
    $_SESSION['lang'] = $_GET['lang'];
}

if(empty($_SESSION['lang'])) {
    // Default language
    $_SESSION['lang'] = 'en';
}

// Use $_SESSION['lang'] to set the language throughout the website
?>