Hallo Tom,
Und wenn man die Formularelemente auch noch günstig benennt, so dass PHP die Werte als Array bekommt, kann man bequem mit einer Schleife darüber iterieren.
Zu diesem Zweck sollte man aber nicht über das POST-Array iterieren
natürlich nicht stur über $_POST in seiner ganzen Pracht, sondern nur über bekannte Gruppen. In einem Bestellformular für eine Pizza mit 5 wählbaren Zutaten würde ich die Checkboxen beispielsweise mit topping[0] bis topping[4] benamsen und dann mit 0..4 über $_POST['topping'][$i] herfallen und die isset-Abfragen machen.
sondern über das Kontrollarray (das z. B. in der Session wartet) und dessen Elemente mit dem POST-Array abgleichen.
Das kann man natürlich auch, obwohl mir das im Moment etwas zu kompliziert erscheint.
Wenn man beim Abgleich die gefundenen Elemente aus dem POST-Array löscht (unset()), bleiben dort nur die unerwünschten übrig. Sollte es welche geben, ist der POST gefaked.
Was ich in den meisten Fällen nicht schlimm fände; ich würde unerwartete zusätzliche Parameter einfach ignorieren. Oder möchtest du dann die Bearbeitung abbrechen und eine Antwort "Böser Betrüger! Tu das nie wieder!" senden? 😀
Live long and pros healthy,
Martin
Ich stamme aus Ironien, einem Land am sarkastischen Ozean.