Problème parse error sur interrogation de bdd

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Problème parse error sur interrogation de bdd

Re: Problème parse error sur interrogation de bdd

par @rthur » 20 juin 2018, 23:05

Fais un echo de ta requête SQL et teste là avec phpmyadmin.
Là dans ton code elle me semble correcte, donc il doit y avoir autre chose

Re: Problème parse error sur interrogation de bdd

par Lhobo » 20 juin 2018, 12:19

Merci de la réponse aussi rapide !
Du coup si je comprends bien ce que tu me dis il faudrait que je change mon code de la sorte ?

$reponse = $bdd->query("SELECT * FROM 'articles' WHERE 1");

Juste au cas où c'était ça, j'ai deux nouvelles erreurs qui ce sont affichées :
Fatal error: Uncaught exception 'PDOException' with message 'SQLSTATE[42000]: Syntax error or access violation: 1064 Erreur de syntaxe près de ''articles' WHERE 1' à la ligne 1' in C:\wamp64\www\test-entretien\site-avec-includes\inc.articles.php on line 12
PDOException: SQLSTATE[42000]: Syntax error or access violation: 1064 Erreur de syntaxe près de ''articles' WHERE 1' à la ligne 1 in C:\wamp64\www\test-entretien\site-avec-includes\inc.articles.php on line 12

Re: Problème parse error sur interrogation de bdd

par @rthur » 20 juin 2018, 12:07

Bonjour,

Tu as un problème de guillemets simples qui est visible d'ailleurs aussi avec la coloration syntaxique.
Si tu utilises des guillemets simples pour délimiter le début et la fin de ta requête SQL, il faut que tu échappes avec un antislash les guillemets simples qui sont au sein de ta requête, ou que tu utilises des guillemets doubles en début/fin de variable, et guillemets simples dedans.

Problème parse error sur interrogation de bdd

par Lhobo » 20 juin 2018, 11:46

Bonjour à tous,

Je retourne sur des vieux projets d'école en PHP pour un entretien et le problème c'est que du coup j'ai pleins de problèmes qui sont dû à l'obsolescence de mon code.
J'ai essayé de bidouillé pour m'en sortir lors de mon interrogation de ma base de données mais j'ai ce message d'erreur qui s'affiche :

( ! ) Parse error: syntax error, unexpected 'articles' (T_STRING) in C:\wamp64\www\test-entretien\site-avec-includes\inc.articles.php on line 12

Voici mon code :
<?php
try
{
	$bdd = new PDO('mysql:host=localhost;dbname=exemple;charset=utf8', 'root', '', array(PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION));
}
catch (Exception $e)
{
        die('Erreur : ' . $e->getMessage());
}
        $reponse = $bdd->query('SELECT * FROM 'articles' WHERE 1');
while ($donnees = $reponse->fetch())
{
?>
	<p>
		<strong>Articles</strong> : 
	<?php 
		echo $donnees['titre'];
		echo $donnees['contenu'];
	?>
	</p>
<?php
}
$reponse->closeCursor();

?>
Merci d'avance de votre aide car là je suis en grosse galère :( :(