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

  FORUM HardWare.fr
  Programmation
  PHP

  Traitement des données d'un formulaire (checkbox) en PHP

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Traitement des données d'un formulaire (checkbox) en PHP

n°1122896
karinou
Posté le 17-06-2005 à 11:01:01  profilanswer
 

Bonjour,  
J'ai un formulaire contenant une liste d'éléments remplis grâce à ma base de données. Mon soucis est que je n'arrive pas à récuperer les elements sélectionnés. En retour, je n'ai que le dernier élément coché et non la liste de tous les elements.
 
Voici mon code :
 
Le formulaire :

Code :
  1. <form action="?a=affectAdmin-r&amp;idModule='.$idM.'" method ="post">';
  2.  $query = "SELECT idUtil, loginUtil FROM utilisateur";
  3.  $result = mysql_query($query);
  4.  while ($row = mysql_fetch_row($result)){
  5.   $idU = $row[0];
  6.   $loginU = $row[1];
  7.   echo '<INPUT type="checkbox" name="choixAdmin[]" value="'.$idU.'">'.$loginU.'<br />';
  8.  }
  9.  echo '<input type="submit" name="valider" value="Affecter le(s) administrateur(s)">
  10.  </form>';


 
La récupération :  

Code :
  1. $idM = trim($_GET['idModule']);
  2. $admin = trim($_POST['choixAdmin']);
  3. for ($i=0;$i<sizeof($admin);$i++) {
  4.  if (isset($admin[$i])) {
  5.   echo("$admin[$i] - " );
  6.  }
  7. }


 
Voila, merci par avance :jap:

mood
Publicité
Posté le 17-06-2005 à 11:01:01  profilanswer
 

n°1122913
Berceker U​nited
PSN : berceker_united
Posté le 17-06-2005 à 11:09:06  profilanswer
 

Je voulais rajouter cette element dans le topic des astuces.
En faite voici en gros ce qu'il faut faire.
Exemple.

Code :
  1. //Voici un générateur de chekbox dont les données viennent d'une db. Il liste des utilisateurs.
  2. for($i=0;$i<count($arrUser);$i++){
  3.   echo '<input type="checkbox" name="check_'.$i.'" value="1"><br/>';
  4.   echo '<input type="hidden" name="iduser'.$i.'" value="'.$arrUser[$i]['iduser'].'"><br/>';
  5. }
  6. echo '<input type="hidden" name="nbelement" value="10">';
  7. //Apres le post voici comment récupérer les informations selectionné.
  8. for($i=0;$i<$_POST['nbelement'];$i++){
  9.   if($_POST['check_'.$i] == "1" ){
  10.     echo $_POST['iduser'.$i]; //Affiche les user selectionnée.
  11.   }
  12. }


 
Voici en gros comment faire pour récupérer des informations issu d'une liste de checkbox.


Message édité par Berceker United le 17-06-2005 à 12:17:45
n°1122930
karinou
Posté le 17-06-2005 à 11:17:34  profilanswer
 

Je suis désolée mais je ne comprend pas tres bien ton code.
Qu'est ce que la variable $arrUser?
 
J'ai ajouté ces bouts de code et j'ai une jolie erreur : Parse error: parse error, expecting `','' or `';'' in /var/www/html/Intranet/admin/utilisateurs.php on line 108, la ligne 108 correspond à la ligne 4 de ton code, voila!!
Désolée mais je ne suis pas tres douée, je comprend vite mais il faut m'expliquer longtemps ;)

n°1123009
Berceker U​nited
PSN : berceker_united
Posté le 17-06-2005 à 12:20:22  profilanswer
 

J'ai fais une erreur sur la variable j'ai oublié de mettre un dollars (je suis en train de faire de l'asp en ce moment c'est pour cela).
 
En faite je t'ais donné un exemple. Mais regarde la différence avec ton code tu verras que t'y retrouvera.
il suffit plus ou moin de  changer le nom des variable et de  placer le for par le while venant du  resultat de ta requete.

n°1123108
karinou
Posté le 17-06-2005 à 14:07:18  profilanswer
 

En fait, je suis vraiment désolée mais je ne m'en sors vraiemnt pas :s  
 
Voici mon code :  

Code :
  1. <form action="?a=affectAdmin-r&amp;idModule='.$idM.'" method ="post">';
  2.  $query = "SELECT idUtil, loginUtil FROM utilisateur";
  3.  $result = mysql_query($query);
  4.  while ($row = mysql_fetch_row($result)){
  5.   $idU = $row[0];
  6.   $loginU = $row[1];
  7.   //echo '<INPUT type="checkbox" name="choixAdmin[]" value="'.$idU.'">'.$loginU.'<br />';
  8.   for($i=0;$i<count($arrUser);$i++){
  9.    echo '<input type="checkbox" name="check_'.$i.'" value="1"><br/>';
  10.    echo '<input type="hidden" name="'.$idU.$i.'" value="'.arrUser[$i]['iduser'].'"><br />';
  11.   }
  12.   echo '<input type="hidden" name="nbelement" value="10">';
  13.  }
  14.  echo '<input type="submit" name="valider" value="Affecter le(s) administrateur(s)">
  15.  </form>';


 

Code :
  1. $idM = trim($_GET['idModule']);
  2.  for($i=0;$i<$_POST['nbelement'];$i++){
  3.     if($_POST['check_'.$i] == "1" ){
  4.       echo $_POST['idU'.$i]; //Affiche les user selectionnée.  
  5.     }
  6.  }


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  Traitement des données d'un formulaire (checkbox) en PHP

 

Sujets relatifs
Poster un formulaire et ouvrir une popupRetour chariot en PHP
[PHP] Formulaire : pourquoi GET et pas POST ?[Access - VBA] Source d'un sous formulaire
Javascript et PHPDOM XML et variables session PHP
[ACCESS] recupérer champ saisie entre 2 formulaireproblème variables globales WML/Php
Plus de sujets relatifs à : Traitement des données d'un formulaire (checkbox) en PHP


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