[PHP] Récupérer et lancer une requête à partir d'une checkbox

Récupérer et lancer une requête à partir d'une checkbox [PHP] - PHP - Programmation

Marsh Posté le 12-10-2006 à 22:23:51    

Bon, je vais tacher d'expliquer simplement :
 
- j'ai une page où mon gars peut choisir des produits.
- il coche une checkbox des produits qu'il souhaite, puis valide sur un bouton (c'est un simple formulaire). Code de ma checkbox :
 

Citation :

echo '<td class="td"><input type="checkbox" name="mon_champ[]" value="';
echo ($ligne["id"]);
echo '"></TD>';


 
- lorsqu'il valide, ça lance une seconde page. Les données sont réceptionnées comme suit :
 

Citation :


//Récupération des valeurs des checkbox (soit id des produits choisis)
if(!empty($_POST["mon_champ"])) {
   for ($i = 0; $i < count($_POST["mon_champ"]); $i++)
   echo $_POST["mon_champ"][$i];
}


 
- ce qui me donne la liste des ID de chaque produits qu'il souhaite commander.
 
-> à partir de ces ID, je veux aller chercher dans ma base les caractéristiques des produits (désignation et prix unitaire, correspondant aux ID choisies). Comment faire ? J'ai tenté une requête dans la boucle FOR, j'ai tenté de recréer un bouton pour réactualiser avec les ID choisis mais impossible... Le problème, c'est que chaque valeur des checkbox est conservée dans $_POST["mon_champ"][$i] comme dans un tableau. Comment faire pour récupérer chaque ID séparemment ? Merci à tous...

Reply

Marsh Posté le 12-10-2006 à 22:23:51   

Reply

Marsh Posté le 12-10-2006 à 22:40:40    

J'ai rien compris :d Je vois pas ton souci :??:

Reply

Marsh Posté le 12-10-2006 à 23:28:34    

lol c'est pas facile à expliquer.
J'ai une page qui affiche tous mes produits en stock. Pour les commander, il faut cocher une checkbox qui renvoie l'ID du produit en validant sur un bouton.
http://michalatore.free.fr/fotos/pb-php/1.jpg
Le formulaire est récupéré sur une seconde page. Le problème : les ID sont contenues dans un tableau. Comment faire pour aller chercher dans ma base de données les autres infos du produit commandé à partir de l'id renvoyé par la checkbox.
J'arrive à afficher les 2 ID qui ont été sélectionner :
http://michalatore.free.fr/fotos/pb-php/3.jpg
de cette façon :

Citation :

if(!empty($_POST["mon_champ"])) {
   for ($i = 0; $i < count($_POST["mon_champ"]); $i++)
   echo $_POST["mon_champ"][$i];
}


Comment je peux récupérer chacune des ID en elle-même pour ensuite lancer une requête qui va aller chercher dans ma base les autres informations... (designation, prix...)
 
###########################################
 
* Checkbox page1 : <input type="checkbox" name="mon_champ[]" value="$id">
($id = variable dans une boucle while, qui donne l'id du produit dans le tableau global de sélection
* Table produit (base de données) : id - designation - prix_unitaire_ttc


Message édité par elliotdoe le 13-10-2006 à 00:32:57
Reply

Marsh Posté le 13-10-2006 à 00:46:19    

La solution ça serait peut-être simplement d'envoyer par le bouton submit les informations de la ligne où la checkbox a été cochée plutôt que d'aller les rechercher dans la base :??:


Message édité par elliotdoe le 13-10-2006 à 00:46:37
Reply

Marsh Posté le 13-10-2006 à 01:04:06    

Le problème a été traité sur ce site :
http://www.swsysteme.com/tutos/tutocase.php
 
Mais ce n'est pas à jour, il y a pas mal de fonctions qui ne fonctionnent plus et je ne suis pas assez avancé en php pour retraduire en langage récent... Avec une checkbox cochée qui contient juste l'ID, il va supprimer toutes les informations liées (moi je veux simplement faire un SELECT * dans ma base au lieu d'un DELETE).

Reply

Sujets relatifs:

Leave a Replay

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