[php] checkbox - Formulaire

checkbox - Formulaire [php] - PHP - Programmation

Marsh Posté le 11-05-2002 à 21:39:05    

comment récupérer la valeur d'un checkbox après la validation d'un formulaire
Il y a autant de checkbox que de ligne résultant de la requete
 
<?      
 $i=0;
WHILE($NbrSit!=$i)
   {
   $SIT_LIB = mysql_result($ReqSit,$i, "SIT_LIB" );  
   $SIT_ID = mysql_result($ReqSit,$i, "SIT_ID" );  
?>
        <input type="checkbox" name="<? echo"cbx".$SIT_ID; ?>" value="<? echo"$SIT_ID"; ?>">
        <? echo"$SIT_LIB"; ?>
        <br>
        <?
 $i++;
   }
?>
 
si qq'1 peut m'aider.. merci!


---------------
Sparf! - Http://sparf.free.fr - France
Reply

Marsh Posté le 11-05-2002 à 21:39:05   

Reply

Marsh Posté le 11-05-2002 à 21:44:12    

je viens de trouver à l'adresse suivante  
http://www.phpinfo.net/?p=trucs&ru [...] c=checkbox
Excusez moi!

 

[jfdsdjhfuetppo]--Message édité par BreizhynGd le 11-05-2002 à 21:44:39--[/jfdsdjhfuetppo]


---------------
Sparf! - Http://sparf.free.fr - France
Reply

Marsh Posté le 01-12-2008 à 16:52:10    

bonjour !
 
je up ce topic car le lien est mort....
je cherche des infos sur la gestion des checkbox, mais c'est pas evident....
 
 
voila, je veux un checkbox pour mettre des tags sur des photos :  
 
j'ai créé une table tag avec pour chaque tag un id et un nom
j'ai ma table photos avec notamment un id et un photo_tag pour chaque photo
j'ai fait mon formulaire dynamique avec une requete sur cette table
jusque là ca marche (c'est deja ca .... )
 
par contre je veux enregistrer la liste des tags checkés dans une variable de la table des photos : dans photo_tag
 
si j'ai bien compris le checkbox renvoie un tableau contenant la liste des box checkés
 
je voudrais enregistrer cet array en tant que photo_tag ... donc en passant par implode ou  serialize
 
 
mais ca ne marche pas.....  
je fais fausse route où c'est bien cette idée qu'il faut que je suive?
 
merci!


---------------
le blog de la trichromie avec notre cher et devoué ami gaud   rdu l'a dit : prenez une carte biblio :o
Reply

Marsh Posté le 02-12-2008 à 13:24:23    

bon, je repose ma question
 
mon probleme vient du fait que mon formulaire n'est pas de la forme :
checkbox :
name  = tag_id[]
value  = 'exemple'
 
mais:
name = tag_id[]
value = $tag_name
 
si je fais un test :
avec une table (tags) comportant un tag_id en auto increment et un tag_nom
 
 
 
formulaire :

Code :
  1. <form method="post" action="checkboxtest.php" enctype="multipart/form-data">
  2. <?php
  3. include('liensql.php');//////mon fichier de connexion//////
  4. $reponse = mysql_query('SELECT * FROM tags ')or die(mysql_error());
  5. while ($donnees = mysql_fetch_array($reponse))
  6. {
  7. $tag_nom = $donnees['tag_nom'];
  8. }
  9. ?>
  10. <table>
  11. <tr><td>
  12. <input type="checkbox" name= "number[]" value =$tag_nom><?php echo $tag_nom; ?></br></td></tr>
  13.     <?php
  14. }
  15. ?>
  16. </table>
  17. <input type="submit">
  18. </form>


et la cible :  

Code :
  1. <?php include('liensql.php');
  2. $reponse = mysql_query('SELECT * FROM tags ')or die(mysql_error());
  3. $donnees = mysql_fetch_array($reponse);
  4. $tag_nom = $donnees['tag_nom'];
  5. $number = $_POST['number'];
  6. $tag_text = implode(', ',$number);
  7. echo $tag_text;
  8. ?>


le formulaire marche bien
par contre l'echo m'affiche  

Citation :

$tag_nom, $tag_nom, $tag_nom
 


(dans cet exemple j'ai coché 3 cases)
 
voila, je ne comprend pas d'ou ca peut venir....un probleme de syntaxe dans le form pour le value ?
 
merci :)


---------------
le blog de la trichromie avec notre cher et devoué ami gaud   rdu l'a dit : prenez une carte biblio :o
Reply

Marsh Posté le 02-12-2008 à 13:45:29    

avec serialize , j'obtiens pas mieux :

Citation :

a:2:{i:0;s:8:"$tag_nom";i:1;s:8:"$tag_nom";}
 

Message cité 1 fois
Message édité par adamckiewicz le 02-12-2008 à 13:54:30

---------------
le blog de la trichromie avec notre cher et devoué ami gaud   rdu l'a dit : prenez une carte biblio :o
Reply

Marsh Posté le 02-12-2008 à 14:22:20    

fait un foreach et un var_dump() pour voir tes variables, analyse le résultat.


---------------
contribution open source http://www.phpclasses.org/browse/file/23687.html
Reply

Marsh Posté le 02-12-2008 à 14:29:53    

tu essayes d'utiliser une variable php dans un bout de code html, ça risque pas de marcher...


---------------
Can't buy what I want because it's free -
Reply

Marsh Posté le 02-12-2008 à 14:31:11    

adamckiewicz a écrit :

avec serialize , j'obtiens pas mieux :

Citation :

a:2:{i:0;s:8:"$tag_nom";i:1;s:8:"$tag_nom";}
 



 
un serialize de quoi?[:pingouino]
Tu essayes des fonctions au pif pour voir si ça marche par magie?[:el g]
 

xaviou10 a écrit :

fait un foreach et un var_dump() pour voir tes variables, analyse le résultat.


ça apportera pas grand chose, l'erreur est à la génération du formulaire.


---------------
Can't buy what I want because it's free -
Reply

Marsh Posté le 02-12-2008 à 14:37:45    

merci pour les reponses :)
un serialize du meme tableau de number que pour le implode :) .... c'est con?  [:nybbas]


Message édité par adamckiewicz le 02-12-2008 à 14:37:52

---------------
le blog de la trichromie avec notre cher et devoué ami gaud   rdu l'a dit : prenez une carte biblio :o
Reply

Marsh Posté le 02-12-2008 à 14:41:19    

pour le formuliare, je peux entourer la valeur de value par les balises php?


---------------
le blog de la trichromie avec notre cher et devoué ami gaud   rdu l'a dit : prenez une carte biblio :o
Reply

Marsh Posté le 02-12-2008 à 14:41:19   

Reply

Marsh Posté le 02-12-2008 à 14:47:55    

Code :
  1. <form method="post" action="checkboxtest.php" enctype="multipart/form-data">
  2. <table>
  3. <tr><td>
  4. <?php
  5. include('liensql.php');//////mon fichier de connexion//////
  6. $reponse = mysql_query('SELECT * FROM tags ')or die(mysql_error());
  7. while ($donnees = mysql_fetch_array($reponse))
  8. {
  9. echo '<input type="checkbox" name= "number[]" value ="'.$donnees['tag_nom'].'" />'.$donnees['tag_nom'].'</br>';
  10. }
  11. ?>
  12. </td></tr>
  13. </table>
  14. <input type="submit">
  15. </form>


Message édité par bricocoman le 02-12-2008 à 14:48:14
Reply

Marsh Posté le 02-12-2008 à 15:01:00    

ok ca marche :) :) :) :) :)
effectivement , je pige ma merdouille, merci pour le gros coup de pouce, je butait pas mal là dessus, pourtant c'est un piege que j'avais su eviter à un autre endroit .... eh ben j'ai du progres à faire :/
 
merci :)


---------------
le blog de la trichromie avec notre cher et devoué ami gaud   rdu l'a dit : prenez une carte biblio :o
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed