Veröffentlichungsdatum: 29. Juli 2014
Änderungsdatum: 20. April 2022
formular formulareditor validierung
Über den Formulareditor setzen Sie schnell und einfach Bestätigungsfelder für z.B. E-Mail Adressangaben um.
Über den Formulareditor können Sie schnell und einfach Bestätigungsfelder umsetzen, um z.B. eine anzugebende E-Mail Adresse im Formular auf korrekte Angabe überprüfen zu lassen.
Nachfolgend werden diverse Möglichkeiten aufgezeigt.
Im aktuellen Formular Weblic® der BASE (Mobile First) unterstützen Formularfelder in Verbindung mit der aktuellen ui.js und der aktuellen Software den Validator isEqualInput(FELDNAME), um zu prüfen, ob der Wert mit dem eines anderen Feldes übereinstimmt.
Ein Seitenbesucher muß somit in beide Felder die identische E-Mail Adresse eingeben, damit er das Formular abschicken kann. Ein Tippfehler bei der Eingabe der E-Mail Adresse ist somit so gut wie ausgeschlossen.
Eine Übereinstimmung von Formularfeldern können Sie natürlich auch für andere Einsatzzwecke ähnlich umsetzen.
Über den Formulareditor ((z.B. in BASE Classic Projekten) können Sie schnell und einfach Bestätigungsfelder umsetzen, um z.B. eine anzugebende E-Mail Adresse im Formular auf korrekte Angabe überprüfen zu lassen.
Hierzu legen Sie zum bestehenden Eingabefeld E-Mail (Feldname: email) ein zweites Eingabefeld mit dem Label E-Mail (Bestätigung) und Feldname emailconfirm an und validieren beide Felder auf übereinstimmende Eingabe.
Im Formulareditor und der Ausgabe des Formulares sieht das wie folgt aus:
Das oben aufgeführte Quelltextbeispiel im Screen finden Sie nachfolgend nochmals als Auszug zum Validierungsteil im Quelltextbeispiel zum Kopieren:
...
$validation = true;
if($mailData['email'] != $mailData['emailconfirm']){
$_SESSION["wFormData"][$this->id]["elements"]["emailconfirm"]["isInvalid"] = true;
$_SESSION["wFormData"][$this->id]["elements"]["emailconfirm"]["errorMessage"] = $this->elements["emailconfirm"]->validators[0]["errorMessage"];
$_SESSION["wFormData"][$this->id]["isValid"] = false;
$validation = false;
}
if(!$validation){
$redirectURL = wURL::setParameter($this->url, 'wFormStatus', 'failed');
wOutput::loadWithoutCache($redirectURL);
wResponse::redirect($redirectURL.'#wFormErrorMessages');
}
...
Ein Seitenbesucher muß somit in beide Felder die identische E-Mail Adresse eingeben, damit er das Formular abschicken kann. Ein Tippfehler bei der Eingabe der E-Mail Adresse ist somit so gut wie ausgeschlossen.
Eine Übereinstimmung von Formularfeldern können Sie natürlich auch für andere Einsatzzwecke ähnlich umsetzen.