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

Requêtes MySQL Discussion :

erreur de requete sous php mais pas sous mysql


Sujet :

Requêtes MySQL

  1. #1
    Membre régulier
    Inscrit en
    Juin 2006
    Messages
    258
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 258
    Points : 108
    Points
    108
    Par défaut erreur de requete sous php mais pas sous mysql
    bonjour,

    lorsque j'execute une requete X dans la bdd directement (avec easyphp1.7), celle ci s'execute parfaitement.
    Maintenant si je la fais avec php (avec mysql_query($marequete) or die("flute") alors j'ai "flute" qui apparait tout le temps. Pourtant mes autres requetes à coté fonctionne très bien.
    Qqun voit il 1 explication?
    merci d avance

  2. #2
    Membre expert

    Profil pro
    imposteur
    Inscrit en
    Avril 2003
    Messages
    3 308
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : imposteur

    Informations forums :
    Inscription : Avril 2003
    Messages : 3 308
    Points : 3 377
    Points
    3 377
    Par défaut
    et si à la place de "flute" tu mettais ce qu'il y a dans le point 2 de ma signature ?

  3. #3
    Membre régulier
    Inscrit en
    Mai 2005
    Messages
    172
    Détails du profil
    Informations forums :
    Inscription : Mai 2005
    Messages : 172
    Points : 74
    Points
    74
    Par défaut
    +1

  4. #4
    Membre régulier
    Inscrit en
    Juin 2006
    Messages
    258
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 258
    Points : 108
    Points
    108
    Par défaut
    - Erreur de syntaxe près de '(YEAR FROM datePremCom) LIKE '%8' ORDER BY txtCode' à la ligne 1
    est l'erreur renvoyée.

    Pour + d'info ma requete est la suivante:
    SELECT * FROM Variété WHERE EXTRACT (YEAR FROM datePremCom) LIKE '%8' ORDER BY txtCode;

    Ceci écrit je ne vois tjs pas pourquoi ça marche sous mysql et pas sous php!

    Toutes reponses sont bienvenues.

    Merci d'avance

  5. #5
    Membre expert

    Profil pro
    imposteur
    Inscrit en
    Avril 2003
    Messages
    3 308
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : imposteur

    Informations forums :
    Inscription : Avril 2003
    Messages : 3 308
    Points : 3 377
    Points
    3 377
    Par défaut
    Commence par virer le point-virgule final.
    Ensuite, je suis pas sûr que les accents dans les noms de champs, ça soit une bonne idée...

  6. #6
    Membre régulier
    Inscrit en
    Juin 2006
    Messages
    258
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 258
    Points : 108
    Points
    108
    Par défaut
    j'ai viré le ; ça ne resoud pas le pb. Le coup des accents c'est sur c'est nul mais ca fonctionne quand meme avec mes autres requetes donc l'erreur n'est pas la non plus.

    Je vois tjs pas...

  7. #7
    Membre expert

    Profil pro
    imposteur
    Inscrit en
    Avril 2003
    Messages
    3 308
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : imposteur

    Informations forums :
    Inscription : Avril 2003
    Messages : 3 308
    Points : 3 377
    Points
    3 377
    Par défaut
    Citation Envoyé par kenny49
    j'ai viré le ; ça ne resoud pas le pb. Le coup des accents c'est sur c'est nul mais ca fonctionne quand meme avec mes autres requetes donc l'erreur n'est pas la non plus.

    Je vois tjs pas...
    Cette requête, copiée collée, elle marche dans phpmyadmin ? tu confirmes ?

  8. #8
    Membre régulier
    Inscrit en
    Juin 2006
    Messages
    258
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 258
    Points : 108
    Points
    108
    Par défaut
    je confirme!

  9. #9
    Membre confirmé
    Inscrit en
    Mai 2002
    Messages
    673
    Détails du profil
    Informations forums :
    Inscription : Mai 2002
    Messages : 673
    Points : 624
    Points
    624
    Par défaut
    a tout hazard, ca donne quoi si tu met "%8" au lieu '%8' ?

  10. #10
    Membre confirmé Avatar de stunti
    Inscrit en
    Mai 2006
    Messages
    520
    Détails du profil
    Informations personnelles :
    Âge : 46

    Informations forums :
    Inscription : Mai 2006
    Messages : 520
    Points : 594
    Points
    594
    Par défaut
    tu peux donner la ligne de code qui envoie la requete au serveur (mysql_query ou autre).

  11. #11
    Membre régulier
    Inscrit en
    Juin 2006
    Messages
    258
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 258
    Points : 108
    Points
    108
    Par défaut
    $r = mysql_query($szQuery);//or die(...)
    avec
    $szQuery="SELECT *
    FROM Variété
    WHERE EXTRACT( YEAR
    FROM datePremCom )
    LIKE '%9%'
    ORDER BY txtCode"

  12. #12
    Membre expert

    Profil pro
    imposteur
    Inscrit en
    Avril 2003
    Messages
    3 308
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : imposteur

    Informations forums :
    Inscription : Avril 2003
    Messages : 3 308
    Points : 3 377
    Points
    3 377
    Par défaut
    Le "or die", c'est pas pour faire joli, tant que tu es en phase de développement, tu le commentes pas !

  13. #13
    Membre régulier
    Inscrit en
    Juin 2006
    Messages
    258
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 258
    Points : 108
    Points
    108
    Par défaut
    si je l'ai commenté c'était plus pratique car l'erreur renvoyée je la connais maintenant (cf discussion plus haut) mais sinon il vaut meux ne pas le commenter. Bref, je fais pas avancer l'histoire.

    J'ai quand meme fait un test: lorsque j'ecris :

    SELECT * FROM Variété WHERE datePremCom LIKE '%0%' ORDER BY txtCode
    sous PHP, ça fonctionne. (sous mysql, ça fonctionne bien sur)

    Pour rappel, lorsque j'ecris:
    SELECT * FROM Variété WHERE EXTRACT (YEAR FROM datePremCom)
    LIKE '%0%' ORDER BY txtCode
    sous PHP, ça ne fonctionne pas! (sous mysql, ça fonctionne )

  14. #14
    Membre expert

    Profil pro
    imposteur
    Inscrit en
    Avril 2003
    Messages
    3 308
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : imposteur

    Informations forums :
    Inscription : Avril 2003
    Messages : 3 308
    Points : 3 377
    Points
    3 377
    Par défaut
    la requête en php et la requête en mysql sont faites sous le même login mysql ?

  15. #15
    Membre régulier
    Inscrit en
    Juin 2006
    Messages
    258
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 258
    Points : 108
    Points
    108
    Par défaut
    étant donné que je me connecte sous root en php, je suppose que oui.

  16. #16
    Membre confirmé Avatar de stunti
    Inscrit en
    Mai 2006
    Messages
    520
    Détails du profil
    Informations personnelles :
    Âge : 46

    Informations forums :
    Inscription : Mai 2006
    Messages : 520
    Points : 594
    Points
    594
    Par défaut
    As tu essaye en mettant ta requete entre simple quote(et en echapant celles qui se trouve a l'interieur) pour voir si cela change qqch.

  17. #17
    Rédacteur

    Homme Profil pro
    Développeur Web
    Inscrit en
    Juillet 2003
    Messages
    695
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Juillet 2003
    Messages : 695
    Points : 1 071
    Points
    1 071
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     SELECT * FROM `Variété` WHERE EXTRACT (YEAR FROM `datePremCom`)
     LIKE '%0%' ORDER BY `txtCode`
    Penser au `, c'est une habitude à prendre, ça protège les requetes de toutes les bizarreries qu'on pourrait vouloir y mettre, comme un champ avec des accents par exemple

  18. #18
    Membre régulier
    Inscrit en
    Juin 2006
    Messages
    258
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 258
    Points : 108
    Points
    108
    Par défaut
    J'ai encore mieux:
    $r=mysql_query("SELECT * FROM Variété WHERE EXTRACT (YEAR FROM datePremCom) LIKE '%0%' ORDER BY txtCode ");
    Ceci ne fonctionne pas.
    Bien sur sous mysql si je prends le contenu des " " ça fonctionne...

  19. #19
    Membre confirmé Avatar de stunti
    Inscrit en
    Mai 2006
    Messages
    520
    Détails du profil
    Informations personnelles :
    Âge : 46

    Informations forums :
    Inscription : Mai 2006
    Messages : 520
    Points : 594
    Points
    594
    Par défaut
    Vu le message, il semble que ce soit le extract qui ne fonctionne pas.
    maintenant, reste a savoir pourquoi.

    Tu execute bien le code sur le meme serveur et la meme base de donnees ?
    si tu effectue ta requete en supprimant la clause WHERE. cela fonctionne ?

  20. #20
    Membre expert

    Profil pro
    imposteur
    Inscrit en
    Avril 2003
    Messages
    3 308
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : imposteur

    Informations forums :
    Inscription : Avril 2003
    Messages : 3 308
    Points : 3 377
    Points
    3 377
    Par défaut
    Tu as testé avec les backquotes comme suggéré par wamania ?

+ Répondre à la discussion
Cette discussion est résolue.
Page 1 sur 2 12 DernièreDernière

Discussions similaires

  1. PHP son (musique) sous chrome mais pas sous IE8
    Par tsig00 dans le forum Débuter
    Réponses: 2
    Dernier message: 10/05/2012, 17h24
  2. PHP et FTP : fonctionne sous IE mais pas sous FF
    Par rjcab dans le forum Langage
    Réponses: 17
    Dernier message: 22/07/2008, 15h58
  3. Erreur sous PHP mais pas sous TOAD ?
    Par erox44 dans le forum SQL
    Réponses: 1
    Dernier message: 22/04/2008, 16h14
  4. [PHP-JS] Erreur sous ie mais pas sous ff
    Par ozzmax dans le forum Langage
    Réponses: 6
    Dernier message: 10/07/2007, 17h04
  5. Menu dynamique marchant sous FF mais pas sous IE
    Par T-durden dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 18/08/2005, 14h14

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