phpbar.de logo

Mailinglisten-Archive

[php] multipage-form

[php] multipage-form

Lutz Zetzsche Lutz.Zetzsche at sea-rescue.de
Mon Sep 26 15:28:06 CEST 2005


Hallo Lars,

LB schrieb:
> hallo
>
> ich hab ein formular welches über einige seiten geht, die gesammelten
> informationen werden in einer session-variable (array) abgelegt. das
> ganze läuft ab innerhalb der hauptseite, also nicht in einem popup. ich
> verwende die session id, die ich beim besuch der seite zu beginn
> automatisch vergebe. die soll dann im endeffekt etwa ne 1/2h gültig sein.
>
> das problem, welches ich vorher leider nicht bedacht habe ist, dass wenn
> ich nun dasselbe formular zb. mit dem firefox in einem neuen tab öffne,
> wird keine neue session-id vergeben, da ein neuer tab keine neue instanz
> von firefox bedeutet (denke ich).
>
> da die schon eingegebenen formulardaten solange automatisch wieder in
> die entspr. formulare eingetragen werden, wie die session existiert,
> werden diese daten auch beim öffnen eines neuen tabs (hier: in firefox)
> wieder ins formular geladen, bzw. eben andere werte auch entsprechend
> übernommen.
>
> aber genau das soll nicht so sein. wenn ich einen neuen tab öffne,
> sollten die daten des ersten geöffneten formulars bestehen bleiben und
> das neue formular komplett als neue "instanz" ausgefüllt werden können.
>
> jetzt frage ich mich, wie ich das am besten machen soll. vielleicht hat
> ja hier jemand einen guten lösungsansatz?

ich weiß nicht genau, wie Du dieses mehrseitige Formular bei Dir
realisiert hast. Davon hängt ein Bißchen die Lösung Deines Problems ab.

Ein Lösungsansatz aus meiner Sicht wäre aber, neben der Session-ID eine
eindeutige Fenster-ID zu verwenden. Diese generierst Du per Javascript und
weißt sie mit Javascript dem Fenster als Namen zu, wenn dem Fenster von
Deinem Formular noch kein Name zugewiesen wurde. Du schleppst dann die
Fenster-ID über das Formular mit, ohne sie in der Session abzulegen. Dann
kannst Du bei jedem Seitenaufruf prüfen, ob Du es mit einem neuen Fenster
zu tun hast.

So als grobe Skizze. Es ist sicherlich etwas komplizierter, als ich es
hier beschrieben habe, der Ansatz sollte aber zum Ziel führen. Er
funktioniert allerdings nur, wenn im Browser Javascript aktiviert ist.


Viele Grüße

Lutz


php::bar PHP Wiki   -   Listenarchive