Bonjour à tous,
Voila j'ai developpé un site (supposons www.toto.fr) avec un mecanisme
d'authentification par sessions PHP.
Tout marchait nikel jusqu'a ce que je migre la totalité du site dans
un sous domaine ; la nouvelle adresse du site devenant :
www.toto.tata.fr
J'ai activé avec succès la redirection de www.toto.fr vers
www.toto.tata.fr.
Cependant la gestion des sessions php ne fonctionne plus si je me
connecte directement à l'url www.toto.fr.
Seule la connexion explicite à l'adresse www.toto.tata.fr permet le
bon fonctionnement du mécanisme de sessions PHP.
Ci dessous la description détaillée de mon probleme :
Un user se logue sur www.toto.fr/login.php (l'url veritable etant
www.toto.tata.fr/login.php) et appel la page verif.php qui verifie que
le user existe dans la base. Si c'est le cas, le code suivant est
executé :
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 session_start(); session_register('id_membre'); session_register('email_membre'); session_register('login'); session_register('level'); session_register('nom'); session_register('prenom'); $_SESSION['login'] = $login; $_SESSION['id_membre'] = $id_membre; $_SESSION['email_membre'] = $email_membre; $_SESSION['level'] = $level; $_SESSION['nom'] = $nom; $_SESSION['prenom'] = $prenom; header("Location:index_membre.php");
Et c'est à partir de la que le probleme survient. Voici le code de la
page index_membre.php qui est appelée à la fin du code précédent :
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 <? session_start(); if(isset($_SESSION['id_membre'])) { $login=$_SESSION['login']; $id_membre=$_SESSION['id_membre']; $level=$_SESSION['level']; $nom=$_SESSION['nom']; $prenom=$_SESSION['prenom']; } if (!session_is_registered("id_membre")) { echo "<br><br>Erreur vous devez etre identifié !"; echo "<br>"; echo "<a href=login.php>Voulez vous vous loguer?!</a><br>"; exit(); } else { // Le user est logué et j'affiche ici les infos le concernant dans la base } mysql_close($db_link); ?>
J'obtient l'erreur "Erreur vous devez etre identifié ! etc..." ce qui prouve que les
variables de sessions n'ont pas été transmises.
Ou et comment dois je modifier le code php pour que les variables de
sessions soient transmises jusqu'à la page index_membre.php ? ? ?
un grand Merci d'avance !
Partager