système de notation bouton radio pour différentes catégories de questions qui ajoutent une note à la fin [fermé]

StackOverflow https://stackoverflow.com/questions/9346388

Question

J'ai une page php qui a quelques questions HTML sur elle, chaque question a un « type » et vous répondre à cette question sur une échelle de 1-5, Dans l'exemple ci-dessous il y aurait 3 types de questions: A, B, et C. Comment puis-je ajouter le score de TOTAL pour chaque question « type » (score est faite à partir des boutons radio pour 1-5 échelle en dessous de chaque question) et ensuite les scores totaux stockés sous forme de variables PHP?

Voici le code HTML, je ne savent absolument pas où commencer, mais je dois faire pour un événement scolaire que nous faisons bientôt et je ne veux pas les laisser tomber :) Haha! Merci pour tous les gars d'aide, désolé je sais si peu sur les formulaires HTML! Quoi qu'il en soit, voici le code HTML, le PHP peut aller partout où je ne l'ai pas écrit encore /: haha:

Type A rating:
<br>
<form action="" method="post">
1
<input type="radio" name="select" value="1">
<input type="radio" name="select" value="2">
<input type="radio" name="select" value="3">
<input type="radio" name="select" value="4">
<input type="radio" name="select" value="5">
5
</form>
<br><br>
Type B rating:
<br>
<form action="" method="post">
1
<input type="radio" name="select" value="1">
<input type="radio" name="select" value="2">
<input type="radio" name="select" value="3">
<input type="radio" name="select" value="4">
<input type="radio" name="select" value="5">
5
</form>
<br><br>
Type A rating:
<br>
<form action="" method="post">
1
<input type="radio" name="select" value="1">
<input type="radio" name="select" value="2">
<input type="radio" name="select" value="3">
<input type="radio" name="select" value="4">
<input type="radio" name="select" value="5">
5
</form>
<br><br>
Type C rating:
<br>
<form action="" method="post">
1
<input type="radio" name="select" value="1">
<input type="radio" name="select" value="2">
<input type="radio" name="select" value="3">
<input type="radio" name="select" value="4">
<input type="radio" name="select" value="5">
5
</form>
<br><br>
Type A rating:
<br>
<form action="" method="post">
1
<input type="radio" name="select" value="1">
<input type="radio" name="select" value="2">
<input type="radio" name="select" value="3">
<input type="radio" name="select" value="4">
<input type="radio" name="select" value="5">
5
</form>
<br><br>
Type B rating:
<br>
<form action="" method="post">
1
<input type="radio" name="select" value="1">
<input type="radio" name="select" value="2">
<input type="radio" name="select" value="3">
<input type="radio" name="select" value="4">
<input type="radio" name="select" value="5">
5
</form>
<br><br>
Type B rating:
<br>
<form action="" method="post">
1
<input type="radio" name="select" value="1">
<input type="radio" name="select" value="2">
<input type="radio" name="select" value="3">
<input type="radio" name="select" value="4">
<input type="radio" name="select" value="5">
5
</form>
<br><br>

<input type="submit" name="Sum The Ratings" value="Vote">
Était-ce utile?

La solution

Créer une grande forme avec toutes les questions, puis pour chaque question, définir le nom de l'entrée avec un autre mot-clé pour chaque question. Lorsque vous traitez votre formulaire, vous obtiendrez avec $ _POST la valeur [ « nom »] sélectionné, il suffit de les ajouter et faire une ration ou wathever vous wan't

<?php
$name_cat_a = "A_";
$name_cat_b = "B_";
$cat_a_quest = array("Question A1", "Question A2");
$cat_b_quest = array("Question B1", "Question B2");
if(!isset($_POST[submit])){
echo '<form action="test.php" method=post>';
echo 'Type A rating:';
echo '<br />';
$ind = 0;
foreach($cat_a_quest as $question){
    echo $question;
    echo '<br>';
    $name = $name_cat_a . $ind;
    $ind ++;
    for($i=0;$i<5;$i++){
    echo '<input type="radio" name="'.$name.'" value="'.($i+1).'" />'.($i+1) ;
    }
    echo '<br />';
}
echo 'Type B rating:';
echo '<br />';
$ind = 0;
foreach($cat_b_quest as $question){
    echo $question;
    echo '<br>';
    $name = $name_cat_b . $ind;
    $ind ++;
    for($i=0;$i<5;$i++){
    echo '<input type="radio" name="'.$name.'" value="'.($i+1).'" />'.($i+1);
    }
    echo '<br />';
}
echo '<input type="hidden" name="submit" value="1" />';
echo '<input type="submit" name="Sum The Ratings" value="Vote">';
echo '</form>';
}
else{
$moyen_a = 0;
$moyen_b = 0;
$nmb_ques_a = count($cat_a_quest);
$nmb_ques_b = count($cat_b_quest);
for($i=0; $i<$nmb_ques_a; $i++){
     $moyen_a = $moyen_a + intval($_POST['A_'.$i]);
}
$moyen_a = $moyen_a / $nmb_ques_a;
for($i=0; $i<$nmb_ques_b; $i++){
     $moyen_b = $moyen_b + intval($_POST['B_'.$i]);
}
$moyen_b = $moyen_b / $nmb_ques_b;


echo 'A:'.$moyen_a.'<br />';
echo 'B:'.$moyen_b.'<br />';
}
?>

i ont le nom explicite cat_a et cat_b mais vous pouvez mettre tout votre chat dans un tableau, vous boucle en elle, dans cette boucle, vous boucle alors ther est des questions, puis vous en boucle pour les 5 réponses

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top