Heute habe ich mal die Zeit gefunden, meine Form Validator Class aufzuräumen – somit kann ich Sie auch der Öffentlichkeit zur Verfügung stellen. (Link zum Online-Demo, Download, Source Code anzeigen)
Die hier beschriebene Version wurde etwas reduziert, u.a. fehlt die checkDoubleSubmit-Funktionalität. Diese wird zu einem späteren Zeitpunkt vorgestellt.
Warum noch eine Form Validator Class?
Es gibt komplette Formularklassen wie Quickform von Pear, die ich auch schon für das ein oder andere Projekt verwendet habe. Quickform ist mit 1 oder 2 Erweiterungen (HTML_QuickForm_Renderer_Tableless, eigene HTML-Element-Klassen) relativ einfach zu verwenden – solange man keine komplizierten Formular-Layouts bzw. Funktionen verwenden möchte. Schön ist hier auch die automatische Generierung von Javascript-Code, der die clientseitige Überprüfung übernimmt. Sobald man jedoch ein flexibles Layout benötigt, ist man mehr mit der Anpassung von Quickform, als mit dem eigentlichen Formular beschäftigt. Dieses Problem haben auch die anderen mir bekannten Formularklassen.
Es gibt natürlich schon einige reine Validator-Klassen im Netz, allerdings waren mir dies meist auch zu unflexibel.
Also blieb mir nur, eine eigene Klasse zu schreiben. (Link zum Online-Demo, Download, Source Code anzeigen)
Welche Funktionen deckt diese Klasse nicht ab?
Die hier vorgestellte Form Validator Klasse ist keine komplette Formularklasse wie Quickform, sondern beschränkt sich (momentan) auf die PHP-seitige Überprüfung von gesendeten Formulardaten.
Eine clientseitige Javascript-Prüfung ist in Vorbereitung, kann aber noch nicht veröffenticht werden. Ebenso wurde wie schon besprochen, die Funktionalität für das Überprüfen auf doppeltes senden des Formulars entfernt – dies stelle ich in einem späteren Artikel vor.
Welche Funktionen deckt diese Klasse ab?
Wichtigster Punkt bei der Entwicklung war dei Flexibilität. Dieses Ziel wurde meiner Meinung nach auch sehr gut erreicht. Die Form Validator Klasse sind eigentlich zwei Klassen: eine Klasse die die Prüffunktionen enthält und die eigentliche Klasse.
In der class FormValidatorFunctions sind momentan Weiterlesen →