Hallo!
Ziel ist es zwischen mehreren Formularen mittels "Weiter" und "Zurück" blättern zu können, ohne dass einmal gemachte Eingaben verloren geht.
Gibt es dazu vielleicht schon ein fertiges Beispiel?
Wenn nicht, hier meine Idee (die leider nicht komplett hin haut):
zuerst ruft man "formStepStart.htm" auf
=============================
Darin enthalten ist lediglich:
- ein hidden Feld namens schritt ; damit wird später unterschieden, in welchem Formular/Schritt man sich befindet; der Wert wird auf 0 gesetzt.
- ein Button in einem Formular, der formStepNext.htm aufruft
formStepNext.htm sieht so aus:
======================
- es wird zunächst die Variable $schritt um 1 erhöht
- dann folgt eine switch-case Abfrage
bei 1 wird include("formStep1.htm"); angewendet
bei 2 wird include("formStep2.htm"); angewendet etc.
- Achtung: formStepNext hat sonst eigentlich keine Buttons, etc. diese sind dann in den einzelnen formStepX enthalten
formStep1.htm sieht so aus:
====================
- ein Textfeld z.B. für "Betreff"
- ein Button "Weiter" in einem Formular wie das Textfeld
Als Action wird wieder "formStepNext.htm" aufgerufen
WOBEI zu beachten ist: formStep1.htm wurde ja bereits in formStepNext.htm included
=> und vielleicht liegt daran der Fehler der auftritt?!?!
nämlich folgender:
von formStepStart wird ja die hidden Variable $schritt initialisiert und ordentlich wie in einem Tutorial hier mitgeschleift zu formStep1.htm
$schritt wird auch ordnungsgemäß in formStepNext.htm hochgezählt (beim Schritt von formStepStart ---> formStepNext
Nur wenn formStep1.htm wiederum formStepNext aufruft, in das es ja aber included ist, wird die Variable $schritt nicht nochmals hochgezählt
alle Seiten ausser der formStepStart.htm enthalten die im Tutorial beschriebenen Anweisungen um die Variablen mit in andere Seiten zu schleifen.
Wenn man sich einzeln von einer in die nächste Seite hangelt, klappt das auch. Nur mit diesem switchen in formStepNext scheint das nicht zu klappen. Nicht vergessen: formStepNext dient dazu, dass man den Zähler $schritt hochschaltet und die nächste Seite anzeigt; denn nur so kann man realisieren, dass es auch ein formStepBack.htm gibt, das entsprechend den Zähler verringert und diese entsprechende Vorgänger-Seite anzeigt.
Also nochmal: das normale fortschreiten, indem man direkt auf die nächste Seite verweist geht, der Trick mittels formStepNext geht nicht, ist aber notwendig um vor und zurückblättern zu können.
Wenn jemand weis, warum das nicht geht, vielleicht weil sich die Seite verschachtelt erstellt und diese erstellte dann nochmal selbst aufruft?
... Oder wenn jemand ein Beispiel hat, oder irgendwie eine Idee
schreibt mir bitte ...
Ziel ist es zwischen mehreren Formularen mittels "Weiter" und "Zurück" blättern zu können, ohne dass einmal gemachte Eingaben verloren geht.
Gibt es dazu vielleicht schon ein fertiges Beispiel?
Wenn nicht, hier meine Idee (die leider nicht komplett hin haut):
zuerst ruft man "formStepStart.htm" auf
=============================
Darin enthalten ist lediglich:
- ein hidden Feld namens schritt ; damit wird später unterschieden, in welchem Formular/Schritt man sich befindet; der Wert wird auf 0 gesetzt.
- ein Button in einem Formular, der formStepNext.htm aufruft
formStepNext.htm sieht so aus:
======================
- es wird zunächst die Variable $schritt um 1 erhöht
- dann folgt eine switch-case Abfrage
bei 1 wird include("formStep1.htm"); angewendet
bei 2 wird include("formStep2.htm"); angewendet etc.
- Achtung: formStepNext hat sonst eigentlich keine Buttons, etc. diese sind dann in den einzelnen formStepX enthalten
formStep1.htm sieht so aus:
====================
- ein Textfeld z.B. für "Betreff"
- ein Button "Weiter" in einem Formular wie das Textfeld
Als Action wird wieder "formStepNext.htm" aufgerufen
WOBEI zu beachten ist: formStep1.htm wurde ja bereits in formStepNext.htm included
=> und vielleicht liegt daran der Fehler der auftritt?!?!
nämlich folgender:
von formStepStart wird ja die hidden Variable $schritt initialisiert und ordentlich wie in einem Tutorial hier mitgeschleift zu formStep1.htm
$schritt wird auch ordnungsgemäß in formStepNext.htm hochgezählt (beim Schritt von formStepStart ---> formStepNext
Nur wenn formStep1.htm wiederum formStepNext aufruft, in das es ja aber included ist, wird die Variable $schritt nicht nochmals hochgezählt
alle Seiten ausser der formStepStart.htm enthalten die im Tutorial beschriebenen Anweisungen um die Variablen mit in andere Seiten zu schleifen.
Wenn man sich einzeln von einer in die nächste Seite hangelt, klappt das auch. Nur mit diesem switchen in formStepNext scheint das nicht zu klappen. Nicht vergessen: formStepNext dient dazu, dass man den Zähler $schritt hochschaltet und die nächste Seite anzeigt; denn nur so kann man realisieren, dass es auch ein formStepBack.htm gibt, das entsprechend den Zähler verringert und diese entsprechende Vorgänger-Seite anzeigt.
Also nochmal: das normale fortschreiten, indem man direkt auf die nächste Seite verweist geht, der Trick mittels formStepNext geht nicht, ist aber notwendig um vor und zurückblättern zu können.
Wenn jemand weis, warum das nicht geht, vielleicht weil sich die Seite verschachtelt erstellt und diese erstellte dann nochmal selbst aufruft?
... Oder wenn jemand ein Beispiel hat, oder irgendwie eine Idee
schreibt mir bitte ...
Kommentar