Files
web_2025/R3.01/tp/tp4/ex1/index.php
T

28 lines
923 B
PHP
Raw Normal View History

2026-04-12 17:58:57 +02:00
<?php
2026-04-15 16:03:11 +02:00
// Les valeurs autorisées servent à la fois pour la validation
// du formulaire et pour l'affichage dans la vue.
$osSet = [
'linux' => 'Linux',
'windows' => 'Windows',
'apple' => 'MacOS',
];
2026-04-12 17:58:57 +02:00
2026-04-15 16:03:11 +02:00
$cookieName = 'preferred_os';
$os = 'linux';
// Si le formulaire est soumis, on valide la valeur reçue avant
// de l'enregistrer dans un cookie valable 60 secondes.
if (isset($_POST['os']) && array_key_exists($_POST['os'], $osSet)) {
$os = $_POST['os'];
setcookie($cookieName, $os, time() + 60);
// On met aussi $_COOKIE à jour pour refléter immédiatement le choix
// sans attendre le rechargement suivant du navigateur.
$_COOKIE[$cookieName] = $os;
} elseif (isset($_COOKIE[$cookieName]) && array_key_exists($_COOKIE[$cookieName], $osSet)) {
// En l'absence de soumission, on relit la préférence mémorisée.
$os = $_COOKIE[$cookieName];
}
include_once './views/main.php';