Bonjour,
j'ai un système qui permet de saisir des annonces (du texte et des images) ; tout ceci est stocké dans une table MySQL, ce qui permet de les afficher quand on veut ; mais je voudrais aussi donner la possibilité d'en effacer. Pour faire ça, j'ai fait un formulaire html qui liste toutes les annonces, avec des checkbox pour sélectionner celles qu'on veut effacer :
et voici l'action du formulaire :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 echo '<form method="post" action="../../telepamedia/action/effacer.php" enctype="application/x-www-form-urlencoded">'; $sql="select date,text,cat,id_annonce from annonce where pseudo='".$pseudo."' AND langue='fr'"; $result = mysql_query($sql) or die(mysql_error()); echo '<table>'; while ($ligne=mysql_fetch_array($result,MYSQL_NUM)) { echo '<tr><td><input type="checkbox" name="annonce[] value="'.$ligne[3].'""></td><td>'; echo $ligne[2].' '.$ligne[0].' '.$ligne[1]; echo '</td></tr>'; echo '<tr><td></td><td><hr></td></tr>'; } echo '</table>'; echo '<tr><td><input type="submit" value="Effacer annonce"></td><td></td></tr></form>';Le problème, c'est que je pensais que $ann vaudrait le numéro de l'id de l'annonce, mais qu'il vaut "on" quelque soit l'annonce sélectionnée : où me suis-je trompé ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 $annonce=$_POST['annonce']; if (isset($_POST['annonce'])) { foreach($annonce as $ann) { $sql="delete from `annonce` where id_annonce='".$ann."'"; echo 'sql='.$sql.'<br>'; $result = mysql_query($sql) or die(mysql_error()); } echo 'Les annonces ont été effacées<br>'; }
Partager