Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1745 connectés 

  FORUM HardWare.fr
  Programmation
  HTML/CSS

  [HTML/JS/PHP] accèder à une variable d'un formulaire

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[HTML/JS/PHP] accèder à une variable d'un formulaire

n°971066
axelazerty
Posté le 03-02-2005 à 21:26:15  profilanswer
 

J'ai un formulaire avec des <input>, dont un qui port le nom "xxx[]", car il s'agit d'un checkbox et plusieurs cases sont cochables.
Je les récupère donc sous la forme d'un tableau en PHP une fois le formulaire envoyé, mais j'aimerais vérifier avec un script Javascript qu'au moins une des cases est cochée, seulement, je n'arrive pas à accèder à la variable par xxxx[].value ou xxx.value en javascript, ni par getElementById().
 
Est ce que quelqu un aurait une idée ?

mood
Publicité
Posté le 03-02-2005 à 21:26:15  profilanswer
 

n°971072
Hermes le ​Messager
Breton Quiétiste
Posté le 03-02-2005 à 21:36:23  profilanswer
 

axelazerty a écrit :

J'ai un formulaire avec des <input>, dont un qui port le nom "xxx[]", car il s'agit d'un checkbox et plusieurs cases sont cochables.
Je les récupère donc sous la forme d'un tableau en PHP une fois le formulaire envoyé, mais j'aimerais vérifier avec un script Javascript qu'au moins une des cases est cochée, seulement, je n'arrive pas à accèder à la variable par xxxx[].value ou xxx.value en javascript, ni par getElementById().
 
Est ce que quelqu un aurait une idée ?


 
Montre ce que tu as fait en JS.  ;)  

n°971075
axelazerty
Posté le 03-02-2005 à 21:41:32  profilanswer
 

bah j'ai rien en fait
j ai essayé :  
 
"alert(qX3YtX1[].checked)"
"alert(qX3YtX1.checked)"
 
sans succès.Et pourtant, aucune erreur dans la console Javascript de mozilla.
 
bizarrement, quand j affiche document.forms[0].elements, je vois bien les 5 cases à cocher qui portent le nom "qX3YtX1[]" mais quand j essaie d' y accéder, impossible.

n°971080
Spir
Words are timeless
Posté le 03-02-2005 à 21:52:02  profilanswer
 

Va voir ici :
http://www.lemage.net/tutoriaux%20 [...] laires.htm
 

Code :
  1. <FORM NAME="form">
  2. <INPUT TYPE="CHECKBOX" NAME="check[1]" VALUE="1">Choix numéro 1<BR>
  3. <INPUT TYPE="CHECKBOX" NAME="check[2]" VALUE="2">Choix numéro 2<BR>
  4. <INPUT TYPE="CHECKBOX" NAME="check[3]" VALUE="3">Choix numéro 3<BR>
  5. <INPUT TYPE="CHECKBOX" NAME="check[4]" VALUE="4">Choix numéro 4<BR>
  6. <INPUT TYPE="button"NAME="but" VALUE="Corriger" onClick="reponse(this)">
  7. </FORM>


 
Le code Javascript correspondant :

Code :
  1. <script language="javascript">
  2. function reponse(form)
  3. {
  4.   var i = 1;
  5.   while(i=<4 && form.check[i]!=true)
  6.   {
  7.     i++;
  8.   }
  9.   if(i==4 && form.check[4]!=true)
  10.   {
  11.     alert('coche une case');
  12.     return false;
  13.   }
  14.   return true;
  15. }
  16. </SCRIPT>


Un truc dans le genre

n°971082
Spir
Words are timeless
Posté le 03-02-2005 à 21:53:19  profilanswer
 

Au fait c'est bien le javascript mais si le mec n'as pas Javascript c'est foutu. Donc met tout de meme des controles en PHP derriere...
 
EDIT :  
ici pour le controle de checkbox en php :
http://www.asp-php.net/tutorial/as [...] php?page=5
 


Message édité par Spir le 03-02-2005 à 21:56:19
n°971102
axelazerty
Posté le 03-02-2005 à 22:09:03  profilanswer
 

le contrôle php etait deja fait, a vrai dire je voulais me passer de javascript mais ce n est pas moi qui décide...
Merci pour les liens.

n°971111
axelazerty
Posté le 03-02-2005 à 22:19:51  profilanswer
 

rien ne fonctionne.
voici le onsubmit que j ai essayé
 

Code :
  1. onsubmit="var i = 0;var form_ok = false; var total = qX14YtX1[].length; var total2 = qX14YtX1.length; var total3 = getElementById('qX14YtX1').length; var total4 = getElementById('qX14YtX1[]').length; alert(total + ' ' + total2 + ' ' + total3 + ' ' + total4); return false;"


 
j Ai essayé successivement (et seul, sans les autres) les 4 instructions pour récupérer la longueur, mais aucune ne fonctionne!!

n°971221
cerel
Posté le 04-02-2005 à 02:47:47  profilanswer
 

Tu dis avoir essaye avec getElementById...
J'ai l'impression que tu as du rater quelque chose d'important.
Si tu donne un id a tes checkbox tu devrais y acceder sans probleme. Pour rappel c'est le parametre "name" qui est utilise pour le "nom" des elements a envoyer lors du submit de ton form. En revanche, l'id n'est pas utilise dans ce processus. Tu peux donc "renommer" tes checkboxes sans probleme, puis y acceder sans probleme via getElementById, pour information, un id est unique.
 
Voila ce que je te conseille :

Code :
  1. <script type="text/javascript">
  2. function response() {
  3.   var i = 0;
  4.   var nbcheck = 4;
  5.   for (x=1; x<nbcheck+1; x++) {
  6.     i += document.getELementById('check'+x).checked;
  7.   }
  8.   while
  9.   if (i == 0) {  // on aurait pu faire ca aussi : if ( !i )
  10.     alert("Vous devez cochez au moins une case" );
  11.   }
  12. }
  13. </script>
  14. <form name="form"> 
  15. <input type="checkbox" name="check[1]" id="check1" value="1">Choix numéro 1<br /> 
  16. <input type="checkbox" name="check[2]" id="check2" value="2">Choix numéro 2<br /> 
  17. <input type="checkbox" name="check[3]" id="check3" value="3">Choix numéro 3<br /> 
  18. <input type="checkbox" name="check[4]" id="check4" value="4">Choix numéro 4<br /> 
  19. <input type="button" name="but" value="Corriger" onclick="reponse(this)"> 
  20. </FORM>



Message édité par cerel le 04-02-2005 à 02:57:19
n°971337
Spir
Words are timeless
Posté le 04-02-2005 à 10:26:05  profilanswer
 

Cerel a écrit :


Code :
  1. for (x=1; x<nbcheck+1; x++) {
  2.     i += document.getELementById('check'+x).checked;
  3.   }
  4.   while



C'est une erreur de copie/colle ce for while???

n°971542
cerel
Posté le 04-02-2005 à 13:04:24  profilanswer
 

Oops, en effet il y a un while qui s'est glisse ...
En meme temps, a 2h45 du mat j'ai des excuses :D


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  HTML/CSS

  [HTML/JS/PHP] accèder à une variable d'un formulaire

 

Sujets relatifs
Au_ secours ! : formulaire -> select- > afficher résultatsPHP/MySQL: liste déroulante, affichage automatique
PHP & soucisFormulaire pour bon de commande ?
[HTML ?] régler un tableau en 100% sur la HAUTEUR[HTML/CSS/PHP] problème de jonglage entre les css !
[VB]Créer une variable, nommez selon un paramètre recu en entrée ?XSL et HTML ?
[PHP]Calculer le nombre de samedi se trouvant entre 2 dates 
Plus de sujets relatifs à : [HTML/JS/PHP] accèder à une variable d'un formulaire


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR