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 :

Probleme avec requete UPDATE [MySQL]


Sujet :

PHP & Base de données

  1. #1
    Membre du Club
    Inscrit en
    Décembre 2005
    Messages
    118
    Détails du profil
    Informations forums :
    Inscription : Décembre 2005
    Messages : 118
    Points : 58
    Points
    58
    Par défaut Probleme avec requete UPDATE
    Bonjour a tous,
    Comment allez vous?

    Hier soir, j ai passe deux heures a trouver mon erreur... En vain je ne l ai pas trouvee.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    $request="UPDATE Film Set Nom='$Nom' WHERE id='$idFilm'"
    Il n y a pas d erreur a l interpretation mais je ne vois pas les modifications dans la base de donnees. De plus, je suis certain que les variables $Nom et $idFilm contienne les bonnes valeurs car je les affiches juste apres!

    Avez-vous une idee de la raison phenomene qui me parait surnaturel.
    Je me suis inspire d un bouquin. Je ne comprends pas. A l aide!

  2. #2
    En attente de confirmation mail
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    208
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 208
    Points : 218
    Points
    218
    Par défaut
    Bonjour,

    La base ne dois pas être en mode "autocommit"... ce qui veut dire que ren n'est définitif tant qu'on a pas fait un Enfin je pense... 8)

  3. #3
    Membre du Club
    Inscrit en
    Septembre 2005
    Messages
    48
    Détails du profil
    Informations forums :
    Inscription : Septembre 2005
    Messages : 48
    Points : 47
    Points
    47
    Par défaut
    $ret = mssql_query($request);

    ou bien

    $ret = mysql_query($result);


    L'as tu bien spécifié ???

  4. #4
    Expert éminent Avatar de Mr N.
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    5 418
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 5 418
    Points : 6 449
    Points
    6 449
    Par défaut
    Quand on a des problèmes de requêtes, il faut s'abstraire de php :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    $request = "UPDATE Film Set Nom='$Nom' WHERE id='$idFilm'" ;
    echo $request;
    Puis tu copie-colle la requete affichée dans le navigateur dans phpmyadmin ou mieux en ligne de commande mysql, et tu vois si tu obtiens le résultat attendu. A ce propos il serait bon de dire sur quel SGBD tu tournes (mysql, oracle, mssql, ....)

  5. #5
    Membre émérite
    Avatar de yiannis
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    1 494
    Détails du profil
    Informations personnelles :
    Âge : 59
    Localisation : France

    Informations forums :
    Inscription : Septembre 2005
    Messages : 1 494
    Points : 2 791
    Points
    2 791
    Par défaut
    Bonjour

    essaie comme cela:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    $request = "UPDATE Film Set Nom='".$Nom."' WHERE id=".$idFilm ;
    "Ce besoin de remords qui précède le Mal, que dis-je ! qui le crée..." E. CIORAN

  6. #6
    Membre du Club
    Inscrit en
    Septembre 2005
    Messages
    48
    Détails du profil
    Informations forums :
    Inscription : Septembre 2005
    Messages : 48
    Points : 47
    Points
    47
    Par défaut
    Citation Envoyé par yiannis
    Bonjour

    essaie comme cela:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    $request = "UPDATE Film Set Nom='".$Nom."' WHERE id=".$idFilm ;
    Je ne pense pas que cela va résoudre son problème ....

  7. #7
    Membre du Club
    Inscrit en
    Décembre 2005
    Messages
    118
    Détails du profil
    Informations forums :
    Inscription : Décembre 2005
    Messages : 118
    Points : 58
    Points
    58
    Par défaut
    je reponds dans l ordre. merci pour ces reponses si rapides
    Je pourrai tester cela seulement ce soir car je suis au boulot. J utilise easyphp et mysql

    1. chat hotplug : je vais essayer. Sais tu comment fais t on cela avec easy php?

    2. tintin31000 : oui bien sur la premiere des deux

    3. Mr N. : je suppose qu on peux tester les requete qvec easyphp
    je ne sais pas trop car le resultat de cette requete depend de la valeur des variables.

  8. #8
    En attente de confirmation mail
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    208
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 208
    Points : 218
    Points
    218
    Par défaut
    Dans EasyPHP il y a PHPMyAdmin: pratique pour intervenir directement sur la base.

    A partir de là vous selectionnez votre base, et vous clickez quelquepart sur un lien pour executer des requetes SQL.

    Vous aurez un champ texte ou vous pourrez taprer (successivement) un truc du genre:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    update Film set nom='Bug assault 2' where id='31';
     
    select nom from Film where id='31';
     
    commit;
     
    select nom from Film where id='31';


  9. #9
    Rédacteur

    Avatar de Yogui
    Homme Profil pro
    Directeur technique
    Inscrit en
    Février 2004
    Messages
    13 721
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yonne (Bourgogne)

    Informations professionnelles :
    Activité : Directeur technique

    Informations forums :
    Inscription : Février 2004
    Messages : 13 721
    Points : 29 985
    Points
    29 985
    Par défaut
    @chat hotplug : il semble que notre ami n'utilise pas une base MySQL mais Microsoft SQL Server, ce qui signifie que phpMyAdmin aura du mal à nous être utile ici :/

  10. #10
    Expert éminent Avatar de Mr N.
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    5 418
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 5 418
    Points : 6 449
    Points
    6 449
    Par défaut
    Citation Envoyé par Kirkis
    il semble que notre ami n'utilise pas une base MySQL mais Microsoft SQL Server, ce qui signifie que phpMyAdmin aura du mal à nous être utile ici :/
    Easyphp est distribué avec MSSQL Server ? cool !
    Pour fixer les idées, Chromatic, quel sgbd utilises-tu ?

    Citation Envoyé par Chromatic
    3. Mr N. : je suppose qu on peux tester les requete qvec easyphp
    je ne sais pas trop car le resultat de cette requete depend de la valeur des variables.
    Je ne vois pas le rapport avec ce que je t'ai proposé.
    Tu fais un echo de la requète, tu colles le résultat dans un interpreteur sql et tu regardes si ca fait ce que tu veux. C'est comme ça qu'on fonctionne quand on a des requètes qui sont syntaxiquement correctes mais qui ne font pas ce qu'on espère.

  11. #11
    Membre du Club
    Inscrit en
    Décembre 2005
    Messages
    118
    Détails du profil
    Informations forums :
    Inscription : Décembre 2005
    Messages : 118
    Points : 58
    Points
    58
    Par défaut
    Hehe j utilise Mysql distribue avec EasyPhp. je ne pense pas que Microsoft
    est compatible avec des outils gratuits comme Easy Php.

    chat hotplug tu ecris ce code:



    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    update Film set nom='Bug assault 2' where id='31';
     
    select nom from Film where id='31';
     
    commit;  (3)
     
    select nom from Film where id='31'; (4)
    je n ai pas bien compris le truc commit. Il faudrait imperativement avoir le
    3 et 4 eme ligne dans cette requete? euh pourqoui la 2 eme est identique a la 4 eme?

    Mr N. : ce que j a ivoulu dire est qu il est difficile de tester une requete si les variables ne sont pas initialisee. mais je vais esseye l exemple de chathotplug

  12. #12
    Rédacteur

    Avatar de Yogui
    Homme Profil pro
    Directeur technique
    Inscrit en
    Février 2004
    Messages
    13 721
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yonne (Bourgogne)

    Informations professionnelles :
    Activité : Directeur technique

    Informations forums :
    Inscription : Février 2004
    Messages : 13 721
    Points : 29 985
    Points
    29 985
    Par défaut
    Citation Envoyé par tintin31000
    $ret = mssql_query($request);

    ou bien

    $ret = mysql_query($result);


    L'as tu bien spécifié ???
    Citation Envoyé par Chromatic
    tintin31000 : oui bien sur la premiere des deux
    Il me semblait clair que c'était du mssql, non ? J'ai raté un truc ?
    Mr N., rien n'empêche Chromatic d'installer EasyPHP tout en utilisant MS SQL Server, mais je ne t'apprends rien :/

  13. #13
    Expert éminent Avatar de Mr N.
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    5 418
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 5 418
    Points : 6 449
    Points
    6 449
    Par défaut
    Citation Envoyé par Chromatic
    Mr N. : ce que j a ivoulu dire est qu il est difficile de tester une requete si les variables ne sont pas initialisee.
    Tu as pourtant dis
    De plus, je suis certain que les variables $Nom et $idFilm contienne les bonnes valeurs car je les affiches juste apres!
    Donc si tu es capable d'afficher une variable, tu es capable d'afficher le contenu de $requete quand même !!!

    Citation Envoyé par Kirkis
    Citation Envoyé par Chromatic
    tintin31000 : oui bien sur la premiere des deux
    Il me semblait clair que c'était du mssql, non ? J'ai raté un truc ?
    Si tu lis en entier le message de Chromatic que tu cites, tu verras qu'il dit :
    J utilise easyphp et mysql
    Ca doit être ça le truc que tu as raté

  14. #14
    Membre du Club
    Inscrit en
    Décembre 2005
    Messages
    118
    Détails du profil
    Informations forums :
    Inscription : Décembre 2005
    Messages : 118
    Points : 58
    Points
    58
    Par défaut
    j utilise MYSQL. on est d accord

    je vais ainsi essayer la requete cite par Kirkis ce soir et je vous dirait quoi

    Elle m a quand meme l air louche. Avec deux fois la meme ligne(2 et 4). Quand pensez vous?

  15. #15
    Expert éminent Avatar de Mr N.
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    5 418
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 5 418
    Points : 6 449
    Points
    6 449
    Par défaut
    Citation Envoyé par Chromatic
    j utilise MYSQL. on est d accord

    je vais ainsi essayer la requete cite par Kirkis ce soir et je vous dirait quoi

    Elle m a quand meme l air louche. Avec deux fois la meme ligne(2 et 4). Quand pensez vous?
    J'en pense que tu ferais mieux de savoir si ta requête fait ce que tu attends d'elle en la testant en ligne de commande après l'avoir affichée à l'écran. Enfin moi je dis ça je dis rien...

  16. #16
    Rédacteur

    Avatar de Yogui
    Homme Profil pro
    Directeur technique
    Inscrit en
    Février 2004
    Messages
    13 721
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yonne (Bourgogne)

    Informations professionnelles :
    Activité : Directeur technique

    Informations forums :
    Inscription : Février 2004
    Messages : 13 721
    Points : 29 985
    Points
    29 985
    Par défaut
    Ouais, cool, j'aperçois le droit chemin !

    Histoire de ne pas me prendre tous les blâmes : pour une fois, je n'ai pas donné de requête (c'était chat hotplug).

    Je suis de l'avis de Mr N., maintenant que nous sommes tous bien d'accord sur ton outil de travail et que nous savons que tu disposes de phpMyAdmin : utilise cet outil, il est excellent et te dira tout de suite si ta requête modifie quelque chose.

  17. #17
    En attente de confirmation mail
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    208
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 208
    Points : 218
    Points
    218
    Par défaut
    Tout ce que je proposais c'est de tester un update et de voir si ca a marché,
    (requetes 1 et 2) puis sinon faire un commit pour voir si les changements sont appliqués (requetes 3 et 4).

    Mais pas besoin de PHPMyAdmin: on peut tres bien se connecter au SGBD en ligne de commande dans un terminal.

  18. #18
    Membre du Club
    Inscrit en
    Décembre 2005
    Messages
    118
    Détails du profil
    Informations forums :
    Inscription : Décembre 2005
    Messages : 118
    Points : 58
    Points
    58
    Par défaut
    Ok je vais teste cela ce soir !!!
    Merci les gars

  19. #19
    Membre du Club
    Inscrit en
    Décembre 2005
    Messages
    118
    Détails du profil
    Informations forums :
    Inscription : Décembre 2005
    Messages : 118
    Points : 58
    Points
    58
    Par défaut
    Merci Mr N. et a vous tous. J ai trouve une solution a mon probleme

    J ai fait un
    J ai vu que j avais un probleme avec idFilm

    Merci les gars

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [Debutant] Probleme avec requete UPDATE
    Par xavDIP dans le forum VB.NET
    Réponses: 2
    Dernier message: 20/06/2007, 11h46
  2. Probleme avec Requete Update
    Par Didier77 dans le forum Requêtes et SQL.
    Réponses: 9
    Dernier message: 24/07/2006, 13h20
  3. Probleme avec requete UPDATE sur ACCESS
    Par Chromatic dans le forum VBA Access
    Réponses: 2
    Dernier message: 05/01/2006, 10h03
  4. Probleme avec l'update
    Par belabyad dans le forum ASP
    Réponses: 8
    Dernier message: 02/05/2005, 10h18
  5. probleme avec requete sql aime pas les strings
    Par lil_jam63 dans le forum Bases de données
    Réponses: 3
    Dernier message: 24/02/2004, 14h45

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