Traitement des checkbox en PHP
Posté : 27 juil. 2013, 20:01
Bonjour 
Je suis en train de réaliser un QCM pour un site de service hospitalier : le script de validation analyse le type de champ, s'il s'agit d'un bouton radio il détecte s'il s'agit de la bonne réponse, par contre je coince pour les checkbox !
J'arrive à ne pas donner de points si une des cases cochées est fausse, mais je n'arrive pas à détecter si toutes les cases justes ont été cochées (en gros, case juste pas cochée = pas de point).
Merci pour votre aide
Un morceau du formulaire :
Le script de validation en l'état actuel :
Je suis en train de réaliser un QCM pour un site de service hospitalier : le script de validation analyse le type de champ, s'il s'agit d'un bouton radio il détecte s'il s'agit de la bonne réponse, par contre je coince pour les checkbox !
J'arrive à ne pas donner de points si une des cases cochées est fausse, mais je n'arrive pas à détecter si toutes les cases justes ont été cochées (en gros, case juste pas cochée = pas de point).
Merci pour votre aide
Un morceau du formulaire :
<label for="q15">Q9 - Parmi les propositions suivantes, lesquelles sont couvertes par le secret médical ?</label><br />
<input type="checkbox" name="9-q[]" value="checkbox-vrai" />Les données de l'examen clinique<br />
<input type="checkbox" name="9-q[]" value="checkbox-vrai" />Les causes d'un décès<br />
<input type="checkbox" name="9-q[]" value="checkbox-vrai" />Les faits extra-médicaux venant à la connaissance du médecin<br />
<input type="checkbox" name="9-q[]" value="checkbox-vrai" />Les résultats d'examens complémentaires<br />
(ouais, le coup du type de champ qui se retrouve dans le name pour pouvoir être récupéré ensuite, c'est pas très joli j'imagine !)Le script de validation en l'état actuel :
<?
$total = 0;
for ($i=1;$i<21;$i++)
{
$radio = $_GET[$i."-q"];
if (strpos($radio, 'checkbox') === false)
{
if (strpos($radio, 'vrai') !== false)
{
$total = $total+1;
}
}
else
{
// je coince ici :p
}
}
echo $total;
?>