Portail PHP

Forum de discussion et d'aide au php

Vous n'êtes pas identifié.

Annonce

Regles d'utilisation des forums : pensez à toujours les respecter si vous désirez obtenir des réponses rapides.
FAQ : pensez à toujours chercher dedans si la réponse à votre question est dedans.
Proposez vos news : si vous avez un evenement à annoncer
le chat : venez discuter de php.
 

#1 19-12-2004 09:06:12

Guest
Membre
Date d'inscription: 26-06-2004
Messages: 15
Site web

DELETE Sql

Bonjour a tous, Voila mon probleme j'aimerai effacer un enregistrement d'une table sql via un lien qui sera dans un espace administration. Voila mon code :

Code:

<?php

$db = mysql_connect('localhost', 'login', 'password'); 

// on sélectionne la base 
mysql_select_db('login',$db); 

// on crée la requête SQL 
$sql = 'DELETE FROM commande_tbl WHERE id='.$data['id'].''; 

// on envoie la requête 
$req = mysql_query($sql) or die('Erreur SQL !<br>'.$sql.'<br>'.mysql_error()); 

?>

en Gros j'aimerai que sa supprime l'enregistrement grave a l'ID.

Merci !

Hors ligne

 

#2 19-12-2004 09:26:04

kazhar
Ex-Webmaster
Lieu: Orléans
Date d'inscription: 25-06-2004
Messages: 3381
Site web

Re: DELETE Sql

et ton code ne fonctionne pas ??
a premiere vue, ta requete est juste. mais, sans savoir quelle erreur il te retourne, ca va etre dur de t'aider wink

Hors ligne

 

#3 19-12-2004 09:36:53

Guest
Membre
Date d'inscription: 26-06-2004
Messages: 15
Site web

Re: DELETE Sql

ha oui dsl ! Voila l'erreur

Erreur SQL !
DELETE FROM commande_tbl WHERE id=
You have an error in your SQL syntax near '' at line 1

Hors ligne

 

#4 19-12-2004 09:42:08

kazhar
Ex-Webmaster
Lieu: Orléans
Date d'inscription: 25-06-2004
Messages: 3381
Site web

Re: DELETE Sql

essaye ta requete comme cela :

Code:

$sql = "DELETE FROM `commande_tbl`
WHERE `id` = '$data['id']'
LIMIT 1";

Hors ligne

 

#5 19-12-2004 09:49:17

Guest
Membre
Date d'inscription: 26-06-2004
Messages: 15
Site web

Re: DELETE Sql

hmm encor l'erreur sur la ligne de la requete :

Code:

Parse error: parse error, expecting `T_STRING' or `T_VARIABLE' or `T_NUM_STRING' in /home/pluriweb/public_html/php/supp_commande.php on line 10

Hors ligne

 

#6 19-12-2004 09:56:51

kazhar
Ex-Webmaster
Lieu: Orléans
Date d'inscription: 25-06-2004
Messages: 3381
Site web

Re: DELETE Sql

quand tu a une erreur comme ca, donne la ligne  roll

je suppose donc que l'erreur vient de ta requete étant donné que tu n'a changé que ca

Code:

$sql = "DELETE FROM `commande_tbl`
WHERE `id` = '".$data['id']."'
LIMIT 1";

c'est bizarre que ca merde pcke normalement, les " acceptent les variables
mais, essaye comme ca quand meme

Hors ligne

 

#7 19-12-2004 10:02:33

Guest
Membre
Date d'inscription: 26-06-2004
Messages: 15
Site web

Re: DELETE Sql

maintenant il n'y a plus d'erreur mais sa ne supprime rien  :?

Hors ligne

 

#8 19-12-2004 10:05:07

kazhar
Ex-Webmaster
Lieu: Orléans
Date d'inscription: 25-06-2004
Messages: 3381
Site web

Re: DELETE Sql

bien, si il y a plus d'erreur, ca veut deja dire qu'on avance  wink
essaye d'afficher la variable $sql
si ta variable $data['id'] n'est pas définie, il est normal qu'il ne supprime
vérifie également qu'il y a bien une entrée ayant l'id $data['id'] dans ta base

Hors ligne

 

#9 19-12-2004 10:13:38

Guest
Membre
Date d'inscription: 26-06-2004
Messages: 15
Site web

Re: DELETE Sql

ben en faite dans l'espace membre il y a des demandes que des client fon et quand une demande et traité un admin clike sur Supprimé et voila.

g cru que si je mes .$data['id']. = a l'id de la demande du client

je pense que $data['id'] est mal defini ou un truc du genre

Hors ligne

 

#10 19-12-2004 10:17:41

kazhar
Ex-Webmaster
Lieu: Orléans
Date d'inscription: 25-06-2004
Messages: 3381
Site web

Re: DELETE Sql

le id est transmis via un formulaire ?
si aucune methode n'est définie, la variable sera : $_GET['id']
si la methode post est définie, la variable sera ; $_POST['id']
si la méthode get est définie, la variable sera : $_GET['id']


pour vérifier si la variable id est correctement définie, la meilleure solution est aussi de faire un echo $sql;  wink

Hors ligne