Comment vérifier si une case est cochée en PHP ?
Réponses rédigées par Antoine
Dernière mise à jour : 2020-03-01 18:57:17
Question
Comment vérifier si l'une ou l'autre, ou les deux cases sont cochées en PHP ?
<form method="post" action="index.php">
<input type="checkbox" name="option1" value="1">Option 1
<input type="checkbox" name="option2" value="2">Option 2
<input type="submit" value="Envoyer le formulaire">
</form>
Réponse
Le plus simple pour vérifier qu'une case est cochée en PHP est d'utiliser la fonction isset.
Selon que vous utilisez la méthode GET ou POST, vous devez préalablement définir les variables correspondantes aux case à cocher avec $_POST
ou $_GET
.
$case_1 = $_POST["option1"];
$case_2 = $_POST["option2"];
Il vous suffit ensuite d'utiliser la fonction isset
pour déterminer si les variables sont correctement déclarées et est différentes de null
.
Dans l'exemple ci-dessous on teste préalablement la méthode utilisée lors de la soumission du formulaire : ici POST
.
<?php
if ($_SERVER["REQUEST_METHOD"] == "POST")
{
$case_1 = $_POST["option1"];
$case_2 = $_POST["option2"];
if(isset($case_1) && isset($case_2))
{
echo "Les deux cases sont cochées";
}
else if(isset($case_1))
{
echo "La case 1 est cochée";
}
else if (isset($case_2))
{
echo "La case 2 est cochée";
}
else echo "Aucune case n'est cochée";
}
?>
Remarque : pour des raisons de sécurité vous devez sécuriser les variables de votre formulaire.