problème de checkbox

problème de checkbox - PHP - Programmation

Marsh Posté le 27-02-2007 à 15:09:39    

Bonjour,
j'ai un problème avec les checkbox et le php. je veux récupérer les numéros des checkboxes qui sont cochées pour pouvoir supprimer avec une requête sql les champs cochés.
 
voici mon code :  
 

Code :
  1. do {
  2.  echo'<tr><td >'.$tab['nb'].'</td><td > '.$tab['description'].'</td> 
  3.  <td >'.$tab['année'].'</td><td><input type="checkbox" name="choix[]" value="'.$tab['nb'].'"></td></tr>';}
  4.  while ($tab = mysql_fetch_assoc($therequest) ) ;


 
et le php :  

Code :
  1. if (isset($_POST['Sexpo']))
  2. {
  3. $choix=$_POST['choix'];
  4. foreach ($choix as $valeur){
  5. $nb=$_POST['nb'];
  6. $query="DELETE FROM expositions where nb='$nb'";
  7. $result= mysql_query($query);
  8. echo $query;
  9. }}


 
il y a bien autant de delete que de cases cochées quand j'affiche la requete (echo $query) mais il n'y a rien dans nb :
DELETE FROM expositions where nb=''
 
je ne sais pas comment résoudre le problème.  
Merci de m'aider svp !

Reply

Marsh Posté le 27-02-2007 à 15:09:39   

Reply

Marsh Posté le 27-02-2007 à 15:43:21    

Bien tenté, mais ... $nb n'a rien à voir avec les cases coché dans le navigateur et tu n'utilise pas le contenu des cases à coché (t'as bien utilisé l'instruction foreach mais tu ne te sers pas de $valeur)

Reply

Marsh Posté le 27-02-2007 à 15:53:18    

pour moi , $nb est la valeur de la case cochée. Cette valeur est déterminée grâce à la base de données. j'aimerais garder ces valeurs quand je coche une case pour pouvoir supprimer une ligne de la base de données. comment faire? Peux tu m'aider stp

Reply

Marsh Posté le 27-02-2007 à 16:03:53    

Si tu regardes ce que contient $valeur, tu véras que c'est sucésivement le contenu de chacune des cases à cochés qui ont été coché.

Reply

Marsh Posté le 27-02-2007 à 16:12:09    

Merci beaucoup pour ton aide ! Je suis tellement à fond dans le code depuis ce matin que je ne vois plus rien lol !  

Reply

Sujets relatifs:

Leave a Replay

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