Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1828 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  "DELETE FROM `guest` WHERE `id` ='$id' LIMIT 1"; ca ne marche pa :cry:

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

"DELETE FROM `guest` WHERE `id` ='$id' LIMIT 1"; ca ne marche pa :cry:

n°279513
MrBMX
Posté le 05-01-2003 à 10:46:53  profilanswer
 

Bonjour
Je suis en train de faire un livre d'or destiner au grand public ( comme ceux que l'on trouve sur comscript ou phpscript-fr )donc, il y a un panneau d'administration, pas tres perfectioner, la seul chose qu'on peut faire, c'est suprimer des post, mais justement, ca ne marche pas, voila un bout de mon code
admin.php

Citation :

<FORM ACTION="delet.php" METHOD="post">
                                                <p>
                                                   
                                                  Id du message a suprimer<INPUT SIZE="15" NAME="id" >
                                                   
                                                <p>
                                                  <INPUT TYPE="submit" VALUE="Suprimer" size = "15">
                                                </p>
                                              </FORM>


ca, c'est elementaire, mais, voila mon code de  
delet.php
<html>
<head>
<title>Document sans titre</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
 
<body>
 

Citation :

<?
include("config.inc.php3" );  
$sql = "DELETE FROM `guest` WHERE `id` ='$id' LIMIT 1";
$link=mysql_connect($cfg_host,$cfg_user,$cfg_pass) or die("Impossible de se conneceter, verifiez que vous avez bien configurez le fichier config.inc.php3" );
$res = mysql_db_query($cfg_base,$sql,$link) or die("Impossible de suprimmer le message, verifiez qu'il existe bien un message avec l'id que vous avez donner" ) ;  
mysql_close($link);  
print ("Le message a bien était suprimer..." )
?>  
 
<p><a href=<?=$cfg_page?>>Retour au livre d'or</a></p>
</body>
</html>


chaque message poster a un id mis automatiquement (le 1 er poster id 1 le 2 eme id 2 le 3 eme id3 ...ect)
j'ai poster 4 message au pif dans le livre d'or, ensuite, je vais dans admin.php, et je met 3 dans le form puis suprimer, et la, il ma suprimer tout les message, quesqui ne va pas?
merci bcp d'avance


Message édité par MrBMX le 05-01-2003 à 10:59:38
mood
Publicité
Posté le 05-01-2003 à 10:46:53  profilanswer
 

n°279521
MrBMX
Posté le 05-01-2003 à 11:06:17  profilanswer
 

:cry:  :cry:  :cry:  :cry:  
personne ne sais? vraiment??? :sweat:  :sweat:  
:'( :'( :'( :'( :'( :'( :'( :'( :'( :'(

n°279525
sielfried
Posté le 05-01-2003 à 11:24:27  profilanswer
 

T'as essayé de faire un echo de $id juste avant d'exécuter la requête ?  
 
S'il a pas la valeur que tu lui as donnée via ton form, c'est p-e que le fichier que t'inclus juste avant manipule une variable $id. Essaie d'appeler ta variable autrement, $idMsg par ex.


Message édité par sielfried le 05-01-2003 à 11:24:57

---------------
StarCraft Professional Gaming Database | [Ze Topic] Starcraft/BroodWar
n°279643
Floleb7
Fiché au grand banditisme
Posté le 05-01-2003 à 16:12:00  profilanswer
 

"DELETE FROM `guest` WHERE `id` ='$id'" suffit deja
 
et en + pkoi c'est un champ texte pour l'id ?  
l'id tu dois l'obtenir en selectionnant le message plutot qu'en tapant l'id sinon c'est pas pratique
 
tu affiches un bouton radio à coté de tes messages et comme ça en faisant submit t'auras l'id auto


---------------
« La boîte du logiciel disait que j'avais besoin de "Windows 95 ou mieux" - alors j'ai acheté un Mac. »
n°279649
mrbebert
Posté le 05-01-2003 à 16:22:55  profilanswer
 

Le "LIMIT", c'est pas que pour les select ? :heink:

n°279659
Floleb7
Fiché au grand banditisme
Posté le 05-01-2003 à 16:47:35  profilanswer
 

non non tu peux limiter le nbre de delete avec LIMIT rows
 
parce que par ex si tu veux suppr que 500 enregistrements d'une table en ayant 50 000 il vaut mieux pouvoir specifier la limite :D


---------------
« La boîte du logiciel disait que j'avais besoin de "Windows 95 ou mieux" - alors j'ai acheté un Mac. »
n°279660
mrbebert
Posté le 05-01-2003 à 16:51:13  profilanswer
 

floleb7 a écrit :

non non tu peux limiter le nbre de delete avec LIMIT rows
 
parce que par ex si tu veux suppr que 500 enregistrements d'une table en ayant 50 000 il vaut mieux pouvoir specifier la limite :D

J'aurais appris quelque chose aujourd'hui :jap:  
 
Et on peut même utiliser le ORDER BY :ouch:

n°279663
Floleb7
Fiché au grand banditisme
Posté le 05-01-2003 à 16:55:14  profilanswer
 

euh nan le order by tu peux pas logiquement  
 
http://dev.nexen.net/docs/mysql/an [...] ien=delete


---------------
« La boîte du logiciel disait que j'avais besoin de "Windows 95 ou mieux" - alors j'ai acheté un Mac. »
n°279664
mrbebert
Posté le 05-01-2003 à 16:57:35  profilanswer
 

J'ai trouvé ca sur mysql.com
( http://www.mysql.com/doc/en/DELETE.html )

Citation :

If an ORDER BY clause is used, the rows will be deleted in that order. This is really only useful in conjunction with LIMIT. For example:  
 
DELETE FROM somelog
WHERE user = 'jcole'
ORDER BY timestamp
LIMIT 1
This will delete the oldest entry (by timestamp) where the row matches the WHERE clause.

edit : zut, c'est depuis mysql 4.0 seulement :(


Message édité par mrbebert le 05-01-2003 à 16:58:35
n°279668
Floleb7
Fiché au grand banditisme
Posté le 05-01-2003 à 17:03:59  profilanswer
 

ça risque de faire mal aux serv ceux qui utiliseront le where + l'order by + la limit


---------------
« La boîte du logiciel disait que j'avais besoin de "Windows 95 ou mieux" - alors j'ai acheté un Mac. »
mood
Publicité
Posté le 05-01-2003 à 17:03:59  profilanswer
 

n°279670
mrbebert
Posté le 05-01-2003 à 17:08:57  profilanswer
 

floleb7 a écrit :

ça risque de faire mal aux serv ceux qui utiliseront le where + l'order by + la limit

Ce sera toujours mieux que ceux qui utiliseront le ORDER BY sans LIMIT :pt1cable:  :D

n°279690
RedPaladin
Attention j&#039;arrive !!
Posté le 05-01-2003 à 18:22:10  profilanswer
 

A quoi bon de mettre un LIMIT si l'id est unique ?  :pfff:

n°279697
beleg
黑社會
Posté le 05-01-2003 à 18:39:38  profilanswer
 

moi je le mets pr limiter le nombre deffacements meme si je verifie mon $id avant parce que les delete.php?id=16%20or%201=1 et autres, normalement je les controle mais je prefere assurer.

n°279706
Core 666
Posté le 05-01-2003 à 18:54:32  profilanswer
 

Sielfried a écrit :

T'as essayé de faire un echo de $id juste avant d'exécuter la requête ?


Voui, c'est la première des choses à faire :jap:
 
Et sinon, vérifier le coup classique, à savoir mettre $_POST['id'] à la place de $id si register_globals est à off.


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  "DELETE FROM `guest` WHERE `id` ='$id' LIMIT 1"; ca ne marche pa :cry:

 

Sujets relatifs
Mes rollover ne marche pas...?[C] xlib (edit: ca marche!)
pourquoi ma fonction d'1 ligne marche pasmysql: select * from matable where monchamp like '%\\%'
(lire dans un fichier ascii) pourquoi mon programme ne marche pas ?MySQL + REQUETE DELETE AVEC IMBRICATION !!!! HELP !!!!!!!
pourquoi ça marche pas ça?Connection en SYSDBA masterkey en localhost , ne marche pas ,help!!!!
numero des versions,comment ca marche? 
Plus de sujets relatifs à : "DELETE FROM `guest` WHERE `id` ='$id' LIMIT 1"; ca ne marche pa :cry:


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR