Auteur Sujet: Checkbox et insertion dans bdd  (Lu 1788 fois)

0 Membres et 1 Invité sur ce sujet

Hors ligne marie.f

  • Débutant
  • *
  • Messages: 59
Checkbox et insertion dans bdd
« le: 23 avril 2006 à 00:39:33 »
Voilà,
J'ai une liste de noms qui s'affiche et je voudrai récupérer l'ID_nageur qui a été coché pour l'insérer dans une bdd.
Voilà ce que j'ai déjà fais , mais l'insertion marche pas au niveau de l'ID_nom

Quelqu'un peu me dire où y a erreur ?

// On récupère toutes les valeurs passées dans le formulaire
                        $post_ID_stagiaire= $HTTP_POST_VARS['ID_stagiaire'];
   $post_ID_nageur= $HTTP_POST_VARS['ID_nageur'];
   $post_ID_agrement= $HTTP_POST_VARS['ID_agrement'];

// On crée la requete d'insertion
   $sql = "INSERT INTO candidat_stagiaire (ID_stagiaire, ID_nageur, ID_agrement)
   VALUES ('$post_ID_stagiaire', '$post_ID_nageur', '$post_ID_agrement')";


avec :

          <input type="checkbox" name="checkbox<?=$inc?>" value="<?=$ID_nageur ?>">

Hors ligne ecumastor

  • Débutant
  • *
  • Messages: 28
Re : Checkbox et insertion dans bdd
« Réponse #1 le: 23 avril 2006 à 14:53:43 »
Essaye de remplacer $HTTP_POST_VARS['ID_stagiaire'] par $POST['ID_stagiaire']...
Cf http://www.phpdebutant.org/article113.php


A part ça ton code m'a l'air honnête...

Ecumastor

Hors ligne ecumastor

  • Débutant
  • *
  • Messages: 28
Re : Checkbox et insertion dans bdd
« Réponse #2 le: 23 avril 2006 à 14:56:46 »
... euh ... également
<input type="checkbox" name="checkbox<?=$inc?>" value="<?=$ID_nageur ?>">
par
<input type="checkbox" name="checkbox<? echo $in c?>" value="<? echo $ID_nageur ?>">

(à moins que "=" équivale à "echo", auquel cas j'aurai appris un truc  -_-).
Ecumastor

Hors ligne Ice

  • VIP
  • *****
  • Messages: 2 403
    • ATFX
Re : Checkbox et insertion dans bdd
« Réponse #3 le: 24 avril 2006 à 08:24:08 »
<?=$inc ?> équivaut à <? echo $inc; ?>
et $_POST["...."] équivaut aussi à $HTTP_POST_VARS["...."]

Hors ligne Ice

  • VIP
  • *****
  • Messages: 2 403
    • ATFX
Re : Checkbox et insertion dans bdd
« Réponse #4 le: 24 avril 2006 à 08:26:26 »
          <input type="checkbox" name="checkbox<?=$inc?>" value="<?=$ID_nageur ?>">
il est où ton $_POST["checkboxX"] ? (où X est ton incrément)

Hors ligne marie.f

  • Débutant
  • *
  • Messages: 59
Re : Checkbox et insertion dans bdd
« Réponse #5 le: 24 avril 2006 à 21:58:48 »
Voilà, j'ai tout revue et tout repris et j'en arrive à ça :

                        // On récupère toutes les valeurs passées dans le formulaire
   $post_ID_stagiaire= $HTTP_POST_VARS['ID_stagiaire'];
   $post_ID_agrement= $HTTP_POST_VARS['ID_agrement'];

   for ($u = 0; $u < count($checkbox); $u++)
   
{
                 $post_ID_nageur= $checkbox[$u];
                        

// On crée la requete d'insertion
$sql = "INSERT INTO candidat_stagiaire (ID_stagiaire, ID_nageur, ID_agrement)
VALUES ('$post_ID_stagiaire', '$post_ID_nageur', '$post_ID_agrement')";
                        
                        }


avec toutjours :

          <input type="checkbox" name="checkbox[]" value="<?=$ID_nageur ?>">

Mais seulement le dernier checkbox coché est pris en compte :(


Hors ligne Ice

  • VIP
  • *****
  • Messages: 2 403
    • ATFX
Re : Checkbox et insertion dans bdd
« Réponse #6 le: 25 avril 2006 à 08:33:49 »
C'est évident que ca prend le dernier si tu fais ton mysql_query hors de la boucle for  :ph34r:
Sinon :

                       // On récupère toutes les valeurs passées dans le formulaire
   $post_ID_stagiaire= $HTTP_POST_VARS['ID_stagiaire'];
   $post_ID_agrement= $HTTP_POST_VARS['ID_agrement'];

$sql = "INSERT INTO candidat_stagiaire (ID_stagiaire, ID_nageur, ID_agrement) VALUES ";

for ($u = 0; $u < count($checkbox); $u++)
   
{
                 $post_ID_nageur= $checkbox[$u];

$sql .= " ('$post_ID_stagiaire', '$post_ID_nageur', '$post_ID_agrement') ";
if ($u< (count($checkbox))-1) $sql .= " , ";
                       
                        }

mysql_query($sql);
....

« Modifié: 25 avril 2006 à 08:39:58 par Ice »