Das könnte eine Frage von N00bish sein, aber was auch immer. Ist es in Ordnung, Ausnahmen für die Formularüberprüfung zu verwenden? Angenommen, ich habe ein Formular, in dem Benutzer nach ihrem Namen und ihrer E-Mail gefragt werden. Ist es richtig, Folgendes zu tun?Sollen Ausnahmen für die Formularvalidierung verwendet werden?
try {
if (empty($_POST["name"])) {
throw new UserRegistrationException("Your name cannot be empty.");
}
if (filter_var($_POST["email"])) {
throw new UserRegistrationException("Invalid email");
}
// Save new user into database
} catch (UserRegistrationException $e) {
// Show errors on screen
}
auch -wenn dies in der Tat ist der richtige Weg it- zu tun, wenn der Benutzer beide einen leeren Namen und eine ungültige E-Mail einreicht, würde sowohl die Ausnahmen ausführen oder nur die, die zum ersten Mal erscheint (der Name in diesem Fall)?
Ich verwende übrigens PHP.
Es ist definitiv eine seltsame Art, Ausnahmen zu verwenden. "Würden beide Ausnahmen ausgeführt werden oder nur die, die zuerst angezeigt wird" - ist es so schwierig, 5 Zeilen Code zu schreiben und sich selbst zu sehen? – zerkms
Nur die erste würde geworfen und gefangen werden, andere werden übersprungen. Wenn Sie Fehlermeldungen sammeln müssen, verwenden Sie einfach eine einfache alte if/else-Kette und hängen Nachrichten an ein Array an. –
@Michael Ich dachte schon ... Es schien eine gute Gelegenheit zu sein, Ausnahmen zu verwenden (da ungültige Eingaben als _exceptional_ betrachtet werden sollten), aber ich bleibe bei der if/else – federicot