php-resource




Archiv verlassen und diese Seite im Standarddesign anzeigen :
Array mit checkboxen anzeigen und überprüfen


 
wolfden
18-09-2018, 23:54 
 
Ich stehe völlig auf dem Schlauch:
Ich habe eine Datei mit "Tasks" lese diese in eine Array ein und möchte nun in einem Formular alle Tasks mit checkbxen bestätigen lassen.
Mein Kopf raucht, aber keine Idee wie ich das bewerkstellige.
:confused:

 
chorn
19-09-2018, 22:12 
 
Nimm die Tasks nach deinem Delimiter auseinander, stell jedes Arrayelement als Checkbox dar, mach mit den Daten die du zurückbekommst was immer du willst und mit "bestätigen" meinst.

 
wolfden
19-09-2018, 23:36 
 
Also, ich präzisiere mal:
Ich habe ein Array Tasks
dieses stelle ich in einem Formular dar und der Benutzer muss jeden einzelnen Task mit checkbox bestätigen.
Wenn er einen nicht bestätigt, soll er eine entsprechende Meldung bekommen und das Formular wird nochmals angezeigt.
Mein bisheriger Code:


echo "<br>Bitte bestätige, dass Du die Folgenden Aufgaben ausgeführt hast<br>";

for ($i = 0; $i <= count($ToDo); $i++) {
echo '<input type="checkbox" name="Task[]" value="'. $ToDo[$i] .'"> ' .$ToDo[$i] .'<br>';
}
echo '<input type="Submit" value="Alles gemacht" >';

if ($_POST['CleaningComplete']) {
$Confirm = $_POST["Task"];
if (count($Confirm) < count($ToDo) {
echo "<b>Bitte alle Aufgaben bestätigen!</b>";
} else {
$Cleaning_is ="Checked";
}
}


unschön ist, dass alle checkboxen wieder leer (unchecked sind, wenn einer fehlt.


Danke für Eure Hilfe

 
chorn
21-09-2018, 09:20 
 
Du musst den Tasks halt eine eindeutige ID zuordnen, z.B. über den Zähler in deiner Schleife, dann kannst du auf der nächsten Seite/beim nächsten Aufruf prüfen, welche schon gesetzt sind, und ob überhaupt alle gesetzt sind, und ggf. die entsprechenden Checkboxen neu anhaken.


Alle Zeitangaben in WEZ +2. Es ist jetzt 16:32 Uhr.