Probleme QCM
Résolu
kreyzix
Messages postés
3
Date d'inscription
Statut
Membre
Dernière intervention
-
kreyzix Messages postés 3 Date d'inscription Statut Membre Dernière intervention -
kreyzix Messages postés 3 Date d'inscription Statut Membre Dernière intervention -
Bonjour a tous,
Voici mon problème: dans le cadre d'un prjet scolaire nous avons créé un site Web. Nous y avons ajouté un QCM servant de bilan à la visite de celui-ci. Le problème est que, une fois le QCM intégré au site lorsque l'on valide les réponses, une nouvelle page s'ouvre alors que je veux que juste que le code PHP du QCM s'execute tout en restant sur la page en question.
Voici le QCM seul:

Lorsque je valide les réponse ça fait ceci:

Je voudrai que ça fasse la même chose une fois le QCM intégré au site le problème c'est qu'une fois les réponses validées une nouvelle page s'ouvre et il y a un problème d'affichage. Voici le QCM intégré au site:

Et voici ce que ça fait une fois les réponses validées:

J'éspere que vous avez compris ma demande et que quelqu'un m'aidera (j'ai déja essayé de résoudre le problème mais sans succès sûrement dû au fait que je suis débutant en PHP)
Au passage si vous voulez le code PHP du QCM le voici:
<?php
?>
<html>
<head>
<title>QCM SW</title>
<!-- Pour empêcher le retour en arrière avec le bouton BACK -->
<script type="text/javascript">
function noBack(){window.history.forward()}
noBack();
window.onload=noBack;
window.onpageshow=function(evt){if(evt.persisted)noBack()}
window.onunload=function(){void(0)}
</script>
</head>
<body bgcolor="#FFFFF2">
<center><table border="1" cellpadding="5" bgcolor="#000000"><tr><td>Questionnaire du jeune Padawan</td></tr></table></center><br>
<form method="post" action="QCMBilan.php">
<?php
$question[0]="Quelle est la couleur de Dark Vador ?";
$choix[0]=array("blanc","bleu","rouge","noir");
$bonne_rep[0]=$choix[0][3];
$question[1]="Quel est la couleur du sabre de Windoo ?";
$choix[1]=array("vert","violet","bleu");
$bonne_rep[1]=$choix[1][1];
$question[2]="Quelle est la planete glaciaire dans l'univers Star Wars ?";
$choix[2]=array("Cold","Tatooin","Hoth","Corusant");
$bonne_rep[2]=$choix[2][2];
$question[3]="Quel est le vaisseau emblematique des rebelles ?";
$choix[3]=array("Snowing","Xwing","Wingsuit","YWing");
$bonne_rep[3]=$choix[3][1];
$nbquest=sizeof($question);
$score=0;
if (isset($_POST["retour"]))
{
echo "<br><center>CORRIGE<br>(Allez consulter votre <a href=\"#sco\">score</a> au bas de cette page)</center><br>";}
for ($i=0;$i<$nbquest;$i++) // nombre de tableaux
{
$a_repondu[$i] = false;
$nbchoix=sizeof($choix[$i]);
$no=$i+1;
echo "<table border=\"1\" width=\"100%\" bgcolor=\"#000000\">"; // couleur case question
echo "<tr>";
echo "<td colspan=\"$nbchoix\">";
echo "<center><h3><font color=\"#FF0000\">$no</font></h3></center>"; // couleur numero question
echo "<center>$question[$i]</center>";
echo "</td>";
echo "</tr>";
if (isset($_POST["retour"]))
{
if (isset($_POST["bt"][$i])) // si bouton coché
{
$bt[$i] = $_POST["bt"][$i];
}
else $bt[$i] = "";
}
else $bt[$i] = "";
for ($j=0;$j<$nbchoix;$j++) // nombre de colonnes
{
echo "<tr>";
echo "<td align=\"left\" bgcolor=\"#0000E7\">"; // couleur cases reponse
echo "<input type=\"radio\" name=\"bt[$i]\" value=\"bt[$j]\" ";
if ($bt[$i]=="bt[$j]")
{
echo "checked";
$k=$j;
$a_repondu[$i]=true;
}
echo ">".$choix[$i][$j];
echo "</td>";
echo "</tr>";
}
echo "<tr>";
echo "<td colspan=\"$nbchoix\" bgcolor=\"#ED9374\">"; // couleur reponse
if ($a_repondu[$i])
{
if ($choix[$i][$k]==$bonne_rep[$i])
{
$mess[$i]="Exact";
$score++;
}
else
{
$mess[$i]="Non c'est $bonne_rep[$i]";
}
echo "<center>".$mess[$i]."</center>";
}
echo "</td>";
echo "</tr>";
echo "</table>";
echo "<br>";
}
if (isset($_POST["retour"]))
{
echo "<br><br><center><table border=\"1\" cellpadding=\"5\" bgcolor=\"#FFC9AE\"><tr><td><a name=\"sco\">Score : $score/$nbquest</td></tr></table></center>";
}
else
{
echo "<input type=\"hidden\" name=\"retour\" value=\"1\">";
echo "<br><br><center><input type=\"submit\" value=\"Confirmer\"></center>";
}
?>
</form>
</body>
</html>
Merci de votre attention, en ésperant une solution ^^
Voici mon problème: dans le cadre d'un prjet scolaire nous avons créé un site Web. Nous y avons ajouté un QCM servant de bilan à la visite de celui-ci. Le problème est que, une fois le QCM intégré au site lorsque l'on valide les réponses, une nouvelle page s'ouvre alors que je veux que juste que le code PHP du QCM s'execute tout en restant sur la page en question.
Voici le QCM seul:

Lorsque je valide les réponse ça fait ceci:

Je voudrai que ça fasse la même chose une fois le QCM intégré au site le problème c'est qu'une fois les réponses validées une nouvelle page s'ouvre et il y a un problème d'affichage. Voici le QCM intégré au site:

Et voici ce que ça fait une fois les réponses validées:

J'éspere que vous avez compris ma demande et que quelqu'un m'aidera (j'ai déja essayé de résoudre le problème mais sans succès sûrement dû au fait que je suis débutant en PHP)
Au passage si vous voulez le code PHP du QCM le voici:
<?php
?>
<html>
<head>
<title>QCM SW</title>
<!-- Pour empêcher le retour en arrière avec le bouton BACK -->
<script type="text/javascript">
function noBack(){window.history.forward()}
noBack();
window.onload=noBack;
window.onpageshow=function(evt){if(evt.persisted)noBack()}
window.onunload=function(){void(0)}
</script>
</head>
<body bgcolor="#FFFFF2">
<center><table border="1" cellpadding="5" bgcolor="#000000"><tr><td>Questionnaire du jeune Padawan</td></tr></table></center><br>
<form method="post" action="QCMBilan.php">
<?php
$question[0]="Quelle est la couleur de Dark Vador ?";
$choix[0]=array("blanc","bleu","rouge","noir");
$bonne_rep[0]=$choix[0][3];
$question[1]="Quel est la couleur du sabre de Windoo ?";
$choix[1]=array("vert","violet","bleu");
$bonne_rep[1]=$choix[1][1];
$question[2]="Quelle est la planete glaciaire dans l'univers Star Wars ?";
$choix[2]=array("Cold","Tatooin","Hoth","Corusant");
$bonne_rep[2]=$choix[2][2];
$question[3]="Quel est le vaisseau emblematique des rebelles ?";
$choix[3]=array("Snowing","Xwing","Wingsuit","YWing");
$bonne_rep[3]=$choix[3][1];
$nbquest=sizeof($question);
$score=0;
if (isset($_POST["retour"]))
{
echo "<br><center>CORRIGE<br>(Allez consulter votre <a href=\"#sco\">score</a> au bas de cette page)</center><br>";}
for ($i=0;$i<$nbquest;$i++) // nombre de tableaux
{
$a_repondu[$i] = false;
$nbchoix=sizeof($choix[$i]);
$no=$i+1;
echo "<table border=\"1\" width=\"100%\" bgcolor=\"#000000\">"; // couleur case question
echo "<tr>";
echo "<td colspan=\"$nbchoix\">";
echo "<center><h3><font color=\"#FF0000\">$no</font></h3></center>"; // couleur numero question
echo "<center>$question[$i]</center>";
echo "</td>";
echo "</tr>";
if (isset($_POST["retour"]))
{
if (isset($_POST["bt"][$i])) // si bouton coché
{
$bt[$i] = $_POST["bt"][$i];
}
else $bt[$i] = "";
}
else $bt[$i] = "";
for ($j=0;$j<$nbchoix;$j++) // nombre de colonnes
{
echo "<tr>";
echo "<td align=\"left\" bgcolor=\"#0000E7\">"; // couleur cases reponse
echo "<input type=\"radio\" name=\"bt[$i]\" value=\"bt[$j]\" ";
if ($bt[$i]=="bt[$j]")
{
echo "checked";
$k=$j;
$a_repondu[$i]=true;
}
echo ">".$choix[$i][$j];
echo "</td>";
echo "</tr>";
}
echo "<tr>";
echo "<td colspan=\"$nbchoix\" bgcolor=\"#ED9374\">"; // couleur reponse
if ($a_repondu[$i])
{
if ($choix[$i][$k]==$bonne_rep[$i])
{
$mess[$i]="Exact";
$score++;
}
else
{
$mess[$i]="Non c'est $bonne_rep[$i]";
}
echo "<center>".$mess[$i]."</center>";
}
echo "</td>";
echo "</tr>";
echo "</table>";
echo "<br>";
}
if (isset($_POST["retour"]))
{
echo "<br><br><center><table border=\"1\" cellpadding=\"5\" bgcolor=\"#FFC9AE\"><tr><td><a name=\"sco\">Score : $score/$nbquest</td></tr></table></center>";
}
else
{
echo "<input type=\"hidden\" name=\"retour\" value=\"1\">";
echo "<br><br><center><input type=\"submit\" value=\"Confirmer\"></center>";
}
?>
</form>
</body>
</html>
Merci de votre attention, en ésperant une solution ^^
A voir également:
- Probleme QCM
- Qcm électricité afpa - Forum Matériel & Système
- Qcm architecture des ordinateurs corrigé pdf ✓ - Forum Matériel & Système
- Qcm maker pc - Télécharger - Études & Formations
- Qcm excel corrigé pdf ✓ - Forum Programmation
- Qcm python corrigé pdf - Forum Python
2 réponses
Salut,
Quelle est l'URL affichée dans le navigateur lors de l'affichage du QCM avant de valider celui-ci ? Et quelle est l'URL une fois le QCM validé ?
Comment est inclus le code du QCM sur le site ?
Bonne journée,
Quelle est l'URL affichée dans le navigateur lors de l'affichage du QCM avant de valider celui-ci ? Et quelle est l'URL une fois le QCM validé ?
Comment est inclus le code du QCM sur le site ?
Bonne journée,
kreyzix
Messages postés
3
Date d'inscription
Statut
Membre
Dernière intervention
Bonjour, tout d'abord je tiens à m'excuser car j'ai trouvé la solution, la bonne nouvelle c'est que c'est grâce à toi: en fait j'avais un fichier PHP qui correspondait à une page du site dans laquelle j'avais inséré la commande "
" le soucis c'est que dans mon fichier code du QCM j'avais mis " " donc forcément quand je valisais ca me renvoyait au QCM seul. En observant les URL grâce à ton message j'ai tilté. J'ai donc finalement changé cette ligne pour et ca marche nickel. Merci beaucoup je suis débutant en informatique donc observer les URL n'est pas un reflexe pour moi. Encore merçi en tout cas et bonne soirée !!!!
Bonjour,
1 - **** Attention ****
Merci de bien vouloir utiliser la coloration syntaxique (les balises de code) lorsque tu postes du code sur le forum.
Explications disponibles ici :
https://codes-sources.commentcamarche.net/faq/10686-le-nouveau-codes-sources-comment-ca-marche#balises-code
2 - Que contient le fichier QCMBilan.php ?
Est-ce le code que tu nous as collé ?
Si oui..commence par modifier le "action" de ton form
par :
J'ai l'impression que tu nous a mis le code de la page de "validation" du formulaire et pas le formulaire (le qcm) lui même...
Sur quelle page se situe t-il ?
Si tu veux rester sur la même page ... tu dois mettre le code de validation DANS le même fichier que celui contenant le QCM et donc mettre l'attribut action du form à vide (voir ci-dessus).
Ainsi .. tu restes au même endroit;....
1 - **** Attention ****
Merci de bien vouloir utiliser la coloration syntaxique (les balises de code) lorsque tu postes du code sur le forum.
Explications disponibles ici :
https://codes-sources.commentcamarche.net/faq/10686-le-nouveau-codes-sources-comment-ca-marche#balises-code
2 - Que contient le fichier QCMBilan.php ?
Est-ce le code que tu nous as collé ?
Si oui..commence par modifier le "action" de ton form
<form method="post" action="QCMBilan.php">
par :
<form method="post" action="">
J'ai l'impression que tu nous a mis le code de la page de "validation" du formulaire et pas le formulaire (le qcm) lui même...
Sur quelle page se situe t-il ?
Si tu veux rester sur la même page ... tu dois mettre le code de validation DANS le même fichier que celui contenant le QCM et donc mettre l'attribut action du form à vide (voir ci-dessus).
Ainsi .. tu restes au même endroit;....
Je n'ai pas réellement compris mais le problème est résolu cela venait effectivement de la commande <form...> en validant, le QCM revenait sur lui même car j'avais mis comme dans ton message j'ai juste dû changé la partie QCMbilan.php par le fichier de la page. Depuis tout ce temps je cherchais alors qu'en fait c'etait tout bête. Je n'ai pas encore les bons reflexes en informatique. Merci en tout cas et bonne soirée. (Désolé de ne pas avoir utilisé la coloration syntaxique je ne suis inscrit que récemment sur le site je ne savais pas).