Seite 1 von 1

Mehrstufiges Formular: Datenweitergabe

Verfasst: 07.02.2010 14:20
von Deftone
Wie kann ich temporäre Daten weitergeben? $_SESSION funktioniert nicht.

Folgendes Problem:

Ich arbeite grade an einer mehrstufigen Erstellung neuer Threads für mein Forum.
Es soll ungefähr so laufen:
Schritt 1: Auswahl von einem Forum
Schritt 2: Zusätzliche Daten zum eigentlichen Thread wie z.B. Betriebssystem, Prozessor etc.. Also Daten die für die Beantwortung des Themas hilfreich sind.
Schritt 3: Eingabe des Textes
Schritt 4: Vorschau
Schritt 5: Absenden

So weit klappt das auch alles,
jetzt habe ich allerdings 3 Formulare, deren Daten ich am Ende zusammen in die DB eintragen möchte bzw. die auch nach einer Vorschau vorhanden sein müssen.
Ich möchte ungern für jedes Feld in Schritt 2 ein hiddenField in Schritt 3 und 4 anlegen.
Eigentlich sollte das ja mit $_SESSION möglich sein, aber die scheint immer geleert zu werden

auch wenn ich die Session/User-Klasse nutze klappt es nicht
$user->data['temp_betriebssystem'] ist nach einer Vorschau leer


hat da vlt jemand eine Idee/Lösung?

Re: Mehrstufiges Formular: Datenweitergabe

Verfasst: 07.02.2010 14:25
von Pyramide
Entweder du legst für jedes Feld ein hidden field an oder du erstellst in der Datenbank eine Tabelle, wo du die Daten zwischenspeicherst und übergibst dann Primärschlüssel. Die Nutzung von $_SESSION funktioniert spätestens dann nicht mehr, wenn der Benutzer zwei Formulare in zwei Browserfenstern/-Tabs aufmacht.

Re: Mehrstufiges Formular: Datenweitergabe

Verfasst: 07.02.2010 15:32
von Deftone
Danke für die schnelle Antwort.
Da kein weg an den hiddenfields vorgeht, nutze ich jetzt ein serialize() für die Daten. Dann brauche ich nur ein hiddenfield.

Re: Mehrstufiges Formular: Datenweitergabe

Verfasst: 20.02.2010 05:14
von djchrisnet
Die Verwendung von Javascript macht es möglich, durch ein click-event gesteuert, <div> container anzuzeigen und/oder auszublenden.

Dabei ist jeweils nur ein div sichtbar. Den Vorschau Step kann man erzwingen, im unteren bereich würde sich jeweils ein Button befinden, die durch onclick die funktion auslöst. In Div 4 wird der Vorschau Button angezeigt und in der Vorschau Ansicht dann der Ansenden Button