Problème de lien $_SESSION et $_GET... [Résolu]

Signaler
Messages postés
26
Date d'inscription
jeudi 28 février 2008
Statut
Membre
Dernière intervention
5 août 2009
-
Messages postés
26
Date d'inscription
jeudi 28 février 2008
Statut
Membre
Dernière intervention
5 août 2009
-
Je suis sur le point de m'arracher les cheveux, tout débutant que je suis en PHP, sur un problème qui s'avèrera surement idiot... mais voilà: je suis en train de faire une partie administration pour mon site, et n'arrive pas à changer de page sans que mon password ne me soit demandé à chaque fois.

J'ai donc voulu experimenter "$_SESSION"... et ça m**de! Argh, au secours!

Voilà mon code, si vous vouliez m'aider... s'il vous plait!

headerAdmin.php


       ...

   
       


       ...

       

       


       ...

           
                <li class= "toggleSubMenu">
                   
                        ARTICLES
                   
                   
                        <li>
                            [admin.php?action=rediger_articles
                                Rediger
                            ]
                        </li>
                        <li>
                            [admin.php?action=liste_articles
                                Archives
                            ]
                        </li>
                   
                </li>
           
       

       


       ...


admin.php

<?php
    session_start();
    $action = $_GET['action'];       
    if (isset($_SESSION['password'])) {
        $mot_de_passe = $_SESSION['password'];
        if ($mot_de_passe == "monmotdepasse") {
            include("connection.php");
            include("headerAdmin.php");
            if ($action == "rediger_articles") {
                include ("rediger_articles.php");
            }
            else if ($action == "liste_articles") {
                include ("liste_articles.php");
            }
            else {
            }
            include("footer.php");
        }
        else {
            include("login.php");
        }
    else {
        include("login.php");
    }
?>

login.php

<?php
    if (isset($_POST['mot_de_passe'])) {
        $mot_de_passe = $_POST['mot_de_passe'];
    }
    else {
        $mot_de_passe = "";
    }
    if ($mot_de_passe == "monmotdepasse") {
        session_start();
        $_SESSION['password'] = $mot_de_passe;
        include("headerAdmin.php");
        include("connection.php");
       ...
?>

Voilà. Et moi, j'obtient ce message d'erreur là:

Parse error: syntax error, unexpected T_ELSE in /.../htdocs/admin.php on line 22.

Le but du jeu, c'est de pouvoir passer d'une partie de l'administration à l'autre (ici rediger_articles ou liste_articles), via mon menu (dans headerAdmin), sans avoir à retaper mon mot de passe grâce au $_SESSION (définit dans login)... il y a surement une façon beaucoup plus simple pour ça, mais je suis aussi obstiné que débutant. M'enfin...

Please... help...!

2 réponses

Messages postés
2483
Date d'inscription
jeudi 30 novembre 2006
Statut
Membre
Dernière intervention
14 janvier 2011
17
Salut,

Le message d'erreur est pourtant clair : y'a un ELSE à un endroit où il n'est pas censé être.
En l'occurrence, tu n'as pas fermé le premier bloc if. Ton else qui se trouve à la ligne 22 est donc tout seul... Or, il doit forcément se trouver juste après un bloc if fermé.

Rajoute une accolade fermante avant le else, ça ira mieux...

<hr size="2" width="100%" />Neige

N'hésitez pas à lire la doc de PHP avant de poser des questions triviales...
Messages postés
26
Date d'inscription
jeudi 28 février 2008
Statut
Membre
Dernière intervention
5 août 2009

Evidemment... désolé pour le dérangement.

Je savais que ce serai quelquechose comme ça... mais un truc aussi bête, j'aurai pas imaginé. Narf! M'enfin... merci beaucoup!

Narf, a peine je met le pied dans le monde des programmeurs que je me tape déjà la honte... oh la vache... un IF mal fermé... le con! Nan mais je te jure... Bon, j'arrête de causer tout seul, sinon je vais m'enfoncer... oups, trop tard.