Syntax error, unexpected ''<p>.$ligne['' (T_CONSTANT_ENCAPSED_STRING)

Résolu/Fermé
Feedercraft Messages postés 7 Date d'inscription dimanche 11 août 2019 Statut Membre Dernière intervention 12 août 2019 - Modifié le 12 août 2019 à 00:53
Feedercraft Messages postés 7 Date d'inscription dimanche 11 août 2019 Statut Membre Dernière intervention 12 août 2019 - 12 août 2019 à 18:17
Bonsoir, j'ai un petit souci avec une ligne de mon code (il y en a surement d'autres), j'ai un message d'erreur qui est:
syntax error, unexpected ''<p>.$ligne['' (T_CONSTANT_ENCAPSED_STRING) on line 28
Si vous pouviez m'aider ça serait super sympa, merci d'avance

Voici mon code:

<?php
        
        /*Connexion à la base de données*/
        require("../includes/dbconnection.inc.php");

 
        /*Préparation de la requête et exécution*/ 
        $requete ='SELECT clients.Nom, clients.Age, Clients.Sexe, Count(demandes.ID_Film) AS Compteur
                FROM clients 
                INNER JOIN demandes ON demandes.ID_Client = clients.ID_Client 
                INNER JOIN films ON demandes.ID_Film = films.ID_Film  
                INNER JOIN genres ON films.ID_Genre = genres.ID_Genre  
                WHERE films.ID_Genre=3 
                GROUP BY clients.ID_Client 
                ORDER BY Compteur DESC, clients.Nom ASC 
                LIMIT 10';

 

  /*Stocker le résultat dans $resultat*/
    $resultat = $con->query($requete);

 

      /*Afficher le nom du client de chaque ligne du résultat*/
        while ($ligne = $resultat->fetch()) { 
     

     /*La ligne 28 est celle juste en dessous de ce texte*/
            echo "<p>" .$ligne['Nom']. "<p>"; 

             } 

?>



EDIT : Ajout de la coloration syntaxique dans les balises de code.
EDIT2 : Déplacement du sujet dans le forum PHP
A voir également:

1 réponse

jordane45 Messages postés 38145 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 25 avril 2024 4 650
12 août 2019 à 00:57
Bonjour,

Déjà, merci de poster dans le bon forum la prochaine fois. J'ai déplacé ta question dans le forum php.
Ensuite, merci de poster le code en utilisant correctement les balises de code.
Explications disponibles ici : https://codes-sources.commentcamarche.net/faq/11288-poster-un-extrait-de-code

Et enfin, concernant ton souci...
En copiant/collant ton code, j'ai obtenu des caractères "??????" autour de ta ligne...
Il faudrait que tu vérifies que ton fichier est bien 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



1
Feedercraft Messages postés 7 Date d'inscription dimanche 11 août 2019 Statut Membre Dernière intervention 12 août 2019
12 août 2019 à 00:59
d'accord merci beaucoup
0
Feedercraft Messages postés 7 Date d'inscription dimanche 11 août 2019 Statut Membre Dernière intervention 12 août 2019
12 août 2019 à 16:22
rebonjour, j'ai bien vérifié que mon ficher et mes autres aussi par la même occasion étaient bien encodé en utf-8 sans BOM, j'ai essayé de les mettre sous un autre format et de les remettre en utf-8 sans BOM mais ça n'a rien changé toujours le même souci
0
Reivax962 Messages postés 3671 Date d'inscription jeudi 16 juin 2005 Statut Membre Dernière intervention 11 février 2021 1 011
12 août 2019 à 16:34
Bonjour,

Jordane a raison, il y a clairement des caractères bizarres. Tes espaces ne sont pas normaux.
Dans Notepad++, en affichant en ANSI ça donne :



/*La ligne 28 est celle juste en dessous de ce texte*/
            echo "<p>" .$ligne['Nom']. "<p>";

             }

Donc, conseil : supprime tous les espaces devant ton echo et devant ton accolade fermante. Ensuite tu peux les remettre avec les touches tab ou espace, normalement.

Xavier
0
Feedercraft Messages postés 7 Date d'inscription dimanche 11 août 2019 Statut Membre Dernière intervention 12 août 2019 > Reivax962 Messages postés 3671 Date d'inscription jeudi 16 juin 2005 Statut Membre Dernière intervention 11 février 2021
12 août 2019 à 16:41
d'accord, merci

j'avais remarqué ceci hier avec notepad++, j'ai bien sûr corrigé cette erreur et j'ai en même temps vérifié l'encodage et je suis bien en utf-8 sans BOM mais il y a trés certainement quelque chose qui m'échappe

Voici le code sur Notepad++:
<?php
        
        /*Connexion à la base de données*/
        require("../includes/dbconnection.inc.php");

 
        /*Préparation de la requête et exécution*/ 
        $requete ='SELECT clients.Nom, clients.Age, Clients.Sexe, Count(demandes.ID_Film) AS Compteur
                FROM clients 
                INNER JOIN demandes ON demandes.ID_Client = clients.ID_Client 
                INNER JOIN films ON demandes.ID_Film = films.ID_Film  
                INNER JOIN genres ON films.ID_Genre = genres.ID_Genre  
                WHERE films.ID_Genre=3 
                GROUP BY clients.ID_Client 
                ORDER BY Compteur DESC, clients.Nom ASC 
                LIMIT 10';

 

  /*Stocker le résultat dans $resultat*/
    $resultat = $con->query($requete);

 

      /*Afficher le nom du client de chaque ligne du résultat*/
        while ($ligne = $resultat->fetch()) { 

		echo <p>.$ligne['Nom'].<p> ; 

		} 

?>
0
Reivax962 Messages postés 3671 Date d'inscription jeudi 16 juin 2005 Statut Membre Dernière intervention 11 février 2021 1 011
12 août 2019 à 16:49
Va dans Encodage, fais « Encoder en ANSI »
Ça ne change pas le fichier, seulement la façon de l'afficher. Tu devrais voir apparaître les caractères fautifs.
0