Hallo alle miteinander.
Ich habe ein Problem mit der Verwaltung von Checkboxen. Eigendlich treffen zwei Anforderungen aufeinander. Fuer jede einzelen finde ich ueberall Loesungen, fuer beide gemeinsam habe ich da weniger Glueck ;-).
Problemstellung:
Ich habe ein mehrseitiges Formular mit jeweils n Checkboxen. Alle Formularseiten sind auf einer HTML-Seite. Jedes Formular ist in ein Fieldset eingebunden und das jeweils aktive fieldset zeige ich mit Hilfe von Style Sheets an.
Im ersten Versuch habe ich die Input-Felder wie folgt angelegt:
<input type="checkbox" id="01" name="cbx01" value="1" <?php if (!empty($_POST['cbx01'])) echo 'checked="checked"';?>/>
<input type="checkbox" id="02" name="cbx02" value="1" <?php if (!empty($_POST['cbx02'])) echo 'checked="checked"';?>/>
<input type="checkbox" id="03" name="cbx03" value="1" <?php if (!empty($_POST['cbx03'])) echo 'checked="checked"';?>/>
.
.
.
<input type="checkbox" id="n" name="cbxn" value="1" <?php if (!empty($_POST['cbxn'])) echo 'checked="checked"';?>/>
Dies hat wunderpaar geklappt, fuer das Beibehalten der Werte beim wechseln der Formularseiten.
Allerdings wurde die Weiterverarbeitung durch die unterschiedliche Namensgebung unkonfotabel.
Der zweite Versuch sah daher wie folgt aus:
<input type="checkbox" id="01" name="cbx[]" value="1" />
<input type="checkbox" id="02" name="cbx[]" value="2" />
<input type="checkbox" id="03" name="cbx[]" value="3" />
.
.
.
<input type="checkbox" id="n" name="cbx[]" value="n" />
Bei diesem Konstrukt ist die Weiterverarbeitung unproblematisch.
Hier kann aufgrund des Feldes eine foreach-Schleife verwendet werden.
Allerdings habe ich jetzt das Problem, dass ich kein elegante Loesung sehe, bereits eingegeben Daten in den Formularfeldern nicht zu verlieren.
Kann mir vielleicht jemand mit einem Schubs in die richtige Richtung oder einem Vorschlag weiterhelfen?
Danke im voraus.
Ich habe ein Problem mit der Verwaltung von Checkboxen. Eigendlich treffen zwei Anforderungen aufeinander. Fuer jede einzelen finde ich ueberall Loesungen, fuer beide gemeinsam habe ich da weniger Glueck ;-).
Problemstellung:
Ich habe ein mehrseitiges Formular mit jeweils n Checkboxen. Alle Formularseiten sind auf einer HTML-Seite. Jedes Formular ist in ein Fieldset eingebunden und das jeweils aktive fieldset zeige ich mit Hilfe von Style Sheets an.
Im ersten Versuch habe ich die Input-Felder wie folgt angelegt:
<input type="checkbox" id="01" name="cbx01" value="1" <?php if (!empty($_POST['cbx01'])) echo 'checked="checked"';?>/>
<input type="checkbox" id="02" name="cbx02" value="1" <?php if (!empty($_POST['cbx02'])) echo 'checked="checked"';?>/>
<input type="checkbox" id="03" name="cbx03" value="1" <?php if (!empty($_POST['cbx03'])) echo 'checked="checked"';?>/>
.
.
.
<input type="checkbox" id="n" name="cbxn" value="1" <?php if (!empty($_POST['cbxn'])) echo 'checked="checked"';?>/>
Dies hat wunderpaar geklappt, fuer das Beibehalten der Werte beim wechseln der Formularseiten.
Allerdings wurde die Weiterverarbeitung durch die unterschiedliche Namensgebung unkonfotabel.
Der zweite Versuch sah daher wie folgt aus:
<input type="checkbox" id="01" name="cbx[]" value="1" />
<input type="checkbox" id="02" name="cbx[]" value="2" />
<input type="checkbox" id="03" name="cbx[]" value="3" />
.
.
.
<input type="checkbox" id="n" name="cbx[]" value="n" />
Bei diesem Konstrukt ist die Weiterverarbeitung unproblematisch.
Hier kann aufgrund des Feldes eine foreach-Schleife verwendet werden.
Allerdings habe ich jetzt das Problem, dass ich kein elegante Loesung sehe, bereits eingegeben Daten in den Formularfeldern nicht zu verlieren.
Kann mir vielleicht jemand mit einem Schubs in die richtige Richtung oder einem Vorschlag weiterhelfen?
Danke im voraus.
Kommentar