PHP supprimer donné d'une table
Résolu
Utilisateur anonyme
-
avion-f16 Messages postés 19182 Date d'inscription Statut Contributeur Dernière intervention -
avion-f16 Messages postés 19182 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour,
J'ai un petit probléme :
Je voudrais que quand je clique sur supprimer la news se supprime mais sa ne marche pas, la page n'arrive même pas à s'afficher.
HELP !
J'ai un petit probléme :
<?php
mysql_connect("localhost", "******", "*******");
mysql_select_db("*****");
// On utilise la requête suivante pour récupérer les 10 derniers messages :
$reponse = mysql_query("SELECT * FROM news ORDER BY ID DESC LIMIT 0,10");
mysql_close();
// Puis on fait une boucle pour afficher tous les résultats :
while ($donnees = mysql_fetch_array($reponse) )
{
?>
<p><?php echo $donnees['id']; ?><strong><?php echo $donnees['titre']; ?></strong> <br /> <?php echo $donnees['contenu']; ?></p>
<a href="<?php mysql_query("DELETE FROM news WHERE id='$donnees['id']'"); ?>">Supprimer</a>
<?php
}
// Fin de la boucle, le script est terminé !
?>
Je voudrais que quand je clique sur supprimer la news se supprime mais sa ne marche pas, la page n'arrive même pas à s'afficher.
HELP !
Configuration: Windows XP Firefox 3.0.6
3 réponses
-
Bonjour.
<a href="<?php mysql_query("DELETE FROM news WHERE id='$donnees['id']'"); ?>">Supprimer</a>
Oulala ! Après génération de la page par le serveur, l'attribut HREF est vide car tu ne fais aucun echo donc voici ce que ça donne :
<a href="">Supprimer</a>
En attendant, le code PHP a été excécuter donc même sans avoir cliqué sur le lien, la donnée a été effacée !
----------------------------------------------
Voici comment tu pourrais faire :<a href="supprimer.php?id=<?php echo $donnees['id']; ?>">Supprimer</a>
Ce qui donnera :<a href="supprimer.php?id=1">Supprimer</a>
Et voici le contenu de supprimer.php :<?php if(preg_match("#^[0-9]+$#", $_GET['id'])) { mysql_connect('','',''); mysql_select_db(''); $sql = 'DELETE FROM table WHERE id='.$_GET['id']; $req = mysql_query($sql); mysql_close(); if($req == true) { echo 'Suppression réussie !'; } else { echo 'Erreur lors de la suppression !'; } } ?> -
-
De rien.
J'espère que tu as bien compris ta faute car c'est essentiel dans le PHP ce genre de chose.