Erreur sur else
Résolu
ludo
-
ludo -
ludo -
Bonjour,
j'ai fait ma page de connexion
voilà
il me dit
Parse error: syntax error, unexpected 'else' (T_ELSE), expecting end of file in /var/www/ludo.org/users/ludo/www/V1/connexion/connexion.php on line 34
je sais que c'est else mais je ne vois pas ou est l'erreur
j'ai fait ma page de connexion
voilà
<?php session_start(); $titre="Connexion"; include("includes/identifiants.php"); include("includes/debut.php"); include("includes/menu.php"); echo '<p><i>Vous êtes ici</i> : <a href="./index.php">Index du forum</a> --> Connexion'; ?> <?php echo '<h1>Connexion</h1>'; if ($id!=0) erreur(ERR_IS_CO); ?> <?php if (!isset($_POST['pseudo'])) //On est dans la page de formulaire { echo '<form method="post" action="connexion.php"> <fieldset> <legend>Connexion</legend> <p> <label for="pseudo">Pseudo :</label><input name="pseudo" type="text" id="pseudo" /><br /> <label for="password">Mot de Passe :</label><input type="password" name="password" id="password" /> </p> </fieldset> <p><input type="submit" value="Connexion" /></p></form> <a href="./register.php">Pas encore inscrit ?</a> </div> </body> </html>'; } ?> <?php //On reprend la suite du code else { $message=''; if (empty($_POST['pseudo']) || empty($_POST['password']) ) //Oublie d'un champ { $message = '<p>une erreur s\'est produite pendant votre identification. Vous devez remplir tous les champs</p> <p>Cliquez <a href="./connexion.php">ici</a> pour revenir</p>'; } else //On check le mot de passe { $query=$db->prepare('SELECT membre_mdp, membre_id, membre_rang, membre_pseudo FROM forum_membres WHERE membre_pseudo = :pseudo'); $query->bindValue(':pseudo',$_POST['pseudo'], PDO::PARAM_STR); $query->execute(); $data=$query->fetch(); if ($data['membre_mdp'] == md5($_POST['password'])) // Acces OK ! { $_SESSION['pseudo'] = $data['membre_pseudo']; $_SESSION['level'] = $data['membre_rang']; $_SESSION['id'] = $data['membre_id']; $message = '<p>Bienvenue '.$data['membre_pseudo'].', vous êtes maintenant connecté!</p> <p>Cliquez <a href="./index.php">ici</a> pour revenir à la page d accueil</p>'; } else // Acces pas OK ! { $message = '<p>Une erreur s\'est produite pendant votre identification.<br /> Le mot de passe ou le pseudo entré n\'est pas correcte.</p><p>Cliquez <a href="./connexion.php">ici</a> pour revenir à la page précédente <br /><br />Cliquez <a href="./index.php">ici</a> pour revenir à la page d accueil</p>'; } $query->CloseCursor(); } echo $message.'</div></body></html>'; } ?>
il me dit
Parse error: syntax error, unexpected 'else' (T_ELSE), expecting end of file in /var/www/ludo.org/users/ludo/www/V1/connexion/connexion.php on line 34
je sais que c'est else mais je ne vois pas ou est l'erreur
Configuration: Windows / Chrome 73.0.3683.103
A voir également:
- Erreur sur else
- Erreur 0x80070643 - Accueil - Windows
- Erreur 0x80070643 Windows 10 : comment résoudre le problème de la mise à jour KB5001716 - Accueil - Windows
- J'aime par erreur facebook notification - Forum Facebook
- Code erreur f3500-31 ✓ - Forum Bbox Bouygues
- Java code erreur 1603 ✓ - Forum Windows
1 réponse
Bonjour,
- Déjà, commence par activer l'affichage des erreurs php au début de ton script
- Evite d'ouvrir/fermer inutilement les balises PHP. Tout le code que tu nous montres tiens entre <?php et ?> sans avoir besoin de fermer puis réouvrir tes balises....
- Essaye également d'écrire tes blocks IF/ELSE en suivant la norme PSR-2 https://www.php-fig.org/psr/psr-2/
- Vérifie 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 )
Je t'invite également à lire et à appliquer le contenu de ces deux liens :
https://forums.commentcamarche.net/forum/affich-37584947-php-gestion-des-erreurs-debogage-et-ecriture-du-code
https://forums.commentcamarche.net/forum/affich-37584941-php-pdo-gerer-les-erreurs
Si le souci persiste malgré cela, reviens nous voir avec le code modifié et indique nous à quelle ligne cela correspond.
Ce genre de message est souvent lié à un oublie de point virgule à la ligne précédente ou à une quote ou une parenthèse fermante oubliée.
- Déjà, commence par activer l'affichage des erreurs php au début de ton script
- Evite d'ouvrir/fermer inutilement les balises PHP. Tout le code que tu nous montres tiens entre <?php et ?> sans avoir besoin de fermer puis réouvrir tes balises....
- Essaye également d'écrire tes blocks IF/ELSE en suivant la norme PSR-2 https://www.php-fig.org/psr/psr-2/
<?php if ($expr1) { // if body } elseif ($expr2) { // elseif body } else { // else body; }
- Vérifie 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 )
Je t'invite également à lire et à appliquer le contenu de ces deux liens :
https://forums.commentcamarche.net/forum/affich-37584947-php-gestion-des-erreurs-debogage-et-ecriture-du-code
https://forums.commentcamarche.net/forum/affich-37584941-php-pdo-gerer-les-erreurs
Si le souci persiste malgré cela, reviens nous voir avec le code modifié et indique nous à quelle ligne cela correspond.
Ce genre de message est souvent lié à un oublie de point virgule à la ligne précédente ou à une quote ou une parenthèse fermante oubliée.
https://openclassrooms.com/fr/courses/1401411-creer-son-forum-de-toutes-pieces/1401751-inscription-et-connexion
il me dit ca
le code
suite a ce changement dans ce code
merci