Version complète: sur le forum Webmaster Hub : vérif case à cocher : bien cochée
Webmaster Hub > Création et exploitation de Sites Internet > Les langages du Net > PHP
Nils
re,
je voudrais tester qu'une case à cocher est bien cochée avant que le bouton (submit) "Valider" ne prenne effet et "dé-cacher" une couche de message d'avertissement, si la case n'est pas cochée, comment pourrais-je faire cela ?
Merci.
sarc
En tout cas, pas en PHP !
Tu peux faire quelque chose en javascript, mais ça ne marchera pas pour tout le monde, à commencer pour ceux qui n'auraient pas activé le javascript !
Le mieux, et le plus conseillé, est de mettre le javascript et de quand même tester la case, apres le submit, en php, et renvoyer le formulaire si c'est pas coché !
Nils
ok, merci Sarc,

Dis-moi, si après l'affichage de "erreur.php", je renvois mon formulaire, il sera vide des saisies faite préalablement par l'utilisateur(?), faut-il utiliser des vars de sessions pour concerver les datas pour le renvoi ?
Pourrais-tu m'aider un peu plus en ce qui concerne le code javascript dans le submit ? (un exemple peut-être ...)
Merci.
Commmint
Salut,
Non, il faut injecter par défaut la valeur des variables $_GET['toto'] ou $_POST['toto'] à l'attribut value des champs concernés. Tu conserve ainsi les valeurs pour l'utilisateur suite à un submit (utile si il doit compléter le formulaire)

CODE
<input name="toto" value="<?php echo $_POST['toto']; ?>">


Il peut s'avèrer utile d'appliquer un stripslashes() aux variables sinon tes apostrophes seront échappées...

CODE
stripslashes($_POST['toto']);


j'espère que ça répond à ta question wink.gif

enfin ça dépend si ton PHP de vérification est sur la même page que ton formulaire, si tu appelle uniquement un script de vérif externe lors du submit, tu ne conserveras qu'une fois tes variables je pense.
Nils
Merci Commmint ! Excellent !
Mes apostrophes seront échappées ? donc perdues ou mal interprétées ?
Et si je fais :
CODE
<input name="toto" value="<?php echo $_SESSION['toto']; ?>">

c'est bon aussi ? en faisant malgré tout un :
$_SESSION['toto'] = $_POST['toto'] dans la page appelée par le submit ?
merci.
Commmint
CITATION(Nils @ mercredi 09 février 2005, 14h39)
Merci Commmint ! Excellent !
Mes apostrophes seront échappées  ?  donc perdues ou mal interprétées ?
Et si je fais :
CODE
<input name="toto" value="<?php echo $_SESSION['toto']; ?>">

c'est bon aussi ? en faisant malgré tout un :
$_SESSION['toto'] = $_POST['toto'] dans la page appelée par le submit ?
merci.
*


euh perso je vois pas l'intéret de passer par des variables de session, sauf si ton formulaire utilise plusieurs pages, et que tu as besoin de conserver des infos intermédiaires. Pour les caractères échappés, ils apparaitront correctement dans leur champ respectif si tu utilises stripslashes(); sans conséquences sur ce qui sera enregistré dans la DB, c'est juste pour l'affichage. wink.gif
Nils
ok, merci,
mais je sais pas, j'ai essayé avec $_POST et je n'ai pas eu ce que je voulais, mais avec les $_SESSION, ça va.
Ceci est une version "bas débit" de notre forum. Pour voir la version complète avec plus d'information, la mise en page et les images, veuillez cliquer ici.