burinho Posté 30 Juin 2005 Posté 30 Juin 2005 Bonjour, j'aimerais savoir comment récupérer les info valider par un questionnaire utilisant des checbox afin de les valider sur mysql du style vote sexe : femme homme profession : salarier sans emploi
enroc Posté 30 Juin 2005 Posté 30 Juin 2005 (modifié) Salut, juste pour dire : pour le sexe, il ne te faut pas plutôt un radio : [] Femme [] Homme ? Edit : voici un code de test (en get pour que tu vois viens les variables à récupérer) <form action="" method="get">Vous êtes<br><input type="radio" name="sexe" value="femme"> une femme<br><input type="radio" name="sexe" value="homme"> un homme<br><input type="checkbox" name="sexeHomme"> un homme<br><input type="checkbox" name="sexeFemme"> une femme<br><input type="checkbox" name="nom" value="valeur"> checkbox avec value<br><input type="submit"></form> Modifié 30 Juin 2005 par enroc
burinho Posté 30 Juin 2005 Auteur Posté 30 Juin 2005 en effet, donc in va dire que j'ai du checkbox et un radio
MS-DOS_1991 Posté 30 Juin 2005 Posté 30 Juin 2005 (modifié) Salut burinho pour cette sorte de questionnaire, ne vaudrait-il pas mieux utiliser des radios ? tu ne peut pas etre a la fois femme et homme ni salarié et sans emploi dans ce cas, le code html serait: <form action="trait.php" method="post"><p><input type="radio" name="sexe" value="Femme" />Femme<input type="radio" name="sexe" value="Homme" />Homme</p><p><input type="radio" name="travail" value="Salarie" />Salarié<input type="radio" name="travail" value="Sans_Emploi" />Sans Emploi</p></form> et en php: <?php$sexe = $_POST['sexe'];echo $sexe;$travail = $_POST['travail'];echo $travail;?> edit: oups posté trop tard dslé pour le rabachage lol Sinon ba pour des checkboxes c pareil... je crois Modifié 30 Juin 2005 par MS-DOS_1991
burinho Posté 30 Juin 2005 Auteur Posté 30 Juin 2005 <?php $sexe = $_POST['sexe']; echo $sexe; $travail = $_POST['travail'] ?> je suis d'acccors pour les bouton radio et jusque là c'est bon, sauf pour le echo $sexe car je vois a quoi cela sert donc j'avais penser a if ($sexe)=="homme"{sql_valid ............} else ($sexe)=="femme"{sql_valid ............}
enroc Posté 30 Juin 2005 Posté 30 Juin 2005 Re, Pour le "echo", il s'agit juste de bien t'assurer du contenu de la variable ! Normalement tu n'en as pas besoin. Pour ce qui est des boutons radio, il doivent avoir le même nom, et alors c'est comme pour le reste : $_POST["sexe"], qui contiendra soit homme soit femme. Je t'invite tout de même à essayer le code html ci-dessus, qui te montre l'utilisation des radios et des checkbox.
burinho Posté 30 Juin 2005 Auteur Posté 30 Juin 2005 et pour les checkbox, il y a quelqu'un qui aurait une idée, je sais qu'il faut utiliser une boucle le truc que j'ai jamais tro p compris
enroc Posté 30 Juin 2005 Posté 30 Juin 2005 As-tu essayé le bout de html que je t'avais envoyé : [ ] oui [x] non Ou alors t'as pas bien compris, (ça arrive, faut pas désespérer ) Dernier essai : Si tu fais une checkbox comme ça : <input type="checkbox" name="toto" /> et si l'utilisateur a coché quelque chose tu auras $_POST["toto"] = "on"; si l'utilisateur n'a rien coché la variable $_POST["toto"] n'existera pas. Si tu fait une checkbox comme ça : <input type="checkbox" name="toto" value="tata"/> et si l'utilisateur a coché quelque chose tu auras $_POST["toto"] = "tata"; si l'utilisateur n'a rien coché la variable $_POST["toto"] n'existera pas. Je vois pas vraiment où est cette histoire de boucle ! Pour connaître toutes les variables en GET ou POST de ta page (celle qui traite le formulaire par exemple si tu veux debuggé / comprendre): <pre><?phpprint_r($_POST);print_r($_GET);print_r($_REQUEST); // GET et POST?></pre>
burinho Posté 30 Juin 2005 Auteur Posté 30 Juin 2005 en faite ton html est très proche du mien <tr> <td></td> <td> <input type="radio" name="sexe" value="homme"> Homme </td> </tr> <tr> <td></td> <td> <input type="radio" name="sexe" value="femme"> femme </td> </tr> [/code après dans mon fichier de validation j'ai homme=$_POST['homme']; femme=$_POST['femme']; pourquoi une boucle car j'ai un questionnaire de 20 question avec des chekboxs]
Sarc Posté 1 Juillet 2005 Posté 1 Juillet 2005 Bonjour, $homme=$_POST['homme'];$femme=$_POST['femme']; ton erreur se trouve là ! Ce qui serait envoyé, ce sera la valeur de $_POST['sexe']... Tu mets donc : $sexe = $_POST['sexe']; Dans ce cas là, $sexe aura comme valeur soit homme, soit femme suivant la case cochée... Tu pourras ensuite la tester avec if
enroc Posté 1 Juillet 2005 Posté 1 Juillet 2005 [/code Et aussi bien en HTML qu'en BBCode, ne pas oublier de BIEN refermer les balises pour une présentation sans problème Tout ça est histoire de relecture ...
burinho Posté 1 Juillet 2005 Auteur Posté 1 Juillet 2005 Bonjour, $homme=$_POST['homme'];$femme=$_POST['femme']; ton erreur se trouve là ! Ce qui serait envoyé, ce sera la valeur de $_POST['sexe']... Tu mets donc : $sexe = $_POST['sexe']; Dans ce cas là, $sexe aura comme valeur soit homme, soit femme suivant la case cochée... Tu pourras ensuite la tester avec if <{POST_SNAPBACK}> ok je teste avec mon if c'est a dire ?
Sarc Posté 1 Juillet 2005 Posté 1 Juillet 2005 Bah je sais pas ce que tu veux mettre dans ta bdd, si tu veux mettre "homme" ou "femme", ou plutôt "0" ou "1", enfin bref... Dès que tu as mis $sexe = $_POST['sexe']; tu peux te servir de $sexe soit pour insérer directement dans ta base de données, soit pour donner une valeur à une autre variable...
Sujets conseillés
Veuillez vous connecter pour commenter
Vous pourrez laisser un commentaire après vous êtes connecté.
Connectez-vous maintenant