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 :

Variable de session qui ne se met pas a jour


Sujet :

Langage PHP

  1. #1
    Candidat au Club
    Inscrit en
    Septembre 2005
    Messages
    4
    Détails du profil
    Informations forums :
    Inscription : Septembre 2005
    Messages : 4
    Points : 4
    Points
    4
    Par défaut Variable de session qui ne se met pas a jour
    Bonjour a tous, je suis depuis deja 2 jours en train de galérer sur un probleme vraiment a la ***...
    Je me fais un petit site qui permet l'administration de mon serveur ftp (utilisant Mysql). Le probleme se situe lors de l'enregistrement des utilisateurs...

    Dans index.php, je fais un test pour savoir si l'utilisateur est reconnu, et si tel est le cas, je change le menu de gauche pour faire un menu interactif...
    Cependant, lorsque je valide l'authentification via un $_SESSION['logged'] = "login_succes", la variable reste inchangé lors de mon test dans index.php...
    voici mon fichier index.php :

    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
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
     
    <?php
    session_start(); // On démarre la session AVANT toute chose
     
    // On s'amuse à créer quelques variables de session :
    $_SESSION['login'] = '';
    $_SESSION['mdp'] = '';
    $_SESSION['logged'] = "index";
     
    // Maintenant que le session_start est fait, on peut taper du code HTML
    ?>
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
     
    <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" >
     
       <head>
     
           <title>Gestion de votre accès ftp</title>
     
           <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
     
    	   <link href="CSS/format.css" rel="stylesheet" type="text/css" />
     
       </head>
     
       <body>
     
    		<div id="en_tete">
    			<?php include('php_files/en_tete.php'); ?>
     
    		</div>	
     
       	<div id="menu">        
       		<?php
       			switch ($_SESSION['logged']){
       			case "logged_successfully":
       			include('php_files/menu_logged.php');
       			break;
       			default:
       			include('php_files/menu.php');
       			}
       		?>     
           </div>
     
    		<div id="corps">
     
    		   <h1><?php 
    			switch ($page){
    			case "connexion":
    			include('php_files/connexion.php');
    			break;			
    			case "cible_connexion":
    			include('php_files/cible_connexion.php');
    			break;
    			case "inscription":
    			include('php_files/inscription.php');
    			break;
    			case "cible_inscription":
    			include('php_files/cible_inscription.php');
    			break;
    			default:			   
    		   include('php_files/corps.php');
    		   }
    		   ?></h1>
     
    		</div>
     
    		<div id="pied_de_page">
     
    		   <p><a href="mailto:blaaaaaa@blaaaa.fr?subject=Contact au sujet du site FTP">Contacter webmaster</a> site mis en ligne le 11/04/2008 en cours de construction</p>
     
    		</div>
     
       </body>
     
    </html>
    voici mon fichier connexion.php :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    Connexion :
     
    <h5>
    <form action="/v2/index.php?page=cible_connexion" method="post">
    <p>
    <br><br>
    Veuillez entrer votre login :
    <input type="text" name="login" /><br>
    Veuillez saisir votre mot de passe commun au serveur ftp et a cet espace : 
    <input type="password" name="mdp" /><br><br>
    <input type="submit" value="Valider" />
    </h5>
    </p>
    </form>

    et voici le ptit dernier le fichier cible_connexion.php :

    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
    <?php
    if (isset($_POST['login']) AND isset($_POST['mdp'])) // Si les variables existent
    {
        if ($_POST['login'] != NULL AND $_POST['mdp'] != NULL) // Si on a quelque chose à enregistrer
        {    
    		$_SESSION['login'] = $_POST['login'];
    		$_SESSION['mdp'] = $_POST['mdp'];
    		if (isset($_SESSION['login'])){//test des affectations des variables superglobales
    			if (isset($_SESSION['mdp'])){
    				$_SESSION['logged'] = "logged_successfully";
    				echo "<h1>Bonjour</h1>";
    				echo "<h5>Ton mdp est : </h5>";
    				echo "<h5>".$_SESSION['logged']."</h5>";
    			}
    		}
    	}
    	else { //Cas d'erreur si un des champs n'est pas remplis
    		echo "<h1>Erreur</h1>";
    		echo "<h5>Le login et le mot de passe ne peuvent etre vide...</h5>";
    	}
    }
    ?>
    De l'aide serait vraiment la bienvenue parce que je suis sur que c'est une betise a 30cents (2balles...lol) ms bon....

  2. #2
    Membre à l'essai
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    17
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 17
    Points : 13
    Points
    13
    Par défaut
    Bonjour,
    j'ai l'impression que tu répètes plusieurs fois les mêmes instructions.
    Essaie de cette façon pour voir :
    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
    <?php
     
        if ($_POST['login'] != NULL AND $_POST['mdp'] != NULL) // Si les variables existent
        {    
    		$_SESSION['login'] = $_POST['login'];
    		$_SESSION['mdp'] = $_POST['mdp'];
    		$_SESSION['logged'] = "logged_successfully";
    				echo "<h1>Bonjour</h1>";
    				echo "<h5>Ton mdp est : </h5>";
    				echo "<h5>".$_SESSION['logged']."</h5>";
    	}
    	else { //Cas d'erreur si un des champs n'est pas remplis
    		echo "<h1>Erreur</h1>";
    		echo "<h5>Le login et le mot de passe ne peuvent etre vide...</h5>";
    	}
    ?>

  3. #3
    Candidat au Club
    Inscrit en
    Septembre 2005
    Messages
    4
    Détails du profil
    Informations forums :
    Inscription : Septembre 2005
    Messages : 4
    Points : 4
    Points
    4
    Par défaut
    merci pour ta reponse rapide,tes modifications ne changent rien car en fait elles suppriment juste des tests pour savoir si les affectations de variables se font bien... (je sais je suis parano..lol)

    Le truc hallucinant c'est qu'a la fin de cette page de code (cible_connexion.php) la variable $_SESSION['logged'] me renvoi bien la chaine : "logged_successfully" (testé par un echo), mais le menu de gauche (<div id="menu">) de index.php ne se met pas a jour...

Discussions similaires

  1. [XL-2010] MFC qui ne se met pas a jour automatiquement
    Par saigon dans le forum Excel
    Réponses: 1
    Dernier message: 10/05/2012, 18h44
  2. Réponses: 21
    Dernier message: 19/05/2011, 16h03
  3. [AC-2007] Table lié qui ne se met pas a jour
    Par EmmanuelleC dans le forum Access
    Réponses: 1
    Dernier message: 16/11/2009, 16h06
  4. variables de session qui ne passent pas
    Par cels dans le forum Servlets/JSP
    Réponses: 3
    Dernier message: 28/11/2006, 10h46
  5. [JList] Composant qui ne se met pas a jour
    Par ouedmouss dans le forum Composants
    Réponses: 6
    Dernier message: 31/08/2005, 17h07

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