Pb de sessions php

Résolu
l_epais Messages postés 140 Date d'inscription   Statut Membre Dernière intervention   -  
l_epais Messages postés 140 Date d'inscription   Statut Membre Dernière intervention   -
Salut tt le monde,

J'ai en core un pb à la noix en php.
Je suis entrain d'essayer de faire communiquer 2 fenetre dans generer par deux module independant qui ont pour le moment chacun une session independante.

Mon voeux le plus chere, c'est que
- soit ces deux module du meme logicielle utilise la meme session
- soit réussir à sortir les données d'une session pr la communiquer à l'autre,

mais je sais pas comment faire...

merci pr votre aide

@plus
A voir également:

4 réponses

hafidodido Messages postés 40 Date d'inscription   Statut Membre Dernière intervention   10
 
slt
vous utilsez une base de données ou non
vous pouvez m'expliquer bien qu'est ce que vous voulez faire??
-1
l_epais Messages postés 140 Date d'inscription   Statut Membre Dernière intervention   31
 
j'utilise une base de donnée mysql. Enfin pour etre précis chacun des modules utilise une base de donnée mysql, dont je fais la fusion actuellement.
J'ai réussi à faire le lien entre les deux base, mais je n'arrive pas à fusionner les variables super globale php

merci
-1
kryoportail Messages postés 222 Date d'inscription   Statut Membre Dernière intervention   125
 
Salut,

Effectivement c'est un problème à la noix ! lol

Je dirais que faire 'cohabiter' 2 sessions PHP pour le même utilisateur est impossible.

Pour répondre à cette question, il faut savoir comment les session PHP fonctionnent :

- Tu fais un 'session_start();', PHP crée un tableau en mémoire pouvant contenir ce que j'appelle l'environnement utilisateur (le fameux $_SESSION[]) et un identifiant permettant de le retrouver.
- Lorsque PHP enverra la page au navigateur, il définit un Cookie nommé par defaut 'SESSIONID', ce dernier contient l'identifiant de la session de l'utilisateur.
- Le navigateur en recevant la page crée le cookie sur l'ordinateur du client (rattaché au domaine).
- Lorsque le navigateur effectuera une nouvelle requête au près du serveur, il renverra le cookie 'SESSIONID' si il n'a pas expiré (généralement en dessous de 30 minutes).
- PHP cherche en mémoire le tableau $_SESSION[] à partir de l'identifiant contenu dans le cookie renvoyé par le navigateur.
- Le développeur peut alors récupérer les objets précédemment placé dans le tableau $_SESSION[]...
- Et ainsi de suite.

Comme il ne peut y avoir qu'un seul cookie 'SESSIONID' pour le domaine, il ne peut y avoir qu'une session par utilisateur (du moins par navigateur) !...


La seule solution que je voit, c'est de créer 2 sections dans ton tableau SESSION, un pour chaque module :
$_SESSION['module1] =array();
$_SESSION['module2] =array();

Tu placeras alors tes variables utilisateurs dans les 2 tableaux et le tour est joué !..

Amicalement,
-1
l_epais Messages postés 140 Date d'inscription   Statut Membre Dernière intervention   31
 
Merci, de m'avoir répondu.

Mon probleme c'est que va savoir pourquoi il me crée une session phpid et une session webmailid a opartir du meme domaine... pour chaque utilisateur.

Ca vient surement du fait que j'ai 2 session_start... Mais si j'en supprime un pluis rien ne marche...

Comme je l'ai dit plus haut j'essaie de fusionner 2 modules en un seul pour une interface plus user friendly. Il est clair que je préférerais travailler sur la meme session mais je sais pas comment indiquer a mon module webmail qu'il lui faut utiliser la session principal...

Au fait désolé de pas avoir répondu plus tot mais je termine à 17heure et j'allume pas mon pc le weekend... concession fait a ma copine lol

@plus merci
-1
l_epais Messages postés 140 Date d'inscription   Statut Membre Dernière intervention   31
 
Alors pour les lulus que ça intéresse y a qqn d'autre qui avait codé le module de mon webmail. Et ce qqn a utiliser la fonction init_set au lieu des fonction de session tel que session_name() pour définir les cookie et les variable interne. du coup je trouvais pas ou étais uinstancie ce cookie.

J'ai enfin trouvé ce truc que j'ai modifie et tout marche
ini_set('session.name', 'PHPSESSID'); (c'est quand même *** de mettre un init_set pour instancié la valeur par defaut....)

Merci pour ceux qui onnt essayer de m'aider

@plus
-1