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

Résolu/Fermé
LeDoguenoir Messages postés 9 Date d'inscription mercredi 22 octobre 2014 Statut Membre Dernière intervention 23 février 2015 - 27 janv. 2015 à 04:00
 Utilisateur anonyme - 27 janv. 2015 à 16:03
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

Utilisateur anonyme
27 janv. 2015 à 07:39
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
Utilisateur anonyme
27 janv. 2015 à 14:08
un point virgule à la fin de la ligne précédent la ligne d'erreur .....
0
Utilisateur anonyme > Utilisateur anonyme
Modifié par le père. le 27/01/2015 à 14:17
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
Utilisateur anonyme > Utilisateur anonyme
27 janv. 2015 à 14:23
Bonjour le père

tu as tout à fait raison

Amitiés
0
LeDoguenoir Messages postés 9 Date d'inscription mercredi 22 octobre 2014 Statut Membre Dernière intervention 23 février 2015
27 janv. 2015 à 15:34
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
Utilisateur anonyme > LeDoguenoir Messages postés 9 Date d'inscription mercredi 22 octobre 2014 Statut Membre Dernière intervention 23 février 2015
Modifié par ludobabs le 27/01/2015 à 15:42
$dns a un problème : )

ps -> je te laisse chercher un peu ...
0
Utilisateur anonyme
27 janv. 2015 à 15:42
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
LeDoguenoir Messages postés 9 Date d'inscription mercredi 22 octobre 2014 Statut Membre Dernière intervention 23 février 2015
27 janv. 2015 à 15:52
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