comment créer une session différente dans nouvelle fenêtre ?

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : comment créer une session différente dans nouvelle fenêtre ?

par Ryle » 06 mai 2007, 13:25

Ben ce sont bien des scripts différents dans chaque fenêtre nan ? donc chacun est capable de savoir les valeurs qu'il utilise (tu peux coller une constante en début de script par exemple :))

Et puis connaissant les différents scripts que tu mets en place, tu sais quelles sont les constantes disponibles, tu peux donc facilement testes les index pour savoir s'ils existent ;)

par zouetchou » 04 mai 2007, 18:01

Mais j'y pense...pour parcourir le tableau il faut savoir sur quelle fenêtre on se trouve.

Donc le problème reste comment identifier chaque fenêtre de façon distincte.

par Invité » 04 mai 2007, 17:55

Pas bête :D
Je vais tester la chose :D

Merci,

par Ryle » 04 mai 2007, 17:07

Je ne suis pas sur d'avoir tout bien compris, alors je me lance et pis si c'est pas ça, bah ça sera un coup pour rien ;)

Dans ton tableau $_SESSION, tu peux stocker aussi bien des valeurs que des sous-tableaux. Ne peut on pas imaginer un sous-tableau par fenêtre par exemple ? ainsi tu n'as bien qu'une session mais tu conserves dedans toutes les valeurs saisies dans tes différentes fenêtres sans les écraser, et tu peux aisément retrouver en parcourant les tableaux avec des foreach par exemple :)
// page 1
$_SESSION['page_1'] = array();
$_SESSION['page_1']['nom'] = ...;
$_SESSION['page_1']['prenom'] = ...;

// page 2
$_SESSION['page_2'] = array();
$_SESSION['page_2']['profession'] = ...;
...
avec bien sur des noms plus explicites que page_1 ;)
quoi t'en dis ?

par zouetchou » 04 mai 2007, 16:23

Ben en fait des informations différentes sont affichées dans une nouvelle fenetre en fonction de la selection du visiteur dans une liste principale.

Chaque clic dans chaque fenêtre affiche d'autres informations en rapport avec l'information de départ choisie dans la liste.

Le problème avec les variables de sessions est que si l'on passe d'une fenêtre à l'autre on fini par afficher uniquement les informations sur la dernière sélection faite dans la liste ( vu qu'il s'agit du même processus).

Donc est-il possible de mémoriser chaque information de départ pour chaque fenêtre sans être obliger de transmettre systématiquement un identifiant par l'url? Via le nom des fenêtres par exemple :? ?

Je ne suis pas sûr d'avoir été clair :oops:

par Ryle » 04 mai 2007, 15:44

Mais si tu nous disais ce dont tu as besoin, on pourrait peut être te trouver une autre solution pour le faire ? :)

par Invité » 04 mai 2007, 15:34

Je m'en doutais :cry:

par Ryle » 04 mai 2007, 15:22

Tu ne peux pas... la session est un lien établi entre le serveur et un process du navigateur. Ouvrir une nouvelle fenêtre aura pour effet de partager la session et il faut que l'utilisateur relance un nouveau navigateur (et que celui-ci s'ouvre dans un nouveau processus) pour qu'une nouvelle session soit créée.

Ceci dit, dans la mesure où la session à pour but d'identifier l'utilisateur connecté et de le suivre, il n'y a aucun intérêt à créer deux sessions pour un même user, et tu dois très certainement pouvoir résoudre ça avec un peu de developpement en fonction de ton besoin précis :)

comment créer une session différente dans nouvelle fenêtre ?

par zouetchou » 04 mai 2007, 15:13

Bonjour,

Je voudrais créer une session différente de la session active lors d'un clic sur un lien permettant d'ouvrir une nouvelle fenetre.

Comment faire ?

Merci,