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

  FORUM HardWare.fr
  Programmation
  PHP

  Problème avec un update en php/mysql

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Problème avec un update en php/mysql

n°1434964
oualad
Posté le 01-09-2006 à 11:27:21  profilanswer
 

Bonjour,
j'ai crée une page admin pour un site client.
Le client, dans sa section admin, a la possibilité de modifier son agenda des concerts.
Une page lui affiche son agenda accompagné de l'ID du concert.
L'affichage est correct, mais lorsque je fait mes tests et que je modifie certaines données, il n'y a aucun changement. Je vous laisse mon code car moi j'y perds la tête, ça fait une heure que j'essaie mais en vain...
 
Merci
 

Code :
  1. $id=$_POST['val_id'];
  2. $avec=$_POST['avec'];
  3. $even=$_POST['evenement'];
  4. $lieu=$_POST['lieu'];
  5. $adresse=$_POST['adresse'];
  6. $date=$_POST['date'];
  7. $heure=$_POST['heure'];
  8. $info=$_POST['info'];
  9. if (($date!=="" ) and ($avec!="" ))
  10. {
  11. $connex=mysql_connect("tutu","tutu","tutu" ) or die("Connexion impossible" );
  12. mysql_select_db("musicada" ) or die("Connexion impossible à la BD" );
  13. $requete=mysql_query("update agenda set avec=\"$avec\",evenement=\"$even\",lieu=\"$lieu\",adresse=\"$adresse\",date=\"$date\",heure=\"$heure\",info=\"$info\" where id=\"$id\"" );
  14. if (!$requete)
  15.  {
  16.   echo "Erreur à la base Mysql ".mysql_error()." - Recommencez plus tard<br />";
  17.   echo "Merci<br />";
  18.   echo "<a href=\"index.php\">Retour</a>";
  19.  }
  20. else
  21.  {
  22.   echo "Félicitations! Le rajout a été fait<br />";
  23.   echo "<a href=\"index.php\">Index des concerts</a>";
  24.  }
  25. mysql_close();
  26. }
  27. else
  28. {
  29. echo "Non valide, les champs date et avec sont vides<br />";
  30. echo "<a href=\"javascript:history.go(-1)\">Retour</a><br />";
  31. }


---------------
Un forum étant un lieu d'échange, j'accepte les MP uniquement pour les rendez-vous coquins - Imac PPC G3 350Mhz Mac OS X 10.3.9
mood
Publicité
Posté le 01-09-2006 à 11:27:21  profilanswer
 

n°1434970
betsamee
Asterisk Zeperyl
Posté le 01-09-2006 à 11:33:54  profilanswer
 

ca change pas ton probleme mais je te conseille de prendre l'habitude de faire :
"set avec='".$avec."',evenement='".$even."'"
plutot que set avec=\"$avec\",evenement=\"$even\"

n°1434972
chani_t
From Dune
Posté le 01-09-2006 à 11:34:34  profilanswer
 

et les modifs sont effective dans ta base ?
ta requête, quand tu la copie et exécute en sql directement dans ta base, elle fonctionne ?
et tu sur qu'en mettant le mysql_error en aussi loin tu puisse récupérer l'erreur de requéte ?
j'aurais fais..
 
$rq="update agenda set avec='".$avec."',evenement='".$even."',lieu='".$lieu."',adresse='".$adresse."',date='".$date."',heure='".$heure."',info='".$info."' where id='".$id."'";
$requete=mysql_query($rq ) or die ('Requête non aboutie'.$rq.'erreur : '.mysql_error());

n°1434991
FMC
Posté le 01-09-2006 à 11:43:40  profilanswer
 

Si tu as une erreur, pourrais-tu nous la donner ?
De plus tu devrais aussi prendre l'habitude de "protéger" les noms de tes champs par des `, ça m'a déjà éviter des bugs !

n°1435002
oualad
Posté le 01-09-2006 à 11:49:29  profilanswer
 

Grâce à ton astuce, voici l'erreur transmise par mysql:

Code :
  1. Requête non aboutie erreur : Query was empty


chani_t, la midif ne se fait pas sur la table.
Quant à FMC, j'avais opté pour les ' au début et quand j'ai constaté que cela ne marchait pas, j'ai alors mis le \" croyant que mon erreur venait de là.
 
Je vais essayé directement par sql. ainsi que l'atuce de betsamée
Je vous tiens au courant.
 
Merci

Message cité 1 fois
Message édité par oualad le 01-09-2006 à 11:50:45

---------------
Un forum étant un lieu d'échange, j'accepte les MP uniquement pour les rendez-vous coquins - Imac PPC G3 350Mhz Mac OS X 10.3.9
n°1435018
chani_t
From Dune
Posté le 01-09-2006 à 11:56:42  profilanswer
 

la chaîne de requête est vide :ouch:.. tu as bien mis les mêmes variables ? (la variable que j'ai appelée $rq ?)
 
EDIT : Normalement tu devrais voir apparaitre ta requête dans l'erreur, or tu ne la vois pas donc tu dois avoir une erreur au niveau du chargement de la variable.


Message édité par chani_t le 01-09-2006 à 12:07:06
n°1435042
betsamee
Asterisk Zeperyl
Posté le 01-09-2006 à 12:14:16  profilanswer
 

il te manque l'id de connexion dans le mysql_query

n°1435047
Sh@rdar
Ex-PhPéteur
Posté le 01-09-2006 à 12:18:36  profilanswer
 

ça joue pas sur l'erreur l'id de connexion, il va prendre la dernière connexion ouverte :/


---------------
La musique c'est comme la bouffe, tu te souviens du restaurant dans lequel t'as bien mangé 20 ans plus tôt, mais pas du sandwich d'il y a 5 minutes :o - Plugin pour winamp ©Harkonnen : http://harko.free.fr/soft
n°1435050
betsamee
Asterisk Zeperyl
Posté le 01-09-2006 à 12:26:40  profilanswer
 

moi je trouve que ca pue quand meme pas mal du cul d'ecrire la requete dans le mysql_query
tu aurais tout interet a creer un string contenant la requete (quite a en faire un petit echo)

n°1435054
Ethylene
Posté le 01-09-2006 à 12:41:41  profilanswer
 

Citation :

moi je trouve que ca pue quand meme pas mal du cul d'ecrire la requete dans le mysql_query


 
Pourquoi est ce que ça "pue du cul" d'écrire sa requête dans un mysql_query ?

mood
Publicité
Posté le 01-09-2006 à 12:41:41  profilanswer
 

n°1435056
betsamee
Asterisk Zeperyl
Posté le 01-09-2006 à 12:45:18  profilanswer
 

Ethylene a écrit :

Citation :

moi je trouve que ca pue quand meme pas mal du cul d'ecrire la requete dans le mysql_query


 
Pourquoi est ce que ça "pue du cul" d'écrire sa requête dans un mysql_query ?


je trouve ca pas propre mais bon ca n'engage que moi

n°1435093
FMC
Posté le 01-09-2006 à 13:58:19  profilanswer
 

oualad a écrit :

Grâce à ton astuce, voici l'erreur transmise par mysql:

Code :
  1. Requête non aboutie erreur : Query was empty


chani_t, la midif ne se fait pas sur la table.
Quant à FMC, j'avais opté pour les ' au début et quand j'ai constaté que cela ne marchait pas, j'ai alors mis le \" croyant que mon erreur venait de là.
 
Je vais essayé directement par sql. ainsi que l'atuce de betsamée
Je vous tiens au courant.
 
Merci


 
Attention, je ne parle pas de Quote simple, je parle du caractère ` il permet de protéger tes champs.  
Ex: $q = "SELECT * FROM `matable` WHERE `user`='truc'";
 
Affiche-nous ta requête avec un print/echo, ça aidera certainement.

n°1435113
Dj YeLL
$question = $to_be || !$to_be;
Posté le 01-09-2006 à 14:16:53  profilanswer
 

Ethylene a écrit :

Citation :

moi je trouve que ca pue quand meme pas mal du cul d'ecrire la requete dans le mysql_query


 
Pourquoi est ce que ça "pue du cul" d'écrire sa requête dans un mysql_query ?


 
Bah parce que ça fait pas très propre :o
 
Tout est question de propreté :D
 
C'est quand même plus joli ça :
 

Code :
  1. $req = 'SELECT * FROM matable WHERE id = ' . $mon_id . ' AND pseudo = "' . $mon_pseudo . '" ORDER BY pseudo';


 
Que ça :
 

Code :
  1. mysql_query("SELECT * FROM matable WHERE id=$mon_id AND pseudo = \"$mon_pseudo\"' ORDER BY pseudo" );


 
Par exemple.
 
Mais comme le dit betsamee, ça n'engage que nous, chacun on truc :) Mais il faut savoir qu'il vaut mieux prendre les bonnes habitudes tout de suite.


---------------
Gamertag: CoteBlack YeLL
n°1435391
oualad
Posté le 01-09-2006 à 22:33:11  profilanswer
 

Bonsoir,
désolé du retard, je n'ai pas eu le temps de continuer. Je m'y remets.
J'ai une piste:
quand je mets $id='1' (ou autre id), le changement s'opère bien. La màj de la bd est ok.
 
Je vais revoir ma page d'affichage qui contient les infos de la table en focntion du id.
 
Au fait, l'utilisateur reçoit la page d'affichage de tous ses concerts avec id.
Quand il veut modifier un concert, il prends note de l'id et se rend sur la page modif_concert dans laquelle il tape l'id et l'affichage suit en dessous. Donc avec la date, lieu, etc. Le tout généré par un formulaire dans lequel les infos s'affichent dans des 'input type=text'.
De peur qu'il ne change l'id, je l'ai mis en type=hidden.
Est-ce là que vient mon problème?
Je fais mes tests et je vous tiens au courant.
 
 
Encore merci de vos aides. (j'espere avoir été explicite)
 
@+


---------------
Un forum étant un lieu d'échange, j'accepte les MP uniquement pour les rendez-vous coquins - Imac PPC G3 350Mhz Mac OS X 10.3.9
n°1435422
oualad
Posté le 01-09-2006 à 23:12:47  profilanswer
 

:bounce:  :bounce:  :bounce:  
Ca marche!
Le input type=hidden foutait la m...
je l'ai mis en type=text et tout est ok. La màj se fait.
 
Merci encore de vos aides.
 :hello:  :hello:  :hello:


Message édité par oualad le 01-09-2006 à 23:13:11

---------------
Un forum étant un lieu d'échange, j'accepte les MP uniquement pour les rendez-vous coquins - Imac PPC G3 350Mhz Mac OS X 10.3.9

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

  Problème avec un update en php/mysql

 

Sujets relatifs
problème avec une SELECT BOXProblème de date en vba-access 2000
Oracle : problème requête ! MERGE INTO [RESOL] 2 bugs Oracle de fouProbleme avec les sons et ACTIVEX
probleme ON UPDATE CASCADE MYSQL[PHP/MYSQL] Problème d'UPDATE . : RESOLU : .
[MySQL] petit probleme d'updateprobleme update mysql ...
[PHP/MySQL]Problème d'UPDATE avec une variable contenue dans l'urlProbleme avec la requete MySQL UPDATE
Plus de sujets relatifs à : Problème avec un update en php/mysql


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