Je viens de passer de la version 5.3 à la version 5.5 de php et je rencontre un certain nombres d'erreurs. Pour la plupart j'ai réussi à les corriger mais pour certaines je n'y parviens pas et je ne vois pas d'où peut venir l'erreur.
Par exemple l'affichage d'une news me donne une erreur :
Parse error: syntax error, unexpected 'else' (T_ELSE) in /public_html/accueil/modules/news.php on line 81
Normalement cette erreur veut dire qu'il doit manquer une accolade à un endroit mais pourtant j'ai vérifié et tout est bon.
Voici mon code :
<?php
if (!empty($_GET)) {
if (isset($_GET[id])) {
$stmt = $bdd->prepare("SELECT id, titre, posteur, id_posteur, resume, img, contenu, DATE_FORMAT(date, '%d/%m/%Y') AS date, active FROM news WHERE active=1 AND id = :id");
$stmt->bindValue(':id',$_GET['id'],PDO::PARAM_INT);
if (!$stmt->execute()) {
echo 'ERREUR';
exit; //pas obligatoire
}
$data = $stmt->fetch();
$stmt->closeCursor();
}
}
?>
<?php
if (!empty($data)){
?>
<h4 class="news-title"><?=$data['titre']; ?></h4>
<div class="contenuviewnews">
<div id="news-date">
<i>Ajouté le <?=$data['date']; ?>, Par <a href="?mod=profil&id=<?=$data['id_posteur']; ?>" class="lien_profil"><?=$data['posteur']; ?></a> <img src="images/vu.jpg" title="visites"/>
<b><?=$visit['nb']; ?></b>
</i>
</div>
<div id="news-contenu">
<?php
$stmt = $bdd->prepare("SELECT * FROM news_genre WHERE id_news = :id");
$stmt->bindValue(':id',$_GET['id'],PDO::PARAM_INT);
if (!$stmt->execute()) {
echo 'ERREUR';
exit; //pas obligatoire
}
while ($getGenre = $stmt->fetch()) {
?>
<a style="text-decoration:none;" href="?mod=genre news&genre=<?=$getGenre['genre']; ?>"><div class="genre"><?=$getGenre['genre']; ?></div></a>
<? } ?>
<br><br>
<b><?=nl2br(stripslashes($data['resume'])); ?></b><br><br>
<div>
<?=nl2br(stripslashes($data['contenu'])); ?>
</div>
</div>
</div>
<?php } else{
echo '<script language="Javascript">
<!--
document.location.replace(\'index.php\');
// -->
</script>';} ?>
La ligne 81 est cette ligne : <?php } else{
echo '<script language="Javascript">
<!--
document.location.replace(\'index.php\');
// -->
</script>';} ?>
Merci d'avance pour votre aide.