SQL Parse error: syntax error, unexpected 'select' (T_STRING)

Résolu
LeDoguenoir Messages postés 9 Date d'inscription   Statut Membre Dernière intervention   -  
 Utilisateur anonyme -
Bonjour,
Pourriez vous m'aider svp ?
Voici les champs de ma table jeux_video !:

ID
nom (Les titres des jeux)
possesseur (Patrick, Michel etc...)
console
prix
nbre_joueurs_max
commentaires

Je veux lister les jeux que Patrick vend à moins de 20 euros et voici ma recquête : select nom, possesseur, prix from jeux_video WHERE possesseur=\'Patrick\' AND prix < 20')

PS: Je suis un grand débutant qui s'auto forme donc ne vous en offusquez pas. Merci

2 réponses

  1. Utilisateur anonyme
     
    Bonjour

    Pourquoi écris-tu SQL Parse error alors que ce n'est pas une erreur SQL mais une erreur PHP ?
    Et qu'est-ce qui te fait croire qu'il y a un problème dans ta requête ? Ce n'est pas ce que ce message dit.
    Il dit que PHP ne s'attendait pas à rencontrer ce 'Select'.
    Tu as probablement oublié quelque chose AVANT la requête (parenthèse, apostrophe...) Peux-tu donner les quelques lignes de code qui précèdent, jusqu'à et y compris cette requête ?
    Et quand tu donnes un message d'erreur, recopie-le à l'identique sans rien y ajouter ni rien retirer (en masquant quand même les informations confidentielles s'il y en a).
    0
    1. Utilisateur anonyme
       
      un point virgule à la fin de la ligne précédent la ligne d'erreur .....
      0
    2. Utilisateur anonyme > Utilisateur anonyme
       
      Peut-être, mais même si la ligne précédente se termine par un point-virgule, une ligne qui commence par SELECT provoquera cette erreur. Il ne peut pas y avoir en php une ligne qui se termine par un point virgule suivi d'une qui commence par "select nom,..."
      0
    3. Utilisateur anonyme > Utilisateur anonyme
       
      Bonjour le père

      tu as tout à fait raison

      Amitiés
      0
    4. LeDoguenoir Messages postés 9 Date d'inscription   Statut Membre Dernière intervention  
       
      Voici tout mon code :

      <?php

      try
      {
      $dbName='test';
      $host='localhost';
      $utilisateur='root';
      $motDePasse='';
      $port='3306';
      $dns='mysql:host='.$host.';dbname='.$dbName.';port='.$port;
      $con=new PDO($dns,$utilisateur,$motDePasse);
      }
      catch (Exception $e)
      {
      die('Pb de connection à la BDD : ".$e->getMessage());
      }

      $tout=$con->query('select nom, possesseur, prix from jeux_video WHERE possesseur=\'Patrick\' AND prix < 20');

      while ($donn= $tout->fetch())
      {
      ?>
      <p>
      Les jeux appartennant à Patick vendus à moins de 20 euros sont : <?php echo $donn['nom'];?>.<br/>
      </p>
      <?php
      }

      $tout->closeCursor();




      ?>
      
          
      0
    5. Utilisateur anonyme > LeDoguenoir Messages postés 9 Date d'inscription   Statut Membre Dernière intervention  
       
      $dns a un problème : )

      ps -> je te laisse chercher un peu ...
      0
  2. Utilisateur anonyme
     
    regarde :
    die('Pb de connection à la BDD : ".$e->getMessage());

    Tu ouvres ta chaîne avec une apostrophe , tu la fermes avec une double quote. Donc en fait tu ne la fermes pas, et c'est l'apostrophe qu'il y a au début de 'select' qui est pris pour la fin de la chaîne.

    Tu n'utilises pas un éditeur avec coloration syntaxique ? Parce que là, ça saute aux yeux.
    0
    1. LeDoguenoir Messages postés 9 Date d'inscription   Statut Membre Dernière intervention  
       
      Merci encore tout le monde, merci le père,

      J'utilise "Notepad++". C'est vrai que je suis un peu con, je ne vois pas souvent mes petites fautes d'inattention. C'est terrible.
      0