Variables sessions partagées sur un même navigateur ouvert plusieurs fois?


if(!isset($_SESSION["test"])){
   $_SESSION["test"]="ok";
   echo "existe pas";
}else{
   echo "existe";
}

J’ai essayé ce petit test…
Alors, j’ouvre firefox, il me met “existe pas” normal.
J’ouvre une AUTRE session firefox pas un onglet, mais une fenetre différente
et là il me met “existe”
:confused: :confused: :confused: :confused: :confused: :confused: :confused:
Normal ???
Avec les autres navigateurs, idem
PAr contre IE6 me met “existe pas” la seconde fois, parce qu’il ne gère pas les onglets…
Bizarre non ???

Et si j’ouvre plusieurs navigateurs différents, j’ai “existe pas” partout, ce qui est normal…
Seul IE6 réagi bien alors??

Nouvelle fenetre = nouvelle instance = nouvel utilisateur
IE6 me semble plus logique… :paf:
Edité le 17/01/2009 à 18:44

nouvelle fenetre = nouvelle instance (dépend de comment ca a été programmé) mais en aucun cas nouvel utilisateur :wink:

Par exemple Clubic, tu tu connectes dessus avec un onglet. Tu vois la liste des sujets et clique droit pour “ouvrir dans un nouvel onglet” -> tu vas pouvoir visualiser la page TOUT en restant connecté !

Les connections sont gérés avec des cookies (pour la session aussi je crois). Il me semble que pour un utilisateur et un naviagteur donné, tous les cookies sont stoqués au meme endroit.

Par contre que comprend pas vraiment pourquoi cela ne fonctionne pas avec IE6. Lorsque tu actualise la page, IE6 affiche bien “existe” ?

Oui, je sais bien que les sessions sont stockées via des coolies, mais imagine le scénario suivant :
Je suis sur mon poste, pour reprendre ton exemple, sur clubic avec mon login/passwd, j’ai un pote qui arrive et il souhaite allez voir ses messages, il ouvre une nouvelle fenetre sur clubic et entre son login/passwd, conséquence, il me “bouffe” le miens…???
Ben, perso, je vois une nouvelle fenetre ( pas un onglet) comme un “new user”, mais bon, si ça été développé comme ça, on va pas nager contre la marée, mais pour moi, c’est pas logique.
Même en travaillant avec des coockies, il devrait y a voir la possibilité de récupérer l’instance de la fenêtre utilisée et la lier au login/passwd…
Pour ce qui est d’IE6, je n’ai pas fait le test, j’ai installé IE7, mais je vais remettre IE6 pour voir.
Mais je suis certain qu’il m’affichera “existe pas” quelque soit le nombre de fenetre ouverte :
Je suis en train de faire un site, et lorsque j’avais IE6 d’installé, j’avais (exemple), $_SESSION[“test”]=“aaa” sur une fenetre,
et sur l’autre $_SESSION[“test”]=“bbb”. Quand je modifiais la valeur en “ccc”, l’autre fenetre ne prenait pas en compte ce changement, elle gardait bien “bbb” (!!!)
Alors qu’avec IE7 et les autres (FF / opéra / netscape etc…) répercutent le changement à toutes les instances ouvertes (même navigateur)… Alors question :
Est-ce à cause de la gestion des onglets? vu qu’IE6 ne propose pas d’onglets?
Mais bon, je vais remettre mon image d’XP, j’ai IE6 dessus…

nouvelle fenetre = nouvel utilisateur je suis d’accord qu’il s’agit d’un point de vue. Pour moi différents onglets ou différentes fenêtres représentent la même chose, il s’agit juste d’une ergonomie différente pour l’utilisateur (bon après je dit pas que c’est codé de la même manière …)

Au départ, les navigateurs n’avaient pas d’onglets. Je pense que les navigateurs comme firefox voulaient permettre à l’utilisateur de pouvoir faire différentes choses en même temps en étant connecté qu’une seule fois (mon exemple de clubic).

Je pensais qu’il en était de même pour IE6. Et chose bizare, il me semble que je pouvais faire ca avec IE6 (mais bon j’admet que ma mémoire peut être défaillante).

Donc je comprend vraiment pas …

Alors, je viens de remettre mon image avec IE6 rien pour confirmer ce que j’avance…
Et je confirme donc, il m’affiche “existe pas” autant de fois que de nouvelle fenêtre ouverte, ce qui me semble, à moi, tout à fait logique…
Comme je l’ai dit plus haut, si un pote viens chez moi, il se logue dans une nouvelle fenêtre sans détruire ma session…
Pour moi, les nouveaux navigateurs mutli-onglets gérent mal les sessions.
J’espère qu’un patch sortira…on peut toujours rêver…:paf:
Edité le 17/01/2009 à 23:26

Mais lorsque tu actualise la page, il affiche bien “existe” ??
Et, as tu fait le test sur clubic ?

Oui, quand je réactualise la page, elle affiche “existe”, et une fois la variable session définie, j’ouvre une autre fenetre IE6, et elle m’affiche “existe pas”.
Quant au test sur clubic, j’ai pas pu tester, je n’ai personne pour le moment qui possède un compte…