IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

Gestion des sessions


Sujet :

Langage PHP

  1. #1
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Janvier 2010
    Messages
    1
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2010
    Messages : 1
    Points : 1
    Points
    1
    Par défaut Gestion des sessions
    Bonjour,

    Je ne sais pas si je suis au bon endroit quoi qu'il en soit voici mon problème.
    J'ai 2 pages PHP (L.php et P.php).

    L : Login
    P : Page privée

    Si je résume lorsque l'on clique sur la page L et on rentre le bon code: on accède à la page P(Privée).

    Par contre si des petits malins veulent accéder à la page P sans le mot de passe normalement ils ne peuvent puisque il y a la protection if (!isset ($_SESSION['code'])), cependant mon code ne fonctionne pas.

    Voici les codes respectifs de L et P

    Code L:


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    <?php
    session_start();
    if(isset($_POST['bouton']))
    {
    	if($_POST['code']=='123')
    		{
     
    		$_SESSION['code']='123';
     
    		header("Location:PP.php");
    		}
    	else
    		{
    		$erreur="code incorrect";
    		}
    }
    ?>
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>Login</title>
    </head>
     
    <body>
    <?php
    //affichage d'un tableau
    echo "<pre>";
    print_r($_POST);
    echo "</pre>";
    ?>
    <?php
    if(isset($erreur)) echo "<h2>VOTRE CODE EST INCORRECT</h2>";
    ?>
     
    <form id="monform" name="form1" method="post" action="L.php">
      <p>
        <label>Code :
          <input type="text" name="code"  />
        </label>
      </p>
     
      <p>
        <label>
          <input type="submit" name="bouton"  value="Envoyer" />
        </label>
      </p>
    </form>
    </body>
    </html>
    Code P:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
     
    <?php
    session_start();
     
    if (!isset ($_SESSION['code']))
    {
    	//print_r ($_SESSION);
    	header("Location:L.php");
     
    	}
    ?>
     
     
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>Document sans nom</title>
    </head>
     
    <body>
    <h1>PAGE PRIVEE</h1>
     
    </body>
    </html>
    Par avance merci pour votre aide,

    Sitejmr,

  2. #2
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    Il manque un espace dans ta redirection.
    On ajoute un exit() pour être sûr après.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    if (!isset ($_SESSION['code'])){
    	header("Location: L.php");
            exit();
    }
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  3. #3
    Membre du Club Avatar de leblogueurduweb
    Homme Profil pro
    Directeur technique
    Inscrit en
    Juin 2013
    Messages
    33
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France

    Informations professionnelles :
    Activité : Directeur technique
    Secteur : Bâtiment

    Informations forums :
    Inscription : Juin 2013
    Messages : 33
    Points : 50
    Points
    50
    Par défaut
    Citation Envoyé par sabotage Voir le message
    Il manque un espace dans ta redirection.
    On ajoute un exit() pour être sûr après.
    ++ avec toi en précisant, que ta phrase veux dire:
    pour être sûr après. == tout code de reroutage n'aréte pas l'exécution en entier du PHP en cours sauf s'il rencontre exit;
    Bonne soirée.

Discussions similaires

  1. Gestion des sessions avec applet
    Par Mister Nono dans le forum Servlets/JSP
    Réponses: 2
    Dernier message: 01/08/2006, 18h27
  2. [JSP] Gestion des sessions
    Par ze veritable farf dans le forum Servlets/JSP
    Réponses: 10
    Dernier message: 28/06/2006, 10h44
  3. [Struts][JSP]gestion des session en JSP
    Par zola dans le forum Struts 1
    Réponses: 6
    Dernier message: 27/04/2006, 16h23
  4. gestion des sessions
    Par jeff_! dans le forum Langage
    Réponses: 4
    Dernier message: 20/03/2006, 22h09
  5. [tomcat] gestion des sessions
    Par sebos63 dans le forum Tomcat et TomEE
    Réponses: 2
    Dernier message: 12/10/2004, 14h25

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo