Les checkbox et la base de données... [RESOLU] -

Les checkbox et la base de données... [RESOLU] - - PHP - Programmation

Marsh Posté le 13-04-2005 à 18:52:07    

Dans un formulaire, j'ai des checkbox, j'arrive pas à enregistrer dans la base
Quel doit être les caractèristique de ma base ?
 
J'ai un champ qualif, en disant que c'est du text ?  
`qualif` text NOT NULL,
 
sinon voila mon formulaire de depart :
 

Code :
  1. <td>Comment qualifierez vous votre relation  ?</td>
  2. <td>
  3. <input type="checkbox" name="qualif[]" value="professionnel"> professionnelle</input><br />
  4. <input type="checkbox" name="qualif[]" value="amicale"> amicale</input><br />
  5. <input type="checkbox" name="qualif[]" value="poli"> polie</input><br />
  6. <input type="checkbox" name="qualif[]" value="chaleureuse"> chaleureuse</input><br />
  7. </td>


 
Je definis ma valeur de la sorte

Code :
  1. //je qualifie mon type de relation:
  2.   $qualif       = $_POST["qualif"] ;


 
Dans ma page modification :  

Code :
  1. <td>
  2. <input type="checkbox" name="qualif[]" value="professionnel"
  3. <?php if($result->qualif=='professionnelle') {echo 'checked="checked"';}?>> professionnel</input><br />
  4. <input type="checkbox" name="qualif[]" value="amicale"
  5. <?php if($result->qualif=='amicale') {echo 'checked="checked"';}?>> amicale</input><br />
  6. <input type="checkbox" name="qualif[]" value="poli"
  7. <?php if($result->qualif=='poli') {echo 'checked="checked"';}?>> polie</input><br />
  8. <input type="checkbox" name="qualif[]" value="chaleureuse"
  9. <?php if($result->cqualifqualifat=='chaleureuse') {echo 'checked="checked"';}?>> chaleureuse</input><br />     
  10.       </td>


 
 
 
 
je n'arrive pas à enregistrer dans la base les checkbox cochés, où est mon erreur SVP ?


Message édité par foxcssfox le 14-04-2005 à 13:30:38
Reply

Marsh Posté le 13-04-2005 à 18:52:07   

Reply

Marsh Posté le 14-04-2005 à 08:56:47    

et il est où l'enregistrement dans la base ??

Reply

Marsh Posté le 14-04-2005 à 11:57:52    

Voila, ma question est : comment enregistrer les infos de mes checkboxes dans ma table ?
Le name de mes checkboxe : c'est qualif
 
dans ma table j'ai crééé un champ après 'Pays' : `qualif` text NOT NULL, est ce que c'est juste ?
 

Code :
  1. //création de la requête SQL:
  2.   $sql = "INSERT  INTO personnes (cat, nom, prenom, adresse, cp, ville, pays, qualif, telephone, remarques)
  3.             VALUES ( '$cat','$nom', '$prenom', '$adresse', '$cp','$ville', '$pays', '$qualif','$tel', '$remarques') " ;
  4.  
  5.   //affichage de la requête SQL pour mieux comprendre ;) :
  6.   echo( "<center>".$sql."<br>" ) ;
  7.  
  8.   //exécution de la requête SQL:
  9.   $requete = mysql_query($sql, $cnx) or die( mysql_error() ) ;
  10.  
  11.   //affichage des résultats, pour savoir si l'insertion a marchée:
  12.   if($requete)
  13.     echo("<center>L'insertion a été correctement effectuée</center>" ) ;
  14.   else
  15.     echo("<center>L'insertion a échouée</center>" ) ;


Message édité par foxcssfox le 14-04-2005 à 12:00:57
Reply

Marsh Posté le 14-04-2005 à 12:07:45    

J'comprend pas tout. Tu veux enregistrer tous tes checkbox dans ton champs: 'qualif' <??>
Aie.
Mon avis rapide. Si tes checkbox sont pas genere en php, donne leur des noms differents pour commencer. Rajoute des champs dans ta table personne, et ca devrait aller un peu mieux. La t'essaie de recuperer un tableau simile en php pour l'enregistrer dans un champs... C'est pas beau :d

Reply

Marsh Posté le 14-04-2005 à 12:16:05    

OK merci, donc je renomme mes checkbox différemment (chacun auront un nom distinct,) et je cree autant de champs dans ma table que j'ai de chexbox ?
 
C'est ca ? Tu sais, je fais des recherches sur internet, et j'essaie d'appliquer ce que je vois...
j'avais lu que les checbox agissait comme un tableau ... suis débutant...
Je m'étais inspiré de cet exemple :
 

Code :
  1. <?php
  2. if (isset($ok))
  3. {
  4. foreach ($site as $choix)
  5.  {
  6. echo "Choix utilisateur : ",$choix,"<br>";
  7.  }
  8. }
  9. ?>
  10. <html>
  11. <body>
  12. <form action="<?$PHP_SELF;?>" method="post">
  13. Le site vous apprend des choses sur :
  14. <input type="checkbox" name="site[]" value="HTML"> HTML
  15. <input type="checkbox" name="site[]" value="PHP"> PHP
  16. <input type="checkbox" name="site[]" value="Javascript"> JS
  17. <input type="submit" value="valider" name="ok">
  18. </form>
  19. </body>
  20. </html>


 
mais c'est vrai que d'une part, il enregistre pas ses infos dans une base de données et, que ça dépendait si les checkbox étaient générés dynamiquement ou pas...
 
Je vais suivre tes conseils et essayé de leur données un name différent et de créer autant de champ que j'ai de checkboxes : c'est vrai que ca parait plus simple et surtout plus logique, merci...


Message édité par foxcssfox le 14-04-2005 à 12:43:17
Reply

Sujets relatifs:

Leave a Replay

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