Un petit Quiz avec un formulaire d' inscripti
cast006
Messages postés
11
Date d'inscription
Statut
Membre
Dernière intervention
-
AssassinTourist Messages postés 6029 Date d'inscription Statut Contributeur Dernière intervention -
AssassinTourist Messages postés 6029 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour,
je suis débutant en php... je dois faire un petit Quiz avec un formulaire d' inscription, j' ai déjà fais une partie du travail mais j suis BLOQUER !!!!!!!!!!!!!
Il me faut un code en php qui pourrai m' afficher les réponses de mon Quizz tout en me disant combien de point l'utilisateur a obtenu mais a afficher sur une nouvelle page je vous donne ce que j'ai déjà commencer:::
je suis débutant en php... je dois faire un petit Quiz avec un formulaire d' inscription, j' ai déjà fais une partie du travail mais j suis BLOQUER !!!!!!!!!!!!!
Il me faut un code en php qui pourrai m' afficher les réponses de mon Quizz tout en me disant combien de point l'utilisateur a obtenu mais a afficher sur une nouvelle page je vous donne ce que j'ai déjà commencer:::
<html> <head> <link rel="stylesheet" href="style.css" /> <title>A vous de jouer!!!</title> </head> <body> <form action="totale.php" method="post"> <div align=center> <h1><img src="europa5.jpg" class="imageflottante" alt="imageflottante"></h1> <p class="dessous">Q1) Combien de pays étaient membres de la Communauté Européenne fin 1986 ?</p> <span class="ombre"><input type="radio" name="cmb" value="9" id="Q1" /> <label for="9">9</label> <br/></span> <span class="ombre"><input type="radio" name="cmb" value="12" id="Q2" /> <label for="12">12</label> <br/></span> <span class="ombre"><input type="radio" name="cmb" value="15" id="Q3" /> <label for="15">15</label><br/></span> <p>Q2) Que signifie l'abréviation "UEM" ?</P> <span class="ombre"><input type="radio" name="UEM" value="Union economique et monaitaire" id="Q4" /> <label for="Union economique et monaitaire">Union economique et monaitaire</label> <br/></span> <span class="ombre"><input type="radio" name="UEM" value="Union européenne monaitaire" id="Q5" /> <label for="Union européenne monaitaire">Union européenne monaitaire</label> <br/></span> <span class="ombre"><input type="radio" name="UEM" value="Union economique et militaire" id="Q6" /> <label for="Union economique et militaire">Union economique et militaire</label></span> <p>Q3) Quels sont les deux pays qui ne rejoignent pas l'"UE" en 2004 ?</P> <span class="ombre"><input type="radio" name="UE" value="1" id="Q3" /> <label for="la Roumanie et la Bulgarie">la Roumanie et la Bulgarie</label><br/></span> <span class="ombre"><input type="radio" name="UE" value="2" id="Q3" /> <label for="La Hongrie et Chypre">La Hongrie et Chypre</label> <br/></span> <span class="ombre"><input type="radio" name="UE" value="3" id="Q3" /> <label for="La Slovénie et la Slovaquie">La Slovénie et la Slovaquie</label><br/></span> <p>Q4) En quelle année fût créée la CEE(communauté économique européenne ) et la CEEA(euratom) ?</P> <span class="ombre"><input type="radio" name="reunion" value="1" id="Q7" /> <label for="1986">1986</label> <br/></span> <span class="ombre"><input type="radio" name="reunion" value="2" id="Q8" /> <label for="1996">1996</label><br/></span> <span class="ombre"><input type="radio" name="reunion" value="3" id="Q9" /> <label for="1945">1945</label> <br/></span> <span class="ombre"><input type="radio" name="reunion" value="4" id="Q10" /> <label for="1950">1950</label></td></span> <p>Q5) Où se trouve le Parlement européen ?</P> <span class="ombre"><input type="radio" name="parlement" value="1" id="Q11" /> <label for="Autriche">Autriche</label> <br/></span> <span class="ombre"><input type="radio" name="parlement" value="2" id="Q12" /> <label for="Belgique">Belgique</label><br/></span> <span class="ombre"><input type="radio" name="parlement" value="3" id="Q13" /> <label for="France">France</label> <br/></span> <span class="ombre"><input type="radio" name="parlement" value="4" id="Q14" /> <label for="Allemagne">Allemagne</label></td><br/><br/></span> <input type="submit" value="Valider"> <?php if(isset($_POST['Valider'])) {
A voir également:
- Un petit Quiz avec un formulaire d' inscripti
- Whatsapp formulaire opposition - Guide
- Formulaire de réclamation facebook - Guide
- Formulaire de reclamation instagram - Guide
- Logo quiz - Télécharger - Jeux vidéo
- Petit 1 comme ² ✓ - Forum Windows
12 réponses
Bonjour,
Le code php sera à mettre dans la page totale.php.
Vous devez récupérer tous vos réponses avec la variable $_POST (par exemple $_POST['cmb'] pour avoir la valeur donné par la première question. Vous devez faire ça pour chaque question et comparer avec la bonne réponse.
Si la réponse est correcte, incrémenter une variable qu'on affichera à la fin avec un echo.
Le code php sera à mettre dans la page totale.php.
Vous devez récupérer tous vos réponses avec la variable $_POST (par exemple $_POST['cmb'] pour avoir la valeur donné par la première question. Vous devez faire ça pour chaque question et comparer avec la bonne réponse.
Si la réponse est correcte, incrémenter une variable qu'on affichera à la fin avec un echo.
Merci pour la réponse rapide.
J'ai essayer de faire quelque chose en suivant votre conseil donc j' ai bien mis un code php dans la page totale.php mais ça ne fonctionne pas correctement
donc j' aurai encore besoin de vos conseil ou votre solution ;)
merciiiiii
Voila le code :
J'ai essayer de faire quelque chose en suivant votre conseil donc j' ai bien mis un code php dans la page totale.php mais ça ne fonctionne pas correctement
donc j' aurai encore besoin de vos conseil ou votre solution ;)
merciiiiii
Voila le code :
$points =0; $value12 = $_POST['12']; $valueUnioneuropéennemonaitaire = $_POST['Unioneuropéennemonaitaire']; $valuelaRoumanieetlaBulgarie = $_POST['laRoumanieetlaBulgarie']; $value3 =$_POST['3']; $value2 =$_POST['2']; $reponse1 =$_POST["cmb"]; $reponse2 =$_POST["UEM"]; $reponse3 =$_POST["UE"]; $reponse4 =$_POST["reunion"]; $reponse5 =$_POST["parlement"]; if ($reponse1 == $value12 ) { $points ++; } if ($reponse2 == $valueUnioneuropéennemonaitaire ) { $points ++; } if ($reponse3 == $valuelaRoumanieetlaBulgarie) { $points ++; } if ($reponse4 == $value3 ) { $points ++; } if ($reponse5 == $value2 ) { $points ++; } echo 'Vous avez un total de : '.$points.'';
Pas besoin de définir autant de variable au début.
isset(variable) permet de savoir si la variable existe. Si jamais aucune réponse n'est cochée dans le formulaire, il n'ira pas plus loin. Sinon il vous mettra une erreur dans votre if vu qu'il ne connaîtra pas la variable.
Pour les bonnes réponses, on ne les récupère pas avec un POST, mais simplement en les mettant à la main.
$points = 0; if (isset($_POST["cmb"]) && $_POST["cmb"] == 12 ) { $points ++; } [...] echo "Vous avez un total de : ".$points;
isset(variable) permet de savoir si la variable existe. Si jamais aucune réponse n'est cochée dans le formulaire, il n'ira pas plus loin. Sinon il vous mettra une erreur dans votre if vu qu'il ne connaîtra pas la variable.
Pour les bonnes réponses, on ne les récupère pas avec un POST, mais simplement en les mettant à la main.
Merci énormément ça marche.
Mais j' aurai encore une petite question concernant le formulaire
il passe a la page du Quizz même si les champs ne sont pas rempli alors que j' ai fais la demande qu'il prévienne l' utilisateur au cas ou il ne sont pas rempli
je vous passe le code::
Mais j' aurai encore une petite question concernant le formulaire
il passe a la page du Quizz même si les champs ne sont pas rempli alors que j' ai fais la demande qu'il prévienne l' utilisateur au cas ou il ne sont pas rempli
je vous passe le code::
<?php if (isset ($_POST['Envoyer'])) { if(isset($_POST['nom'])) $nom = $_POST['nom']; else $nom = ''; if(isset($_POST['prenom'])) $prenom = $_POST['prenom']; else $prenom = ''; if ($nom=='' && $prenom=='') { echo 'Veuillez remplir tout les champs'; } else { echo' Merci pour les informations et a vous de jouer'; } } ?>
excusez moi
non le formulaire est avec le code php que je vous est donner.
je vais vous donner le code au complet
non le formulaire est avec le code php que je vous est donner.
je vais vous donner le code au complet
<html <head> <link rel="stylesheet" href="style.css" /> <title>Page d'inscription</title></head> <body class="image"> <div align="center" style="Helvetica"><br/></br/></br/><br/> <h1 style= "text-align: center; color: #ffffff;">Inscrivez-vous et jouer</h1> <form name="inscription" method="POST" action="jeux2.php"> <input type=hidden name=subject value=contact> <span class=plus>nom: <td><input type="text" name="nom" > prenom: <input name="prenom" type="text" value=""> email: <input type="text" name="email" title="entrer une adresse valide" value="@" /></span> <input type=submit value=Envoyer > <input type="reset" value="Annuler" > <select name="choix"> <option value="Allemagne">Allemagne</option> <option value="Autriche"> Autriche </option> <option value="Belgique"> Belgique </option> <option value="Danemark"> Danemark </option> <option value="Espagne"> Espagne </option> <option value="France"> France </option> <option value="Pays-Bas"> Pays-Bas </option> <option value="Suisse"> Suisse </option> <option value="Suède"> Suède </option> </select> </form> <?php if (isset ($_POST['Envoyer'])) { if(isset($_POST['nom'])) $nom = $_POST['nom']; else $nom = ''; if(isset($_POST['prenom'])) $prenom = $_POST['prenom']; else $prenom = ''; if ($nom=='' && $prenom=='') { echo 'Veuillez remplir tout les champs'; } else { echo' Merci pour les informations et a vous de jouer'; } } ?>
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Je sais pourquoi et j'ai plusieurs solutions en tête, mais elles sont soit très moches (passer les variables post en cookies ou en session à un moment), soit complexes (javascript, ajax)
Arf :$
Arf :$
Bien OK,
merci beaucoup en tout cas, mais je vais faire sans alors je voulais également créé une base de donnée pour enregistrer les utilisateurs mais ça me prend un temps fou :()
Incroyable quand on ne connais pas les trucs et astuces pour aller plus rapidement.
Merci énormément pour votre compréhension et à bientôt.
merci beaucoup en tout cas, mais je vais faire sans alors je voulais également créé une base de donnée pour enregistrer les utilisateurs mais ça me prend un temps fou :()
Incroyable quand on ne connais pas les trucs et astuces pour aller plus rapidement.
Merci énormément pour votre compréhension et à bientôt.
Dans ton bouton de submit, tu rajoutes ceci :
Et pour tes champs nom et prenom, je rajoute un id (il peut être le même que le name, ça ne dérange pas) et un petit code javascript tout simple.
En gros, lorsque la valeur de l'input va changer, il va appeler la fonction javascript valid_form()
Et donc en javascript, tu mets ce code au début de ta page. Tu le mets au début de ton <body> :
En gros, il va vérifier que les éléments dans ta page qui ont les id nom et prenom ne sont pas vides. Si c'est bon, alors il va activer le bouton d'envoi du formulaire.
Et tu enlèves ton code php après le if (isset ($_POST['Envoyer']))
<input type=submit value=Envoyer disabled="disabled" id="envoyer" >Ce qui va griser ton bouton (ils ne pourront pas cliquer dessus) et on rajouter un id pour pouvoir le récupérer plus tard dans la page.
Et pour tes champs nom et prenom, je rajoute un id (il peut être le même que le name, ça ne dérange pas) et un petit code javascript tout simple.
<input type="text" name="nom" id="nom" onchange="valid_form()">
En gros, lorsque la valeur de l'input va changer, il va appeler la fonction javascript valid_form()
Et donc en javascript, tu mets ce code au début de ta page. Tu le mets au début de ton <body> :
<script language="Javascript"> function valid_form(){ if((document.getElementById('nom').innerHTML != '') && (document.getElementById('prenom') != '')){ document.getElementById('envoyer').disabled = false; } } </script>
En gros, il va vérifier que les éléments dans ta page qui ont les id nom et prenom ne sont pas vides. Si c'est bon, alors il va activer le bouton d'envoi du formulaire.
Et tu enlèves ton code php après le if (isset ($_POST['Envoyer']))
Merci encore, je l'ai tester
donc le bouton envoyer devient gris mais quand je rempli les champs il ne reprend pas ses fonctions pour passer a la page suivante ca dois être quelque chose de minime merci encore
donc le bouton envoyer devient gris mais quand je rempli les champs il ne reprend pas ses fonctions pour passer a la page suivante ca dois être quelque chose de minime merci encore
<html <head> <link rel="stylesheet" href="style.css" /> <title>Page d'inscription</title></head> <body class="image"> <script language="Javascript"> function valid_form(){ if((document.getElementById('nom').innerHTML != '') && (document.getElementById('prenom') != '')){ document.getElementById('envoyer').disabled = false; } } </script <div align="center" style="Helvetica"><br/></br/></br/><br/> <h1 style= "text-align: center; color: #ffffff;">Inscrivez-vous et jouer</h1> <form name="inscription" method="POST" action="jeux2.php"> <input type=hidden name=subject value=contact> <span class=plus>nom: <td><input type="text" name="nom" id="nom" onchange="valid_form()"> prenom: <input type="text" name="nom" id="prenom" onchange="valid_form()"> email: <input type="text" name="email" title="entrer une adresse valide" value="@" /></span> <input type=submit value=Envoyer disabled="disabled" id="envoyer" > <input type="reset" value="Annuler" > <select name="choix"> <option value="Allemagne">Allemagne</option> <option value="Autriche"> Autriche </option> <option value="Belgique"> Belgique </option> <option value="Danemark"> Danemark </option> <option value="Espagne"> Espagne </option> <option value="France"> France </option> <option value="Pays-Bas"> Pays-Bas </option> <option value="Suisse"> Suisse </option> <option value="Suède"> Suède </option> </select> </form> <?php if (isset ($_POST['Envoyer'])) { } ?> </body> </html>
Tu peux enlever le :
Mais attends, laisse-moi voir
<?php if (isset ($_POST['Envoyer'])) { } ?>
Mais attends, laisse-moi voir
Oui, pardon, j'ai fait quelques fautes dans ton javascript. Je te redonne la fonction :
Vu que les valeurs de prenom et nom sont dans des input, c'était .value qu'il fallait et non .innerHTML
J'ai testé le code.
function valid_form(){ if((document.getElementById('nom').value != '') && (document.getElementById('prenom').value != '')){ document.getElementById('envoyer').disabled = false; } }
Vu que les valeurs de prenom et nom sont dans des input, c'était .value qu'il fallait et non .innerHTML
J'ai testé le code.