IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

PHP & Base de données Discussion :

Requête Update probleme


Sujet :

PHP & Base de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Février 2009
    Messages
    28
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Février 2009
    Messages : 28
    Par défaut Requête Update probleme
    J'ai un site qui gère des membres. Il est possible de modifier le profil du membre avec une page php, lorsque je fais par exemple la requête suivante:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    $comments = form($_POST['comments']);
    mysql_query("UPDATE users 
      SET comments='$comments' 
      WHERE username='$username'") or die (mysql_error());
    La variable $comments est bien affecté et contient vraiment le commentaire mais la base de donnée ne se met pas à jour, pourquoi? Je peux faire des INSERT, DELETE, etc, mais pas d'updates. Donc, ce n'est pas un problème de connection ou quoi que ce soit (et en passant, mon $username est dans ma session et est défini plus haut et fonctionne bien)

    Antoun :

  2. #2
    Rédacteur/Modérateur

    Avatar de Antoun
    Homme Profil pro
    Architecte décisionnel
    Inscrit en
    Octobre 2006
    Messages
    6 291
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Architecte décisionnel
    Secteur : Conseil

    Informations forums :
    Inscription : Octobre 2006
    Messages : 6 291
    Par défaut
    Je te propose de modifier ton code ainsi :

    Code PHP : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    $comments = form($_POST['comments']);
    $sql = "UPDATE users 
      SET comments='$comments' 
      WHERE username='$username'" ;
    echo $sql ;
    mysql_query($sql) OR die (mysql_error());

    Ensuite, tu récupères ce qu'il y a dans $sql et tu le testes directement sur ta base de données.

    Si par hasard le problème venait d'une apostrophe dans ton commentaire, il suffit de modifier la première ligne :
    Code PHP : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    $comments = str_replace("'", "''", form($_POST['comments']));

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Février 2009
    Messages
    28
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Février 2009
    Messages : 28
    Par défaut
    ça ne marche toujours pas :S j'ai pourtant fait ce que tu m'a dit. La table ne s'update pas.....je ne sais vraiment plus quoi faire...

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Février 2009
    Messages
    28
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Février 2009
    Messages : 28
    Par défaut
    en passant, si je fais:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $sql = "UPDATE `bd`.`users` SET `comments` = 'salut3' WHERE `users`.`username` = '0ColdZero0';" ;
    il le modifie sans problème, mais lorsque j'écrit:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $sql = "UPDATE `bd`.`users` SET `comments` = 'salut3' WHERE `users`.`username` = '$username';" ;   ($username au lieu de 0ColdZero0)
    Cela n'a aucun effet, bizarre?, pourtant si je fais un echo de mon $username, c'est bien le bon qu'il m'envoit

  5. #5
    Rédacteur/Modérateur

    Avatar de Antoun
    Homme Profil pro
    Architecte décisionnel
    Inscrit en
    Octobre 2006
    Messages
    6 291
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Architecte décisionnel
    Secteur : Conseil

    Informations forums :
    Inscription : Octobre 2006
    Messages : 6 291
    Par défaut
    Fais un echo de ton $sql, et poste-le ici.

  6. #6
    Membre averti
    Profil pro
    Inscrit en
    Février 2009
    Messages
    28
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Février 2009
    Messages : 28
    Par défaut




    J'ai fait un echo de mon user_id (en bas du text area), il affiche bien mon id qui est le numéro 1. Par la suite, le UPDATE users blablabla est ma commande SQL, c'est normal que comments = rien parce qu'aucun comments n'a été posté encore. Mais lorsque j'en poste un, il ne se passe rien. En fait pour etre vraiment clair, lorsque je fais EXACTEMENT ce code, rien ne se passe:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    mysql_query("UPDATE users SET comments = '$comments' WHERE user_id = '$user_id'") OR die (mysql_error());
    mais quand je fais ce code:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    mysql_query("UPDATE users SET comments = '$comments' WHERE user_id = 1") OR die (mysql_error());
    Il fonctionne à merveille, mais pourtant quand je fais un echo de ma variable user_id, il affiche bien le bon...

Discussions similaires

  1. Requête update à partir d'une autre table
    Par amiral thrawn dans le forum Langage SQL
    Réponses: 5
    Dernier message: 15/02/2024, 11h40
  2. probleme dans la requête update c#
    Par x2005man dans le forum C#
    Réponses: 11
    Dernier message: 19/03/2015, 14h26
  3. [VB.NET] [ODBC] Pb requête UPDATE avec clé primaire..?
    Par Pleymo dans le forum Windows Forms
    Réponses: 7
    Dernier message: 09/03/2005, 18h46
  4. requête update qui marche pas
    Par MrsFrizz dans le forum Langage SQL
    Réponses: 4
    Dernier message: 01/12/2004, 08h16
  5. PB Requête update
    Par cassi2 dans le forum Langage SQL
    Réponses: 9
    Dernier message: 25/10/2004, 14h15

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo