PHP MYSQL probleme de suppression

Résolu
Bonjour,

Je voudrais supprimer un membre selon celui selectionné dans le combo, mais je ne suis pas assez bon.
Quelqu'un peut il me dire ou est l'erreur ?

voici mon code :


elseif($_GET['s'] =="sm")
{
if(!isset($_POST['pseudo']))
{
$query=$db->query('SELECT membre_pseudo FROM web6118_forum_membres');
echo'Suppresion d\'un membre<br /><br />';
echo'<form method="post" action="admin.php?cat=supp&s;s=sm">';
echo'<label>Nom :</label><select name="pseudo"><br /><br />';
while($data = $query->fetch())
{
echo'<option value="'.$data['membre_pseudo'].'">'.stripslashes(htmlspecialchars($data['membre_pseudo'])).'</option>';
}
echo'<input type="submit" value="Envoyer">
</form>';
$query->CloseCursor();
}
else
{

$query=$db->query('Delete FROM web6118_forum_membres WHERE web6118_forum_membres.membre_pseudo= :pseudo');
$query->execute()or die(print_r($query->errorInfo()));
$query->CloseCursor();
}
}


Cordialement

2 réponses

  1. En lisant rapidement ton code, je constate que tu fais appel à un delete qui prend un paramétre (:pseudo), mais au moment d'exécuter ta requête, tu ne donne pas de valeur à ton paramètre.
    0
    1. Problème résolu grâce a Comar91 :

      à la place de
      	
      echo'<form method="post" action="admin.php?cat=supp&s;s=sm">';
      

      je crois que ceci serait meilleur
      	
      echo '<form method="post" action="admin.php?cat=supp&s=sm">';
      

      et à la place de
      	
      $query=$db->query('Delete FROM web6118_forum_membres WHERE web6118_forum_membres.membre_pseudo= :pseudo');
      $query->execute()or die(print_r($query->errorInfo()));
      

      je mettrai plutôt ceci
      $query=$db->prepare('DELETE FROM web6118_forum_membres WHERE web6118_forum_membres.membre_pseudo= :pseudo');
      if ($query == false) {
        die('Que: '.print_r($db->errorInfo()));
      }
      $res = $query->execute(array(':pseudo' => $_POST['pseudo']));
      if ($res == false) {
        die('Res: '.print_r($db->errorInfo()));
      }
      
      0