ich bin gerade dabei mir ein ACP für unsre Feuerwehr-Homepage zu programmieren.
Nun habe ich u.a. eine Maske, über die ich Einsatzberichte eintragen kann.
Die Werte der Input-Felder möchte ich dabei überprüfen, damit es im Frontend bzw. bei der Ausgabe keine Schwierigkeiten gibt.
Allerdings sieht mir das alles ziemlich umständlich aus, wie ich es gerade versuche zu lösen.
Gibt es eine Möglichkeit, das alles etwas zu vereinfachen?
Habe schon an eine Klasse gedacht, allerdings weiß ich nicht, wie ich das aufbauen soll, da die Abfragen z.T. unterschiedlich sind.
Soweit ich das sehe willst Du immer eine Fehlermeldung ausgeben die nach 3 Sekunden auf die Eingabeseite zurück leitet?
Dafür musst Du schon mal nicht immer
[php]echo „“;
die(„Datum Einsatz → Monat falsch / nicht angegeben.“);[/php]
schreiben. In jeder Bedingung kannst Du statt dessen auch ein error-Array füllen.
[php]errors = „Datum Einsatz → Monat falsch / nicht angegeben“;[/php]
und nach all den if-Bedingungen und Prüfungen schaust Du, ob $errors ein Array mit mehr als 0 Inhalten ist. Wenn ja, gibst Du die darin stehenden Fehlermeldungen aus und leitest dann weiter.
Weitere Alternative: sammel die Fehler ebenso und speicher sie in einer Sitzungsvariable. Wenn diese gefüllt ist, leitest Du zurück zur Eingabeseite und gibst dort diese Fehlermeldungen alle aus. Das ist aus Nutzersicht übersichtlicher, da man das Eingabefeld + die dazugehörige Fehlermeldung sofort sieht.
vielen Dank dafür. Das sieht schon mal sehr gut aus!
Nur damit ich es richtig verstehe:
Mir bleibt keine andere Möglichkeit, um jedes Input einzeln zu überprüfen?
Ich würde auch dort gerne eine Schleife einbauen… Allerdings weiß ich nicht, wie ich an die Sache rangehen soll, da jede Überprüfung verschiedene Werte benötigt, auf die überprüft werden soll.
danke dafür!
Das „Problem“ ist aber eben, dass nicht jede Überprüfung gleich aussieht.
Manchmal sind es 2 Zahlen, manchmal nur eine, manchmal Zahlen von 0-6 und manchmal eben Zahlen von 0-9.
Man müsste eine Funktion hinbekommen, die das übernimmt. Aber so viele Werte kann man leider nicht in einem Input an Attributen „verstecken“.
Ich dachte, dass es zu umständlich sei, was ich dort gezaubert habe.
Genau, oder 3 Schleifen durchlaufen lassen. Eine Erweiterung deiner Abfragen wäre dann eine Erweiterung des Arrays, mehr nicht.
Wenn deine Abfragen (Anzahlmässig) so bleiben, sehe ich derzeit auch noch keinen Bedarf da eine „Vereinfachung“ in den Code zu bringen.