Parse erreur [Résolu]

Signaler
Messages postés
1
Date d'inscription
mardi 8 juillet 2014
Statut
Membre
Dernière intervention
8 juillet 2014
-
Messages postés
31579
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
4 mars 2021
-
Salut

je débute en php et j'arrive pas a trouver la solution pour cette erreur :

Parse error: syntax error, unexpected 'nl2br' (T_STRING) in C:\wamp\www\commentaires.php on line 38

quand j'enlève ' nl2br ' j'ai l'erreur :

Parse error: syntax error, unexpected 'htmlspecialchars' (T_STRING) in C:\wamp\www\commentaires.php on line 38

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title>Mon blog</title>
<link href="style.css" rel="stylesheet" />
</head>

<body>
<h1>Mon super blog !</h1>
<p><a href="blog.php">Retour à la liste des billets</a></p>

<?php

try
{
$bdd = new PDO ('mysql:host=localhost;dbname=test', 'root' , '');
}
catch (Exception $e)
{
die('Erreur :' .$e->getMessage());
}

// Récupération du billet
$req = $bdd->prepare('SELECT * FROM billets WHERE id = ?)');
$req->execute(array($_GET['billet']));
$donnees = $req->fetch();
?>

<div class="news">
<h3>
<?php echo htmlspecialchars($donnees['titre']); ?>
<em>le <?php echo $donnees['date_creation']; ?></em>
</h3>

<p>
<?php
echo nl2br(htmlspecialchars($donnees['contenu']));
?>
</p>
</div>
<h2>Commentaires</h2>

<?php
$req->closeCursor();

// Récupération des commentaires
$req = $bdd->prepare('SELECT * FROM commentaires WHERE id_billet = ? ORDER BY date_commentaire');
$req->execute(array($GET['billet']));
while ($donnees = $req->fetch());
{
?>
<p><strong><?php echo htmlspecialchars($donnees['auteur']); ?></strong> le <?php echo $donnees['date_commentaire']; ?></p>
<p><?php echo nl2br(htmlspecialchars($donnees['commentaire'])); ?></p>

<?php
} // fin de la boucle while
$req->closeCursor();

</body>
</html>

j'ai meme essayé :

(ligne 38)
     echo $donnees['contenu'];

ça donne toujours l'erreur :


Parse error: syntax error, unexpected '$donnees' (T_VARIABLE) in C:\wamp\www\commentaires.php on line 38


si vous pouvez bien m'expliquer a quoi dû ce type d'erreur et me donnée une solution svp :)
Merci <3

2 réponses

Messages postés
31579
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
4 mars 2021
344
Bonjour,

Il ne semble pas y avoir d'erreur...

Toutesfois, peux tu nous coller un var_dump de ta variable $donnees ?

Et aussi... plutôt que de jonglet non stop entre Html et Php dans ton code... fais directement tout en php.

<?php
// Récupération du billet
$req = $bdd->prepare('SELECT * FROM billets WHERE id = ?)');
$req->execute(array($_GET['billet']));
$donnees = $req->fetch();

var_dump($donnees);

 echo "<div class='news'>
    <h3>".htmlspecialchars($donnees['titre']);
 echo "<em> Le ".$donnees['date_creation']."</em>
    </h3>
         <p>".nl2br(htmlspecialchars($donnees['contenu']))."</p>
  </div>";
  
?>



Avant de poser une question, merci de lire la charte du site.
Cordialement, Jordane
Messages postés
31579
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
4 mars 2021
344
Résolu ???
Et donc c'était quoi ?*