Parse error: syntax error, unexpected $end in

Résolu/Fermé
keryg - 25 oct. 2009 à 07:39
 keryg - 25 oct. 2009 à 11:50
Bonjour,

J'essaye de mettre des données dans un tableau et je bloque. Impossible de les ordonner.
J'ai écris ça:
// connection à la DB
$link = mysql_connect ($host,$user,$pass) or die ('Erreur : '.mysql_error() );
mysql_select_db($db) or die ('Erreur :'.mysql_error());

// on teste si notre variable est déclarée  
 if (isset($_POST['metier'])) { 
 
// requête SQL qui compte le nombre total d enregistrement dans la table et qui
//récupère tous les enregistrements
$select = 'SELECT raison_sociale,nom,adr,adr2,cp,commune,telephone,fax FROM artisanat WHERE metier = "'.$_POST['metier'].'" AND code_canton = 13'; 
$result = mysql_query($select,$link) or die ('Erreur : '.mysql_error() );
$total = mysql_num_rows($result);


// si on a récupéré un résultat on l affiche.
if($total) {
    // debut du tableau
    echo '<table bgcolor="#FFFFFF">'."\n";
        // première ligne on affiche les titres prénom et surnom dans 2 colonnes
        echo '<tr>';
        echo '<td bgcolor="#669999"><b><u>Raison sociale</u></b></td>';
        echo '<td bgcolor="#669999"><b><u>Nom</u></b></td>';
      echo '<td bgcolor="#669999"><b><u>Adresse</u></b></td>';
        echo '<td bgcolor="#669999"><b><u>Telephone</u></b></td>';
      echo '<td bgcolor="#669999"><b><u>Fax</u></b></td>' ;
      echo '</tr>'."\n";
    // lecture et affichage des résultats sur 2 colonnes, 1 résultat par ligne.    
    while($row = mysql_fetch_array($result)) {
        echo '<tr>';
        echo '<td bgcolor="#CCCCCC">'.$row["raison_sociale"].'</td>';
        echo '<td bgcolor="#CCCCCC">'.$row["nom"].'</td>';
      echo '<td bgcolor="#CCCCCC">'.$row["adr"].'</td>';
        echo '<td bgcolor="#CCCCCC">'.$row["telephone"].'</td>';
      echo '<td bgcolor="#CCCCCC">'.$row["fax"].'</td>';
      echo '</tr>'."\n";
    }
    echo '</table>'."\n";
    // fin du tableau.
}
else { 
       echo 'Il n\'existe aucun professionnel correspondant à votre demande';  
 }  

// on libère l'espace mémoire alloué pour cette interrogation de la base 
       mysql_free_result ($req); 
       mysql_close ();


Et j'obtiens une erreur:
Parse error: syntax error, unexpected $end in
Qu'est ce qui n'irait pas?

Merci

2 réponses

lewis34 Messages postés 2557 Date d'inscription samedi 21 juillet 2007 Statut Membre Dernière intervention 30 mai 2015 352
25 oct. 2009 à 09:45
tu a oublie de fermé ton if (isset($_POST['metier'])) {

met une } apres $total = mysql_num_rows($result);
ca devrais marcher

unexpected $end in c'est typique d'une boucle ou d'une condition laissée ouverte
0
Je te remercie bien.
0