messmar
Erfahrenes Mitglied
Hallo,
das folgende Skript funktioniert gut, aber ich möchte die Felder-Validierung
nacheinander durchführen bzw. die Fehler-Ausgabe für den User schrittweise
machen.
Also, wenn es keinen Namen eingegeben wird, dann darf nur die Fehlermeldung für
dieses Feld ausgegeben wird, mehr nicht.
Wie das Skript aufgebaut ist, werden alle drei Hinweise/Fehlermeldungen auf einmal dem User angezeigt, was ich nicht haben will.
Ich habe es mit return(false); versucht, aber es funkzt. nicht, da bei Void keinen
Wert zurückgegeben werden kann. das ist auch richtig so.
Mit nem Flag, hats auch nicht hingehaut ;-(
Für jede Hilfe oder Tipp, bin sehr Dankbar.
Gruß
Messmar
das folgende Skript funktioniert gut, aber ich möchte die Felder-Validierung
nacheinander durchführen bzw. die Fehler-Ausgabe für den User schrittweise
machen.
Also, wenn es keinen Namen eingegeben wird, dann darf nur die Fehlermeldung für
dieses Feld ausgegeben wird, mehr nicht.
Wie das Skript aufgebaut ist, werden alle drei Hinweise/Fehlermeldungen auf einmal dem User angezeigt, was ich nicht haben will.
Ich habe es mit return(false); versucht, aber es funkzt. nicht, da bei Void keinen
Wert zurückgegeben werden kann. das ist auch richtig so.
Mit nem Flag, hats auch nicht hingehaut ;-(
Für jede Hilfe oder Tipp, bin sehr Dankbar.
Gruß
Messmar
HTML:
<%--ex3.jsp, Überprufen der Eingabe--%>
<%@page import="java.util.regex.*"%>
<%
String name = "";
String alter = "";
String antwort = "";
String mail = "";
String regexp = ".";
String msg = "";
int a = 0;
boolean flag = true;
if (request.getParameter("submit") != null){
name = request.getParameter("tName").trim();
if (name.equals(""))
msg = "Es wurde kein Name eingegeben.";
flag = false;
alter = request.getParameter("tAlter").trim();
if (flag == true && alter.equals(""))
msg = msg + " Bitte Alter eingeben.";
else {
try{
a = Integer.parseInt(alter);
}
catch (NumberFormatException ex){
msg = msg + " Die Altereingabe ist fehlerhaft.";
}
}
mail = request.getParameter("tMail").trim();
if (mail.equals(""))
msg = msg + " Es wurde keine eMail-Adresse eingegeben.";
else {
regexp = "^([a-zA-Z0-9_\\-\\.]+)@((\\[[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.)|(([a-zA-Z0-9\\-]+\\.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(\\]?)$";
Pattern p = Pattern.compile( regexp );
Matcher m = p.matcher( mail );
boolean result = m.matches();
if ( !result )
msg = msg + " Die eMail-Adresse ist ungültig.";
}
if (msg.equals(""))
antwort = "Ihr Name ist " + name + ", Sie sind " + a + " Jahre alt, die eMail ist " + mail + "." ;
}
%>