Un petit Quiz avec un formulaire d' inscripti
Fermé
cast006
Messages postés
11
Date d'inscription
jeudi 8 mars 2012
Statut
Membre
Dernière intervention
9 mars 2012
-
8 mars 2012 à 10:41
AssassinTourist Messages postés 5709 Date d'inscription lundi 16 janvier 2012 Statut Contributeur Dernière intervention 29 février 2024 - 9 mars 2012 à 12:40
AssassinTourist Messages postés 5709 Date d'inscription lundi 16 janvier 2012 Statut Contributeur Dernière intervention 29 février 2024 - 9 mars 2012 à 12:40
A voir également:
- Un petit Quiz avec un formulaire d' inscripti
- Logo quiz - Télécharger - Jeux vidéo
- Quiz up - Télécharger - Jeux vidéo
- Petit colis distribution ✓ - Forum Consommation & Internet
- Formulaire de contact le bon coin introuvable ✓ - Forum Réseaux sociaux
- Comment retourner un colis - Forum Consommation & Internet
12 réponses
AssassinTourist
Messages postés
5709
Date d'inscription
lundi 16 janvier 2012
Statut
Contributeur
Dernière intervention
29 février 2024
1 310
8 mars 2012 à 11:44
8 mars 2012 à 11:44
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.
cast006
Messages postés
11
Date d'inscription
jeudi 8 mars 2012
Statut
Membre
Dernière intervention
9 mars 2012
8 mars 2012 à 12:47
8 mars 2012 à 12:47
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.'';
AssassinTourist
Messages postés
5709
Date d'inscription
lundi 16 janvier 2012
Statut
Contributeur
Dernière intervention
29 février 2024
1 310
Modifié par AssassinTourist le 8/03/2012 à 13:48
Modifié par AssassinTourist le 8/03/2012 à 13:48
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.
cast006
Messages postés
11
Date d'inscription
jeudi 8 mars 2012
Statut
Membre
Dernière intervention
9 mars 2012
8 mars 2012 à 18:40
8 mars 2012 à 18:40
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'; } } ?>
AssassinTourist
Messages postés
5709
Date d'inscription
lundi 16 janvier 2012
Statut
Contributeur
Dernière intervention
29 février 2024
1 310
8 mars 2012 à 18:48
8 mars 2012 à 18:48
Pour être sûr de comprendre...
Vous avez une page d'inscription avec nom et prenom
Une page avec ce test php pour savoir si nom et prenom sont remplis
Et une dernière page avec le quizz ?
Vous avez une page d'inscription avec nom et prenom
Une page avec ce test php pour savoir si nom et prenom sont remplis
Et une dernière page avec le quizz ?
cast006
Messages postés
11
Date d'inscription
jeudi 8 mars 2012
Statut
Membre
Dernière intervention
9 mars 2012
8 mars 2012 à 21:16
8 mars 2012 à 21:16
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
cast006
Messages postés
11
Date d'inscription
jeudi 8 mars 2012
Statut
Membre
Dernière intervention
9 mars 2012
8 mars 2012 à 21:18
8 mars 2012 à 21:18
et en plus de la page avec le Quizz j' ai une autre page avec le totale
AssassinTourist
Messages postés
5709
Date d'inscription
lundi 16 janvier 2012
Statut
Contributeur
Dernière intervention
29 février 2024
1 310
8 mars 2012 à 22:21
8 mars 2012 à 22:21
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 :$
cast006
Messages postés
11
Date d'inscription
jeudi 8 mars 2012
Statut
Membre
Dernière intervention
9 mars 2012
8 mars 2012 à 22:51
8 mars 2012 à 22:51
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.
AssassinTourist
Messages postés
5709
Date d'inscription
lundi 16 janvier 2012
Statut
Contributeur
Dernière intervention
29 février 2024
1 310
9 mars 2012 à 08:50
9 mars 2012 à 08:50
Eh bien pendant la nuit, j'ai eu une révélation pour feinter pour faire ce que tu veux faire (obliger le gugusse à mettre son nom et son prenom) Est-ce que ça te tente toujours ?
AssassinTourist
Messages postés
5709
Date d'inscription
lundi 16 janvier 2012
Statut
Contributeur
Dernière intervention
29 février 2024
1 310
9 mars 2012 à 09:56
9 mars 2012 à 09:56
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']))
cast006
Messages postés
11
Date d'inscription
jeudi 8 mars 2012
Statut
Membre
Dernière intervention
9 mars 2012
9 mars 2012 à 11:26
9 mars 2012 à 11:26
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>
AssassinTourist
Messages postés
5709
Date d'inscription
lundi 16 janvier 2012
Statut
Contributeur
Dernière intervention
29 février 2024
1 310
Modifié par AssassinTourist le 9/03/2012 à 11:35
Modifié par AssassinTourist le 9/03/2012 à 11:35
Tu peux enlever le :
Mais attends, laisse-moi voir
<?php if (isset ($_POST['Envoyer'])) { } ?>
Mais attends, laisse-moi voir
AssassinTourist
Messages postés
5709
Date d'inscription
lundi 16 janvier 2012
Statut
Contributeur
Dernière intervention
29 février 2024
1 310
9 mars 2012 à 11:40
9 mars 2012 à 11:40
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.
cast006
Messages postés
11
Date d'inscription
jeudi 8 mars 2012
Statut
Membre
Dernière intervention
9 mars 2012
9 mars 2012 à 11:47
9 mars 2012 à 11:47
Merci infiniment
!!!! CA MARCHE ; )
vraiment heureusement que t la je sais pas comment j' aurai fais
mais a bientôt
merci énormément si je peux faire quelque chose pour toi n' hésite pas a me contacter
!!!! CA MARCHE ; )
vraiment heureusement que t la je sais pas comment j' aurai fais
mais a bientôt
merci énormément si je peux faire quelque chose pour toi n' hésite pas a me contacter
cast006
Messages postés
11
Date d'inscription
jeudi 8 mars 2012
Statut
Membre
Dernière intervention
9 mars 2012
9 mars 2012 à 11:50
9 mars 2012 à 11:50
MERCIIIIII
AssassinTourist
Messages postés
5709
Date d'inscription
lundi 16 janvier 2012
Statut
Contributeur
Dernière intervention
29 février 2024
1 310
9 mars 2012 à 11:58
9 mars 2012 à 11:58
De rien, ça m'a fait plaisir de t'aider =)
Pense à mettre ton sujet en résolu !
Pense à mettre ton sujet en résolu !
cast006
Messages postés
11
Date d'inscription
jeudi 8 mars 2012
Statut
Membre
Dernière intervention
9 mars 2012
9 mars 2012 à 12:38
9 mars 2012 à 12:38
En" résolu" c.a.d ?
et comment ?stp
et comment ?stp
AssassinTourist
Messages postés
5709
Date d'inscription
lundi 16 janvier 2012
Statut
Contributeur
Dernière intervention
29 février 2024
1 310
9 mars 2012 à 12:40
9 mars 2012 à 12:40
En-dessous de ton titre de post, tu dois avoir le lien "Marquer ce sujet comme résolu" =)
cast006
Messages postés
11
Date d'inscription
jeudi 8 mars 2012
Statut
Membre
Dernière intervention
9 mars 2012
9 mars 2012 à 12:39
9 mars 2012 à 12:39
: ()