[ PHP / MySQL ] Traiter des checkbox...

Traiter des checkbox... [ PHP / MySQL ] - PHP - Programmation

Marsh Posté le 12-05-2002 à 21:05:14    

Salut à tous!
J'ai un script qui affiche un ensemble d'entrées d'une base avec en face de chacune d'elles une checkbox avec pour valeur celle de l'ID (unique) de cette entrée.
Je voudrais qu'en validant le formulaire, je traite ensuite toutes les checkbox sans savoir combien il y en a... et supprimer les entrées correspondant aux checkbox cochées...
Je sais pas du tout comment faire!!!
 
une boucle avec DELETE FROM table WHERE id = '$id'?
mais comment faire pour traiter chacune des chackbox???

Reply

Marsh Posté le 12-05-2002 à 21:05:14   

Reply

Marsh Posté le 12-05-2002 à 23:37:42    

:pt1cable:

Reply

Marsh Posté le 13-05-2002 à 07:33:43    

ben le plus simple c de donner le meme nom a toutes tes checkbox, avec des values differentes, en postant le formulaire tu obtiendras la liste des values des checkbox selectionnees, séparées par des virgules, t'as plus qu'a exploder ca dans un tableau

Reply

Marsh Posté le 13-05-2002 à 09:14:34    

tu crée directement un tableau avec tes checkbox en les nommant "nomduchamp[]"
 
ensuite tu traite le tableau pour générer une requête (plus efficace que des requête en boucle).
 
$nomduchamp = $HTTP_POST_VARS["nomduchamp"];
if (is_array($nomduchamp)) {
  $Query = "DELETE FROM nmdelatable WHERE ID=$nomduchamp[0]";
  for ($i = 1; $i<count($nomduchamp) ; $i++) {
    $Query .= " OR ID=$nomduchamp[$i]";
  }
  mysql_query($Query);
}

 

[jfdsdjhfuetppo]--Message édité par Sh@rdar le 13-05-2002 à 09:15:19--[/jfdsdjhfuetppo]


---------------
La musique c'est comme la bouffe, tu te souviens du restaurant dans lequel t'as bien mangé 20 ans plus tôt, mais pas du sandwich d'il y a 5 minutes :o - Plugin pour winamp ©Harkonnen : http://harko.free.fr/soft
Reply

Marsh Posté le 13-05-2002 à 21:46:29    

ok... je n'ai pas encore réussi...
mais je voudrais savoir une chose...  
je donne le même nom à chacune des checkbox, à savoir "id"... je leur attribue à chacune une valeur différente, par exemple 1, 2 et 3
Je post tout ça et en sortie, pour tester, je fais
echo $id;
et j'obtiens toujours la valeur de la dernière checkbox. Elle ne seraient donc pas séparées par des virgules?
Je me trompe quelque part...
Merci à tous

Reply

Marsh Posté le 13-05-2002 à 23:14:56    

nan, tu doit appeler tes checkbox "id[]" pour créer un tableau contenant les valeurs multiples
 
ensuite tu lis le tableau comme j'ai écris plus haut.
 
si tu laisse "id" comme nom la valeur est écrasé à chaque nouvelle ligne.

 

[jfdsdjhfuetppo]--Message édité par Sh@rdar le 13-05-2002 à 23:16:49--[/jfdsdjhfuetppo]


---------------
La musique c'est comme la bouffe, tu te souviens du restaurant dans lequel t'as bien mangé 20 ans plus tôt, mais pas du sandwich d'il y a 5 minutes :o - Plugin pour winamp ©Harkonnen : http://harko.free.fr/soft
Reply

Marsh Posté le 14-05-2002 à 19:18:40    

quand tu dis que je "doit appeler tes checkbox "id[]" ", entre les crochet je met la valeur des id?

Reply

Marsh Posté le 14-05-2002 à 20:49:33    

non, toutes les checkbox s'apelleront "id[]" sans rien d'autre, comme je l'ai déjà écrit
 
les [] servent à créer un tableau associatif.
 
jsuis fatigué :sleep:


---------------
La musique c'est comme la bouffe, tu te souviens du restaurant dans lequel t'as bien mangé 20 ans plus tôt, mais pas du sandwich d'il y a 5 minutes :o - Plugin pour winamp ©Harkonnen : http://harko.free.fr/soft
Reply

Sujets relatifs:

Leave a Replay

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