Bonjour à tous...

J'ai un problème absolûment agaçant en ce moment : mes variables de sessions ne passent pas d'une page PHP à l'autre. Je m'explique :

le contexte est une base de données qui permet de se connecter en anonyme ou en tant que membre inscrit.
le coté membre anonyme fonctionne, vous l'aurez compris, je m'attaque maintenant aux scripts pour membre inscrit.

Pour la partie membre :
Je pars d'une fenêtre de login classique :

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
 
<?php
	include "commun/connexion.inc.php";
	//include "commun/auth-config.php";
	//include "commun/authcheck.php";
?>
 
<HTML>
	<HEAD>
		<TITLE>Gestion des opérations</TITLE>
		<META http-equiv="Content-Language" content="fr">
		<META http-equiv="Content-Type" content="text/html; charset=windows-1252">
	</HEAD>
 
	<BODY bottommargin="0" topmargin="20" leftmargin="20" rightmargin="0">
		<B>Titre</B><BR><BR>
		<FORM name="index3" method="post" action="auth.php">   
			Identifiant : <input type = "text" name="Identifiant"/><br/>
			Mot de passe : <input type = "password" name="Password"/><br/>
			<input type="submit" name="valider" value="Connection">
		</FORM>
	</BODY>
</HTML>
Cette fenêtre envoie ensuite à auth.php ce qu'à inscrit le membre en identifiant et mot de passe :

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
 
<?php
	include "commun/connexion.inc.php";
	//include "commun/auth-config.php";
	//include "commun/authcheck.php";
 
	//session_start();
	if (!IsSet($_POST['Password'])){							/*Pas de password saisi*/
		$auth=0;
		$user="moi";
		$pass="";		
		/*On donne ici, les accès de consultation uniquement*/
 
		header("Location : index2.php");
	}
	$pass=$_POST['Password'];
	if (!IsSet($_POST['Identifiant'])){							/*Pas de pseudo saisi*/
		header("Location : index2.php");
	}
	$user=$_POST['Identifiant'];
 
	if (IsSet($_POST['Identifiant']) AND IsSet($_POST['Password'])){
		$sql = "SELECT * FROM utilisateur WHERE
		Identifiant ='".$_POST['Identifiant']."' and Password='".$_POST['Password']."'";
 
		$resultat=mysql_query($sql,$id_link) or die("erreur MySQL :" .mysql_error());
		$nombre=mysql_num_rows($resultat);
		$enreg=mysql_fetch_array($resultat);
		$n_district=$enreg["N0_District"];	
		if (!$nombre || $nombre<1){								/*Password ou Identifiant faux*/
			echo 'Votre identifiant et/ou votre mot de passe sont faux.<br />
			Vous serez en mode de consultation libre uniquement.';
			require ('index2.php');
			exit;
		}
		/*Saisie profil*/
		elseif ($nombre>1 || $nombre<=3){
		//Ouvrir les formulaires auxquels l'utilisateur à accès en fonction de sa qualité
			$_SESSION['IDinscrit']=$user;
			$_SESSION['Passinscrit']=$pass;
			$_SESSION['last_access']=time();
			//echo 'Bonjour '.$user.' !';						/*Les vars sont OK ici aussi*/
			//echo 'Coucou '.$_SESSION['IDinscrit'].' !!';
			require ('consult_m.php');
			exit;
		}
		mysql_close();
	}
?>
Celle-ci fonctionne aussi comme vous pouvez le voir avec mes commentaires.

Enfin, j'arrive sur la fenêtre consult_m.php qui correspond à une page pour les membres inscrits uniquement et c'est là que çà ce corse : Elle ne voit pas les variables de sessions !

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
77
78
79
80
81
82
83
84
 
<?php
	include "commun/connexion.inc.php";
	session_start();
	//include "commun/auth-config.php";
	//include "commun/authcheck.php";
?>
 
<HTML>
	<HEAD>
		<SCRIPT language='javascript'>
			function ValideFiltre(Formulaire)
			{
				Formulaire.submit();
			}
		</SCRIPT> 
		<TITLE>Gestion des opérations</TITLE>
		<META http-equiv="Content-Language" content="fr">
		<META http-equiv="Content-Type" content="text/html; charset=windows-1252">
	</HEAD>
 
	<BODY bottommargin="0" topmargin="20" leftmargin="20" rightmargin="0">
	<B>Titre </B><BR><BR>
 
	<?php
 
		$user=$_POST['Identifiant'];
		$pass=$_POST['Password'];
		//echo 'Coucou '.$_SESSION['IDincrit'].' !!';
		/*Connexion membre*/
 
		if (IsSet($_GET['sDistrict'])){ 
			$_SESSION["N0_District"]=$_GET['sDistrict'];
		}else{
			$_SESSION["N0_District"]=isset($_SESSION["N0_District"]) ? $_SESSION["N0_District"] :1;
		}
 
		if (IsSet($_GET['sDomaine'])){ 
			$_SESSION["N0_Domaine"]=$_GET['sDomaine'];
		}else{
			$_SESSION["N0_Domaine"]=isset($_SESSION["N0_Domaine"]) ? $_SESSION["N0_Domaine"] :1;
		}
 
		if (IsSet($_GET['sUC'])){ 
			$_SESSION["N0_UC"]=$_GET['sUC'];
		}else{
			$_SESSION["N0_UC"]=isset($_SESSION["N0_UC"]) ? $_SESSION["N0_UC"] :1;
		}
 
		if (IsSet($_GET['sUser'])){ 
			$_SESSION["N0_Utilisateur"]=$_GET['sUser'];
		}else{
			$_SESSION["N0_Utilisateur"]=isset($_SESSION["N0_Utilisateur"]) ? $_SESSION["N0_Utilisateur"] :1;
		}
 
		if (IsSet($_GET['sMO'])){ 
			$_SESSION["N0_moe"]=$_GET['sMO'];
		}else{
			$_SESSION["N0_moe"]=isset($_SESSION["N0_moe"]) ? $_SESSION["N0_moe"] :1;
		}
 
		$district=$_SESSION["N0_District"];
		$domaine=$_SESSION["N0_Domaine"];
		$UC=$_SESSION["N0_UC"];
		$User=$_SESSION["N0_Utilisateur"];
		$MO=$_SESSION["N0_moe"];	
 
		if(IsSet($_SESSION['IDinscrit']) And IsSet($_SESSION['Passinscrit'])){
			echo 'Elles existent...';
			//$user=$_POST['Identifiant'];												//Vars bien récupérées
			//$pass=$_POST['Password'];
			$user=$_SESSION["IDinscrit"];
			$pass=$_SESSION["Passinscrit"];
			echo $user;
			echo $pass;
 
			print_r($_SESSION); 
			//mysql_connect("localhost",$user,$pass);										//PB de connection
			//mysql_select_db("GESTION2");
..... 
		}
	?>
	</BODY>
</HTML>
Pourriez-vous m'aider SVP ?

Merci beaucoup d'avance à tous.