由于用户名及密码都是由a-z,A-Z,0-9这几字符组成,
我参考了一下正则表达式的算法,故有已下想法:
把用户输入的用户名及密码判断一下,看是否是这几个字符组成,
如果是,进行登录验证
否则提示有非法字符
代码如下:
//login.jsp
boolean regex(String str){
java.util.regex.Pattern p=null; //正则表达式
java.util.regex.Matcher m=null; //操作的字符串
boolean value=true;
try{
p = java.util.regex.Pattern.compile("[^0-9A-Za-z]");
m = p.matcher(str);
if(m.find()) {
value=false;
}
}catch(Exception e){}
return value;
}
%>
无标题文档if (action!=null&&action.equals("login")){ String username=request.getParameter("username"); String password=request.getParameter("password"); if(!regex(username)||!regex(password)){ out.println(" out.println("alert(´1.用户名只能是a-z,A-Z,0-9的字符\\n2.密码只能是a-z,A-Z,0-9的字符\\n3.不允许空格´)"); out.println("history.go(-1)"); out.println(""); out.print("用户名只能是a-z,A-Z,0-9的字符"); return;//跳出程序 } out.println(action);//登录验证 out.println("用户名是"+username+" out.println("密码"+password); } else{ %>
|