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 :

pb redirection constante, variable session vide


Sujet :

Langage PHP

  1. #1
    Membre habitué
    Homme Profil pro
    Inscrit en
    Mai 2006
    Messages
    214
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 214
    Points : 169
    Points
    169
    Par défaut pb redirection constante, variable session vide
    bonjour,

    voilà j'explique le topo :
    je fais un site, et dedans j'ai une section produit ou l'on peux voir les prix des articles proposer par l'entreprise, mais pour pouvoir les voir, le patron m'a demander de faire en sorte qu'il n'y ai que les personne enregistrer dans la base qui puisse y avoir accès! mon problème c'est que ma variable session se vide toute seule je pense que c parce qu'elle n'est pas transmise dans la page suivante!
    enfin voilà le code j'espère que l'on pourra résoudre ce problème ensemble
    page de connexion
    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
    <DIV class="droite">
    <?php
    if (isset($_SESSION["ID"]))
    	{
    		echo '<meta http-equiv="refresh" content="0;URL=index.php?PageDemandee=13">';
    		exit(); 
    	}
    	else
    	{
    		require("BaseDeDonnees/AccesBDDRequete.php");
    		if (isset($_REQUEST["Login"]) && isset($_REQUEST["Pwd"])) 
    		{
    			$Login = $_REQUEST["Login"];
    			$Password = $_REQUEST["Pwd"];
                            //ici c bon les deux variable sont bien instencier.
    			$SQL="SELECT * FROM t_clients WHERE EntrepriseClient='$Login' AND Password='$Password';";
    			$RetourRequeteUtilisateur=Fonc_AccesBDDRequete($SQL) or die ("requete SQL erronée");
    			if(mysql_num_rows($RetourRequeteUtilisateur)==0)
    			{
    ?> <P>Nom d'utilisateur ou mot de passe incorect!</P>
    <?php
    			}
    			Else
    			{
    				$_SESSION["NumSession"]=session_id();
    				$_SESSION["ID"]=$Login;
    				//ici aussi c bon la variable session s'instencie correctement
    				echo '<meta http-equiv="refresh" content="0;URL=index.php?PageDemandee=13">';
    				exit(); 
                                     //la page demandée 13 s'affiche correctement du moins on passe bien a la page demandée 13...
    			}
    		}
    		Else
    		{
    				echo "ID=".$_SESSION["ID"]."<BR>";
    			echo "Chère client merci de bien vouloir vous identifier avant toute commande.";
    			?>
    			<form name="FormConexion" action="Enregistrement.php" method="post">
    			<p>Page de connexion client</p>
    			<table>
    				<tr >
    					<td ><b>Nom de votre entreprise</b></td>
    					<!-- *************** zone de  login ****************-->
    					
    					<td ><Input type="text" name="Login" ></td>
    				</tr>
    				<tr >
    					<td ><b>Votre mot de passe<b></td>
    					<!-- ***************  zone de mot de passe ****************-->
    					<td ><Input type="password" name="Pwd"></td>
    				</tr>
    				<tr >
    					<!-- ***************  le bouton d'envoi ****************-->
    					<td colspan="2"><Input name=cmdOK type="submit" Value="Connection"></td>
    				</tr> 
    			</table>
    			</form> 
    		<?php
    		}//Endelse isset($_REQUEST["Login"]) && isset($_REQUEST["Pwd"]))
    	}//Endelse isset($_SESSION["ID"])
    	?>
    </DIV>
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    <?php
    			echo "ID=".$_SESSION["ID"]."<BR>";
    	if (!isset($_SESSION["ID"]))
             //ici il y  a un problème la variable session est vide
    	{
    		//echo '<meta http-equiv="refresh" content="0;URL=index.php?PageDemandee=2">';
    		exit();
    	}
    	else
    	{affichage de la page et la il n'y a pas d'erreur car si j'enlève la partit qui test la variable session tout marche bien!}
    règle numéro 12 : toujours s'offrir une entrée charismatique !

  2. #2
    Membre éclairé
    Avatar de Dia_FR
    Homme Profil pro
    Développeur Web
    Inscrit en
    Avril 2006
    Messages
    512
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Avril 2006
    Messages : 512
    Points : 708
    Points
    708
    Par défaut
    on sait jamais : tu mets bien session_start(); au tout début de chacune des pages ?
    Dia [ Page DVP ] [ Site pro ]

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Août 2006
    Messages
    379
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 379
    Points : 422
    Points
    422
    Par défaut
    Je ne vois pas de session_start().

    Le problème peut venir de là.

  4. #4
    Membre habitué
    Homme Profil pro
    Inscrit en
    Mai 2006
    Messages
    214
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 214
    Points : 169
    Points
    169
    Par défaut
    pour le session start il est mit sur la page 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
    <?php
    		session_start();
    ?>
    <html>
    <head><title>Lagadec Primeurs</title>
    	<link rel="Stylesheet" href="StyleSite.css" type="text/css">
    	<SCRIPT  language="javascript" src="FichierDeScripts.js"></SCRIPT>
    </head>
    <body>
    	<?php
    	/* vérification  et reception de la valeur envoyé dans l'URL */
    	if(isset($_REQUEST["PageDemandee"]) && ! empty($_REQUEST["PageDemandee"]))
    		{$page=$_REQUEST["PageDemandee"];}
    	else /* si aucune valeur (lors du premier appel de la page) mise à 0 */
    		{$page=1;}
    	include('EnTete.php');
    	include('Gauche.php');
    	switch ($page)
    		{
    			case 1:
    		    	include('DroiteNews.php');
    			    break;
    			case 2:
    		    	//include('DroiteProduits.php');
    				include('Enregistrement.php');
    			    break;
    			case 3: 
    		    	include('DroiteInscription.php');
    			    break; 
    			case 4: 
    		    	include('DroiteCaddy.php');
    			    break;
    			case 5: 
    		    	include('DroiteAdministration.php');
    			    break;
    			case 6:
    		  		include('DroiteSaveCommande.php');
    				break;
    			case 7:
    		  		include('DroitePartenaires.php');
    				break;
    			case 8:
    				include('MentionsLegales.php');
    				break;
    			case 9:
    				include('DroiteHistorique.php');
    				break;
    			case 10:
    				include('DroiteQqChiffres.php');
    				break;
    			case 11:
    				include('DroitePtFort.php');
    				break;
    			case 12:
    				include('DroiteDiapo.php');
    				break;
    			case 13:
    				include('DroiteProduits.php');
    				break;
    			default:
    		 		include('DroiteNews.php');
    			    break;
    		} 
    	include('PiedDePage.php');
    	?>	
    </body>
    </html>
    règle numéro 12 : toujours s'offrir une entrée charismatique !

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Août 2006
    Messages
    379
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 379
    Points : 422
    Points
    422
    Par défaut
    Il faut qu'il soit spécifier à chaque début de page ou les sessions sont utilisées.

  6. #6
    Membre habitué
    Homme Profil pro
    Inscrit en
    Mai 2006
    Messages
    214
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 214
    Points : 169
    Points
    169
    Par défaut
    vue que toute les pages sont utiliser sur index.php c'est le cas, j'ai un caddie qui marche avec une variable session et sa marche impec avec juste le session_start() sur la page index.php car les autre page s'affiche suivant la page demander et c dans le switch qu'il est décider de la page a afficher dans la division droite!
    règle numéro 12 : toujours s'offrir une entrée charismatique !

  7. #7
    Membre habitué
    Homme Profil pro
    Inscrit en
    Mai 2006
    Messages
    214
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 214
    Points : 169
    Points
    169
    Par défaut
    en faite je vient de trouver!! c'est du au faite que je vais sur la page enregistrement. php au lieu de index.php?PageDemandee=2
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <form name="FormConexion" action="Enregistrement.php" method="post">


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <form name="FormConexion" action="index.php?PageDemandee=2" method="post">


    voilà ce que ça aurais du être...

    aurevoir et merci
    règle numéro 12 : toujours s'offrir une entrée charismatique !

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. ASP : Variable "Session" vide
    Par lediz dans le forum ASP
    Réponses: 2
    Dernier message: 30/06/2011, 11h22
  2. Variable de session vide
    Par lelapinou dans le forum Langage
    Réponses: 1
    Dernier message: 26/09/2007, 18h24
  3. Réponses: 1
    Dernier message: 20/09/2007, 15h54
  4. Variables de session vides !
    Par juliotte dans le forum Langage
    Réponses: 12
    Dernier message: 11/08/2006, 10h12
  5. Redirection header suite à variable session
    Par jive dans le forum Langage
    Réponses: 13
    Dernier message: 05/07/2006, 01h01

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