[php] qui peux m'aider ??
antic80
Messages postés
4877
Statut
Contributeur
-
antic80 Messages postés 4877 Statut Contributeur -
antic80 Messages postés 4877 Statut Contributeur -
bonjour
voila j'ai ce morceau de code
ce code permet de verifié la reponse d'une question si c bon on passe a la question sinon on incremente le nombre d'essai et on reviens a la question
j'aimerai savoir comment faire pour quand j'arrive a la derniere question les requetes s'execute quand meme sauf l'incrémentation du numéro de la question et etre redirigé vers une autre page
j'espere etre clair
merci a vous
voila j'ai ce morceau de code
if ($Rep_correcte != $Reponse){
echo "<div align='center'><font size='6'>Non, c'est une mauvaise réponse</font></div>";
echo "<br />";
echo "<br />";
echo "<div align='center'><img border='0' src='../../../Image/MauvRep.gif' ></div>";
$NumEssai=$NumEssai+1;
$sql2="UPDATE apprenant SET NbEssai='$NumEssai' where nom='$Nom' and prenom='$Prenom' and pseudo='$pseudom'";
$req2 = mysql_query($sql2) or die('Erreur SQL !<br>'.$sql2.'<br>'.mysql_error());
}
else
{
$NumQuestion=$NumQuestion+1;
$NEssai="0";
$NombreReponseBonne=$NombreReponseBonne+1;
$chgtQuestion2="UPDATE apprenant SET NumQuestion='$NumQuestion', NbEssai='$NEssai', NbReponseBonne='$NombreReponseBonne' where nom='$Nom' and prenom='$Prenom' and pseudo='$pseudom'";
$reqchgtQuestion2 = mysql_query($chgtQuestion2) or die('Erreur SQL !<br>'.$chgtQuestion2.'<br>'.mysql_error());
echo "<div align='center'><font size='6'>Bravo, c'est une bonne réponse</font></div>";
echo "<br />";
echo "<br />";
echo "<div align='center'><img border='0' src='../../../Image/BonRep.gif' ></div>";
$insertstats="INSERT INTO Stats(Id,id_eleve,id_question,id_categorie,Essai,BonneRep,MauvaiseRep) VALUES('','$Ideleve','$Nquest','$Cat','$NumEssai','1','0')";
$reqinsertstats = mysql_query($insertstats) or die('Erreur SQL !<br>'.$insertstats.'<br>'.mysql_error());
}
echo $NumQuestion;
echo $NbQ;
if($NumQuestion==$NbQ)
{
echo "<meta http-equiv='refresh' content='2; URL=http://127.0.0.1/Membre/Exercices/TN/index.php'>";
}
?>
ce code permet de verifié la reponse d'une question si c bon on passe a la question sinon on incremente le nombre d'essai et on reviens a la question
j'aimerai savoir comment faire pour quand j'arrive a la derniere question les requetes s'execute quand meme sauf l'incrémentation du numéro de la question et etre redirigé vers une autre page
j'espere etre clair
merci a vous
A voir également:
- [php] qui peux m'aider ??
- Easy php - Télécharger - Divers Web & Internet
- Expert php pinterest - Télécharger - Langages
- Retour à la ligne php ✓ - Forum PHP
- Retour a la ligne avec Echo comment faire ? - Forum Webmastering
- Alert php - Forum PHP
6 réponses
Tout d'abord, j'ai pas lu tout ton code. C'est un peu trop monolithique pour moi ! :)
Mais, juste une chose : tu peux fermer la balise PHP et la reprendre un peu après, si tu veux écrire du HTML. Ca évitera de voir fleurir des <i>echo</i> un peu partout. Exemple :
Ceci étant dit, je reviens plus précisément sur ta question, il suffit de tester ta variable $nbquestion au début du script (pour éviter des problèmes de header) :
Mais, juste une chose : tu peux fermer la balise PHP et la reprendre un peu après, si tu veux écrire du HTML. Ca évitera de voir fleurir des <i>echo</i> un peu partout. Exemple :
<?php
if(!$_POST['Nom'])
{?>
<strong>Attention !!!</strong><br/>
Vous n'avez pas saisi de nom dans le formulaire précédent !
<?php }
else
{
// Traitement du formulaire
}
?>
Ceci étant dit, je reviens plus précisément sur ta question, il suffit de tester ta variable $nbquestion au début du script (pour éviter des problèmes de header) :
if( $nbquestion >= $NOMBRE_QUESTIONS )
{
// Redirection vers la page fin_du_quizz.php
header("Location: fin_du_quizz.php");
}
else
{
// Autre partie du code
}
Ou sinon, pour éviter d'avoir des ruptures dans le code avec des {?> <?} qui rendent le code un peu illisible, on peut afficher plusieurs lignes d'un coup
sans avoir à se préoccuper des guillemets en utilisant la syntaxe heredoc:
Voir https://www.php.net/manual/fr/language.types.string.php#language.types.string.syntax.heredoc
sans avoir à se préoccuper des guillemets en utilisant la syntaxe heredoc:
if(!$_POST['Nom'])
{
echo <<<PROUT
<strong>Attention !!!</strong><br/>
Vous n'avez pas saisi de nom dans le formulaire précédent !
PROUT;
<?php }
Voir https://www.php.net/manual/fr/language.types.string.php#language.types.string.syntax.heredoc
le header ne marche pas dans mon code
il me dis qu'il peux pas ouvrir un header ou je sais pas koi
ca me dis header cannot modify etc....
il me dis qu'il peux pas ouvrir un header ou je sais pas koi
ca me dis header cannot modify etc....
Bonsoir
A la place de cela:
Par ailleurs quand tu as une erreur, poste le message d'erreur exact. Cela nous aidera à t'aider.
A la place de cela:
if($NumQuestion==$NbQ)
{
echo "<meta http-equiv='refresh' content='2; URL=http://127.0.0.1/Membre/Exercices/TN/index.php'>";
}
?>je te proposeif($NumQuestion==$NbQ)
{
echo "<a href='index.php'>Recommencer ou ce que tu veux</a>";
}
?>
Par ailleurs quand tu as une erreur, poste le message d'erreur exact. Cela nous aidera à t'aider.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
oui j'y est penser mais j'aimerai que quand on verifie la derniere question, si c'était la derniere question on va directement vers une autre page