supprimer une ligne mysql en php

Répondre
delfyno
le 28/05/2009 à 14:11
delfyno
Bonjour,
j'ai un script pour supprimer des articles dans ma base de données et quand je clique sur tout marche bien, la requete
s'affiche ainsi que le idArticle et le je vois apparaître
"la suppression a bien été éffectué et quand je vais dans ma base, l'article y est toujours alors depuis ds heures
je cherche a resoudre ce souci mais jy arrive pas, aidez svp.
Merçi d'avance
<?php
//page de suppression
include("connection.php");

//connection a la base
connectMaBase();

if (isset ($_GET['supprimer'])){

//récupération des valeurs des champs:
$idArticle = $_GET['supprimer'];
//$idArticle = $_GET['idArticle'];
//$noArticle = $_GET['noArticle'];

echo $idArticle; echo "<br>";

//création de la requête SQL:
$sql = "DELETE FROM article WHERE idArticle = ' ".$idArticle." ' " ;
echo $sql;

//exécution de la requête SQL:
$requete = mysql_query ($sql) or die ('Erreur SQL !'.$sql.'<br />'.mysql_error());
//$sql = "DELETE FROM article WHERE noArticle='3' ";


//affichage des résultats, pour savoir si la modification a marchée:
if ($requete) {
echo("La suppression à été correctement éffectuée") ;
} else {
echo("La suppression à échouée") ;
}

// on ferme la connexion
mysql_close();
}
?>
<br><br>
<a href="form.php">Ajouter un article</a>

<center>
<a href="liste.php">Liste des articles</a>
Darkendorf
le 28/05/2009 à 15:17
Darkendorf
Ta requête s'effectue correctement, elle s'exécute bien, et donc elle te retourne ok, mais elle ne te dit pas si elle a effectivement supprimé quelque chose !!

en fait, si ton id et de 1, tu cherches à supprimer, d'après ta requête, l'id ' 1 ' (note les espaces) !
il ne trouve pas cette id certainement ^^

Si ton id est numérique, supprime les apostrophes :

$sql = "DELETE FROM article WHERE idArticle = ".$idArticle ;


s'il est alpha-numérique enlève les espaces ainsi :

$sql = "DELETE FROM article WHERE idArticle = '".$idArticle."' " ;
delfyno
le 28/05/2009 à 15:28
delfyno
mon id est alpha-numérique donc j'execute la 2e requete, effectivement elle s'execute, l'id s'ffiche et la requete aussi, et ca me dit que la suppression à été éffectué et si je vais dans ma liste des article, l'article y est toujours.
il y'a un truc bizarre aussi, quand je copie une ligne, le champ est copié mais y'a juste la colonne auto increment qui est remplie et celle du prix qui est remplie mais le prix marqué est zero alors celle de la ligne copié n'est pas zéro et ce pb je n'arrive pas à le resoudre aussi et la le truc bizarre c'est lorsque je suprimme la copie de la ligne copié elle est bien supprimée dans ma base en fait supprimer marche pour les copies et pas pour les originaux........Au secours
Darkendorf
le 28/05/2009 à 16:53
Darkendorf
sans ton code, ton explication fouillis ne m'est pas très évidente ^^

en supprimant les deux espaces de droite et de gauche dans ta requête, ça ne résout pas ton problème ? c'est quoi précisément le type de ton champs ?
Répondre

Ecrire un message

Votre message vient d'être créé avec succès.
LoadingChargement en cours