Validatoren

Geschätzte Lektüre: 3 Minuten

Mit Hilfe von Validatoren lassen sich Eingaben in Datenfeldern vor dem Speichern in die Datenbank prüfen. Limbas bietet dazu mehrere Möglichkeiten.

Reguläre Ausdrücke

Die einfachste Möglichkeit besteht darin, die regulären Ausdrücke der Feldtypen zu nutzen. Dazu wird für jeden Feldtyp der hinterlegte reguläre Ausdruck im Formular (JavaScript) sowie auf Server Seite (PHP) angewendet um den Inhalt auf Richtigkeit zu prüfen. Diese Funktionalität ist standardmäßig integriert. Die Regulären Ausdrücke sind anpassbar.

Rechte

Über die Gruppenrechte Gruppenrechte können pro Feld Schreibrechte nach eigenen Kriterien erstellt werden. Diese Rechte überprüfen ob überhaupt in ein Feld geschrieben werden darf. Somit sind sie für nur für eine Vorab-Überprüfungen geeignet.

Trigger

Trigger sind der klassische Weg für Validierungen. Dazu kann ein Datenbanktrigger sowie ein Limbas PHP Trigger die Eingaben überprüfen und das speichern unterbinden.

Validator Funktion

Die komfortableste Möglichkeit nutzt eine Validator Funktion um die eingegeben Werte zu überprüfen. Dazu muss eine Funktion „lmb_ValidatePostRequest($params[Array])“ in einer Extension Datei ext_ajax.inc existieren. Zusätzlich muss die Prüfen pro Tabelle in den Tabelleneinstellungen über den Punkt „Validierungsprüfung“ aktiviert werden. Falls beide Punkte zutreffen wird vor dem speichern des Formulars eine Vorabanfrage mit dem kompletten Inhalt des Formulars an die Funktion gesendet. Der Inhalt des Arrays ($params) muß explizit ausgewertet werden. Es bietet sich an in der Funktion nach den Kriterien wie z.B. welche Tabelle oder welches Formular oder Usergruppe eine eigene Struktur mit Unterfunktionen oder Klassen zu erstellen. Der Rückgabewert ist ein Array welches den status und value beinhaltet. Folgende Stati sind möglich:

  • true // wird ohne Rückfrage gespeichert
  • false // wie notice
  • notice // wird nach Hinweis gespeichert
  • alert // wie nach Hinweis nicht gespeichert
  • confirm // wird nach Nachfrage gespeichert
  • submit // wie true


Ist der Status „alert“ können zusätzlich eine „class“ und ein „title“ für die betreffenden Eingabefelder mitgegeben werden. Dadurch ist es möglich Felder hervorzuheben und eine Beschreibung als title zu setzen. Das Array hat folgendes Format:

  • [‚title‘][ELEMENTID] = ‚TEXT‘
  • [‚class‘][ELEMENTID] = ‚TEXT‘
Share this Doc

Validatoren

Or copy link

CONTENTS