Je ne comprend pas mon erreur, ça fonctionne sur wamp, mais lorsque j'utilise une autre sorte d'hébergement (avec filezila) ça ne fonctionne plus et me retourne cette erreur : Parse error: syntax error, unexpected end of file in /home/chevaleresk11/public_html/view/master.php on line 39

Voici le code ou il y a l'erreur,

<?php
    if (!isset($pageTitle)) $pageTitle = "Photos Manager";
    if (!isset($viewHead)) $viewHead = "";
    if (!isset($viewStyle)) $viewStyle ="";
    if (!isset($viewFooter)) $viewFooter = "";
    if (!isset($viewContent)) $viewContent = "";

    $stylesBundle = "";
    if (file_exists("view/stylesBundle.html"))
        $stylesBundle = file_get_contents("view/stylesBundle.html");
    $scriptsBundle = "";
    if (file_exists("view/scriptsBundle.html"))
        $scriptsBundle = file_get_contents("view/scriptsBundle.html");

    $localScript = "";
    if (!isset($viewScript)) {
        $viewScript = "";
    } else {
        if (file_exists($viewScript))
            $localScript =  "<script>".file_get_contents($viewScript)."</script>";
    }
    echo <<< HTML
    <!DOCTYPE html>
    <html>
    <header>
        <title>$pageTitle</title>
        $stylesBundle
        $viewStyle
    </header>
    <body>
        $viewHead
        $viewContent
        $viewFooter 
        $scriptsBundle
        $localScript
    </body>
    </html>
    HTML;
?>

Et voici le code qui appèle le précédent

<?php
//Code à ajouter
$viewContent = <<<HTML
        <span>

            <img id="logo" src="./Images/logo.png" alt="click pas">

        </span>
    <div class="containerInscriptionRegister">
        <div class=""><!--À enlever une fois fini-->
            <div class="textIdentificationRegister">Prenom :</div>
            <input class="inputs form-control" placeholder="Michel">
        </div>
        <div class=""><!--À enlever une fois fini-->
            <div class="textIdentificationRegister">Nom :</div>
            <input class="inputs form-control" placeholder="Lafleur">
        </div>
        <div class=""><!--À enlever une fois fini-->
            <div class="textIdentificationRegister">Alias :</div>
            <input class="inputs form-control" placeholder="Banane123">
        </div>
        <div class=""><!--À enlever une fois fini-->
            <div class="textIdentificationRegister">Courriel :</div>
            <input class="inputs form-control" placeholder="Courriel">
        </div>
        <div class=""><!--À enlever une fois fini-->
            <div class="textIdentificationRegister">Mot de passe :</div>
            <input class="inputs form-control" placeholder="Mot de passe">
        </div>
        <div class=""><!--À enlever une fois fini-->
            <div class="textIdentificationRegister">Confirmer le mot de passe :</div>
            <input class="inputs form-control" placeholder="Confirmation du mot de passe">
        </div>

        <button id="BoutonInscriptionRegister" onclick="document.location = 'index.php'">S'inscrire</button>
    </div>
HTML;
include "view/master.php"
?>

Est-ce qu'il y a un moyen de résoudre ce problème ?

Merci

7 réponses


Carouge10
Réponse acceptée

Bonsoir,
Pas d'erreur sur le second code
Pour le 1er il faut faire attention avec la struture HEREDOC car la syntaxe veux que le dernier élément (ici "HTML") n'ai pas de tabulation, ni d'indentation donc "coller" a gauche

GBe
Auteur

Merci à toi, je n'avais pas entendu parler de cette structure, je vais y faire plus attention MERCI

tu n'as pas entendu parler pourtant tu l'utilises

GBe
Auteur

C'est étrange, je suis des cours, mais le problème c'est que le professeur ne dit pas ce genre de truc là ...

Bonjour.
Il y a aussi l'espace entre les 3 < et le HTML dans le premier code qui ne devrait pas exister.
Autant pour le second code je peux comprendre que tu utilises la structure HEREDOC pour stocker du contenu dans des variables, mais pas pour le premier étant donné que tu fais directement de l'affichage et non du stockage dans une variable.
Par conséquent la structure HEREDOC pour le premier code est totalement inutile.

GBe
Auteur

Oh, je vais y faire attention, faut vraiment que j'en apprenne plus, Merci :)

c'est en faisant des erreurs que l'on apprend