Erreur récurante de syntaxe

Résolu
fareohh Messages postés 63 Date d'inscription   Statut Membre Dernière intervention   -  
fareohh Messages postés 63 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

ça fait un moment que j'essaye de régler ce problème mais rien à faire..

J'ai cette erreur qui reviens en permanence et je n'arrive pas à la résoudre.
Parse error: syntax error, unexpected '{' in /var/www/wzh1cj/www/news/recherche.php on line 2


Voilà mon code:
<?php
    try {
        $pdo_options[PDO::ATTR_ERRMODE] = PDO::ERRMODE_EXCEPTION;
        $bdd = new PDO('mysql:host=host=web2.pulseheberg.net;dbname=wkmfc8_osudl', 'wkmfc8_osudl','macle', $pdo_options);
 }
    catch (Exception $e){
              die('Erreur : ' . $e->getMessage());
    }

 
    $requete = htmlspecialchars($_POST['requete']);
    $req = $bdd->prepare("SELECT * FROM fichiers WHERE name LIKE :requete ORDER BY id DESC");
    $req->execute(array('requete' => $requete . '%'));
 
     
    $nb_resultats = $req->rowCount();
    if($nb_resultats != 0){
 
    ?>
    
    <?php echo $nb_resultats; 
    if($nb_resultats > 1) { echo 'résultats'; } else { echo 'résultat'; } 
    ?>
    trouvé:<br/>
    <br/>
    <?
    
    {
    ?>
    <a href="fonction.php?id=<? echo $donnees['id']; ?>"><? echo $donnees['nom_fonction']; ?></a><br/>
    <?
    } 
    ?><br/>
    <br/>
    <a href="rechercher.php">Nouvelle recherche</a></p>
    <?
    } 
    else
    {
    ?>
    <h3>Pas de résultats</h3>
    <p>Nous n'avons trouvé aucun résultat pour votre requête "<? echo $_POST['requete']; ?>". <a href="rechercher.php">Réessayez</a> avec autre chose.</p>
    <?
    }//
    $req->closeCursor(); /
    }
else {

?>
<p>rechercher</p>
 <form action="deconnexion.php" method="Post">
<input type="text" name="requete" size="10">
<input type="submit" value="Ok">
</form>
<?
}
?>


Merci d'avance...

3 réponses

jordane45 Messages postés 38486 Date d'inscription   Statut Modérateur Dernière intervention   4 752
 
Bonjour,

Essaye ça :
<?php
//Affichage des erreurs PHP 
error_reporting(E_ALL);
ini_set('display_errors', TRUE);
ini_set('display_startup_errors', TRUE);

//connexion à la bdd
try{
  $bdd = new PDO('mysql:host=web2.pulseheberg.net;dbname=wkmfc8_osudl;charset=utf8', 'wkmfc8_osudl','macle');
  $bdd->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
  $bdd->setAttribute(PDO::ATTR_DEFAULT_FETCH_MODE, PDO::FETCH_ASSOC); 
} catch(PDOException $e) {
    die('Erreur : ' . $e->getMessage());
}


$requete = !empty($_POST['requete']) ? $_POST['requete'] : NULL ;
if($requete){
  $sql = "SELECT * FROM fichiers WHERE name LIKE :requete ORDER BY id DESC";
  $datas = array(':requete' => $requete . '%');
  try{
    $req = $bdd->prepare($sql);
    $req->execute($datas);
    $resultat = $req->fetchAll(); //on stocke le resultat dans un array
  } catch(PDOException $e) {
    die('Erreur : ' . $e->getMessage());
  }
 
  $nb_resultats = !empty($resultat) ? count($resultat) : 0;
  if($nb_resultats != 0){ 
    echo $nb_resultats; 
    $res = $nb_resultats>1 ? 's': '';
    echo 'résultat'.$res. ' trouvé'.$res;
    echo "<br><br>";
    foreach($resultat as $donnees){
        echo '<a href="fonction.php?id='.$donnees['id'].'">'.$donnees['nom_fonction'].'</a><br/>';
    }
    ?>
     
    <br/>
    <br/>
    <a href="rechercher.php">Nouvelle recherche</a></p>
 <?php
  } else {
 ?>
    <h3>Pas de résultats</h3>
    <p>Nous n'avons trouvé aucun résultat pour votre requête "<?php echo $requete]; ?>". <a href="rechercher.php">Réessayez</a> avec autre chose.</p>
 <?php
  }

} else {
  ?>
  <p>rechercher</p>
  <form action="deconnexion.php" method="Post">
  <input type="text" name="requete" size="10">
  <input type="submit" value="Ok">
  </form>
<?php
}
?>


Au passage... je t'invite à lire et à appliquer ceci :
https://forums.commentcamarche.net/forum/affich-37584941-php-pdo-gerer-les-erreurs
et ceci :
https://forums.commentcamarche.net/forum/affich-37584947-php-gestion-des-erreurs-debogage-et-ecriture-du-code


0
fareohh Messages postés 63 Date d'inscription   Statut Membre Dernière intervention  
 
Parse error: syntax error, unexpected end of file in /var/www/wzh1cj/www/news/recherche.php on line 60

:'(
0
jordane45 Messages postés 38486 Date d'inscription   Statut Modérateur Dernière intervention   4 752
 
Je n'avais pas vu...
mais il semble que tu aies utilisé des balises
<?

au lieu de
<?php


Commence par les remplacer correctement.

Ensuite, si le souci persiste, assure toi de :
- Toutes les accolades sont correctement fermées.
- Ton fichier en encodé en utf8 sans bom (voir chapitre 1 de ce lien : https://forums.commentcamarche.net/forum/affich-37584944-php-html-caracteres-accentues-et-l-utf8 )
0
fareohh Messages postés 63 Date d'inscription   Statut Membre Dernière intervention  
 
Oui j'ai vu ça, j'ai remplacé mais rien ne change..
0
jordane45 Messages postés 38486 Date d'inscription   Statut Modérateur Dernière intervention   4 752
 
Ton fichier est en UTF8 sans BOM ?
Il n'y a pas d'accolades manquantes ?
Toutes les balises <? ont été remplacées par <?php ??

Peux tu nous poster ton code modifié et une capture écran de ta vérification de l'encodage ?
0
fareohh Messages postés 63 Date d'inscription   Statut Membre Dernière intervention  
 
Je fait ça se soir en retenant du taff
0
Lord Zero Messages postés 459 Date d'inscription   Statut Membre Dernière intervention   115
 
Bonjour,

Juste 2 choses :
$bdd = new PDO('mysql:host=host=web2.pulseheberg.net;dbname=wkmfc8_osudl', 'wkmfc8_osudl','macle', $pdo_options);


1- Il y a un host= de trop.
2- Ce sont tes vrais accès ? Dans ce cas, modifie vite ton post.


0
fareohh Messages postés 63 Date d'inscription   Statut Membre Dernière intervention  
 
Ah autant pour moi ! Et non c'est pas la bonne clé ^^
0
fareohh Messages postés 63 Date d'inscription   Statut Membre Dernière intervention  
 
Problème résolu ! Merci pour tout ! (comme je sus pas très doué il est fort probable que je revienne d'ici 10 min car j'ai de nouveau un problème mais je vais essayer de rechercher de moi même.
0