Problème avec DELETE

Also know as Messages postés 259 Date d'inscription samedi 13 décembre 2003 Statut Membre Dernière intervention 22 novembre 2010 - 17 avril 2005 à 16:39
MeuSli Messages postés 29 Date d'inscription mercredi 23 mars 2005 Statut Membre Dernière intervention 11 mai 2005 - 20 avril 2005 à 16:44
Bonjour,



Voilà j'ai crée un site avec la fonction DELETE pour supprimmer bien evidemment quelque chose dans une table.



Tout marche, enfin presque, j'ai quand même un problème pour
véritablement supprimmé définitivement ce que je veux dans le tableau.



Je m'explique, pour supprimmer ce que je souhaite j'utilise trois page.

La première pour donner la référence à supprimmer.

La secondes pour montrer une dernière fois la référence

et enfin la troisième qui fait toute la partie suppression.



Le problème c'est que en regardant dans la table même, il mesupprimme en effet la partie demandée mais pas la ligne même.



Par un exemple :



Page 1 : Je tape la référence 123456789

Page 2 :

Suppression de la référence N°123456789





Le title :, title,
----
Le titre :, titre,
----
Le sujet :, sujet,
----
La page :, page

Bouton marqué : "Supprimmer définitivement"



Page 3 : Tout le code permettant de supprimmer ma référence.



Une fois fait je vais voir dans ma base MySQL :



Avant la suppression :





|

id |

title |

titre |

page |

sujet |

Ref |

<!-- Results table body -->

----

,

,

,

1,
title,
Titre,
page,
sujet,
123456789



Aprés la suppression :





|

id |

title |

titre |

page |

sujet |

Ref |

<!-- Results table body -->

----

,

,

,

1,
,
,
,
,
123456789



Voilà et cela je ne le comprend pas pourquoi il reste cela, je cherche justement à tout supprimmer.



Voici la source de ma page 3 :



<?php

session_start();

if (!isset($_SESSION['login'])) {

header ('Location: log.php');

exit();

}

?><?php

// Verifie si on peut se connecter a la base sql

$connect=mysql_connect('compte_sql','mon_compte','mon_mdp') or die ("Impossible de se connecter");

mysql_select_db('ma_base', $connect) or die ("Impossible de selectionner la base de donnees");



//Recupere l'id

$result=mysql_query ("SELECT * FROM ma_base WHERE Ref='$Ref'") or die ("Requete impossible");

$row = mysql_fetch_array($result);

$myid = $row["id"];

$query ="DELETE FROM appz WHERE id='$myid' LIMIT 1";

mysql_free_result($result);

mysql_query($query, $connect);

mysql_close($connect);

header ('Location: index.php');

?>



Voici le code source de la page 3.

Pourriez-vous à présent me dire ce qui cloche dans ma page, s'il vous plait

Merci d'avance

7 réponses

p3x Messages postés 214 Date d'inscription vendredi 30 juillet 2004 Statut Membre Dernière intervention 9 janvier 2019
17 avril 2005 à 20:23
lol c'est insencé
0
Also know as Messages postés 259 Date d'inscription samedi 13 décembre 2003 Statut Membre Dernière intervention 22 novembre 2010 2
17 avril 2005 à 20:24
Quelle réponse !



Mais à part ca, qu'est-ce que tu veux dire part ce qui est incensé ?



Ce que j'ai dit ou bien ce qui se passe ?
0
Also know as Messages postés 259 Date d'inscription samedi 13 décembre 2003 Statut Membre Dernière intervention 22 novembre 2010 2
17 avril 2005 à 20:46
J'ai oublié de préciser, je me suis trompé dans ce que j'ai écrit :



$query ="DELETE FROM appz WHERE id='$myid' LIMIT 1"; est à remplacer par :
$query ="DELETE FROM ma_base WHERE id='$myid' LIMIT 1";
0
cs_HyWaN Messages postés 34 Date d'inscription lundi 31 mai 2004 Statut Membre Dernière intervention 11 mai 2006
18 avril 2005 à 10:15
bonjour :)

tu px déjà commencer par aller voir la doc SQL

http://dev.mysql.com/doc/mysql/fr/delete.html

bon apres ton code m'a l'air correct dans l'ensemble mais c'est
vraiment bizare ton system :s pk ne pas tout virer du premier coup :s
puis que c'est le but quand meme :p

tu px faire un boutton 'supprimer tout' en submit et tu passes ton id de ref en hidden... je pense qu'il y a moyen :)

pis pour ce qui est incencé, c'est d'utiliser 3 pages pour une action :s

bon courage et donne nous des nouvelles
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
malalam Messages postés 10839 Date d'inscription lundi 24 février 2003 Statut Membre Dernière intervention 2 mars 2010 25
18 avril 2005 à 10:42
Hello,



pourquoi un LIMIT dans ta clause de suppression ?
0
cs_HyWaN Messages postés 34 Date d'inscription lundi 31 mai 2004 Statut Membre Dernière intervention 11 mai 2006
19 avril 2005 à 10:59
parce que dans pma (phpmyadmin) il met toujours LIMIT 1 quand tu veux
select 1 element ou autre ... c'est pas forcément obligatoire quand
c'est pour une ligne parceque si tu fais correctement ta sélection (par
ex) avec WHERE ou LIKE ou autre, tu ne devrais pas forcément avec
beaucoup de probleme :) mais bref ca ne change rien au code, il est
plus précis et pas tellement plus long a l'execution



bonne journée à tous :o)
0
MeuSli Messages postés 29 Date d'inscription mercredi 23 mars 2005 Statut Membre Dernière intervention 11 mai 2005
20 avril 2005 à 16:44
//Recupere l'id
$result=mysql_query ("SELECT * FROM ma_base WHERE Ref='$Ref'") or die ("Requete impossible");
$row = mysql_fetch_array($result);
$myid = $row["id"];
$query ="DELETE FROM appz WHERE id='$myid' LIMIT 1";
mysql_free_result($result);
mysql_query($query, $connect);
mysql_close($connect);
header ('Location: index.php');
?>

essaye de remplacer le code ci-dessus par celui la:

//Recupere l'id
$result=mysql_query ("SELECT * FROM ma_base WHERE Ref='$Ref'") or die ("Requete impossible");
$row = mysql_fetch_array($result);
$myid = $row["id"];
$query ="DELETE FROM appz WHERE id='$myid' LIMIT 1";
mysql_query($query, $connect);
mysql_free_result($result);
mysql_close($connect);
header ('Location: index.php');
?>

Mais cette erreur est vraiment bizare...
0
Rejoignez-nous