在我的另一张帖中有注册的页面:
现在想做个登录的,用了3个jsp文件,如下:
(1)login.jsp
<%@ page contentType="text/html; charset=gb2312" language="java" import="java.sql.*" errorPage="" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>用户登录</title>
</head><body>
<form id="form1" name="form1" method="post" action="login_deal.jsp">
用户名:
<input name="username" type="text" id="username" />
<br />
<br />
密 码:
<input name="pwd" type="text" id="pwd" />
<br />
<br />
<input type="submit" name="Submit" value="提交" />
<input type="reset" name="Submit2" value="重置" />
</form>
</body>
</html>
(2)login_deal.jsp
<%@ page contentType="text/html; charset=gb2312" language="java" errorPage="" %><html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>处理结果</title>
</head><body>
<%
request.setCharacterEncoding("gb2312");
String username=request.getParameter("UserID");
String pwd=request.getParameter("UserPWD");
if(!username.equals("") && !pwd.equals("")){
response.sendRedirect("login_ok.jsp");
}else{
response.sendError(500,"请输入登录验证信息");
}
%>
</body>
</html>
(3)login_ok.jsp
<%@ page contentType="text/html; charset=gb2312" language="java" errorPage="" %><html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>处理结果</title>
</head><body>
登录成功!
</body>
</html>
现在想做个登录的,用了3个jsp文件,如下:
(1)login.jsp
<%@ page contentType="text/html; charset=gb2312" language="java" import="java.sql.*" errorPage="" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>用户登录</title>
</head><body>
<form id="form1" name="form1" method="post" action="login_deal.jsp">
用户名:
<input name="username" type="text" id="username" />
<br />
<br />
密 码:
<input name="pwd" type="text" id="pwd" />
<br />
<br />
<input type="submit" name="Submit" value="提交" />
<input type="reset" name="Submit2" value="重置" />
</form>
</body>
</html>
(2)login_deal.jsp
<%@ page contentType="text/html; charset=gb2312" language="java" errorPage="" %><html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>处理结果</title>
</head><body>
<%
request.setCharacterEncoding("gb2312");
String username=request.getParameter("UserID");
String pwd=request.getParameter("UserPWD");
if(!username.equals("") && !pwd.equals("")){
response.sendRedirect("login_ok.jsp");
}else{
response.sendError(500,"请输入登录验证信息");
}
%>
</body>
</html>
(3)login_ok.jsp
<%@ page contentType="text/html; charset=gb2312" language="java" errorPage="" %><html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>处理结果</title>
</head><body>
登录成功!
</body>
</html>
String pwd=request.getParameter("UserPWD");
if(!username.equals("") && !pwd.equals("")){看了这三行代码,我无语了。
首先你的UserID你都没有,你怎么取值?你看看自己的定义<input name="username" type="text" id="username" />
其次 (!username.equals("") && !pwd.equals(""))你这样比较就不对。username如果为null,那么你使用这个方法就是抛空指针异常。。
<input name="pwd" type="text" id="pwd" value="" />真正不出结果,是你
request.getParameter("UserID");有错误,入参应该是name="username"中的username,改成一下就OKString username=request.getParameter("username");
String pwd=request.getParameter("pwd");
String username=request.getParameter("username");
String pwd=request.getParameter("pwd");
<%@ page contentType="text/html;charset=GBK" %>
<%
request.setCharacterEncoding("GBK");
String strUserName ="";
String strUserPWD ="";
String strUserSex="";
String strUserBlood="";
String strUserChar="";
String strUserMemo="";
String strUserCity="";
strUserName=request.getParameter("UserID");
strUserPWD=request.getParameter("UserPWD");
session.setAttribute("a", request.getParameter("UserID"))
session.setAttribute("b", request.getParameter("UserPWD"))
strUserSex=request.getParameter("SEX");
strUserBlood=request.getParameter("BLOOD");
strUserChar=request.getParameter("CHATACTER");
strUserMemo=request.getParameter("MEMO");
strUserCity=request.getParameter("CITY");
%>
以下为您的信息<br>
姓名:<%=strUserName%><br>
密码:<%=strUserPWD%><br>
性别:<%=strUserSex%><br>
血型:<%=strUserBlood%><br>
性格:<%=strUserChar%><br>
简介:<%=strUserMemo%><br>
城市:<%=strUserCity%><br><br>
恭喜你成为本网站的用户,请<A href="login.jsp">登录</A>进入本站首页报告了错误:
org.apache.jasper.JasperException: Unable to compile class for JSP: An error occurred at line: 13 in the jsp file: /register.jsp
Syntax error, insert ";" to complete Statement
10: String strUserCity="";
11: strUserName=request.getParameter("UserID");
12: strUserPWD=request.getParameter("UserPWD");
13: session.setAttribute("a", request.getParameter("UserID"))
14: session.setAttribute("b", request.getParameter("UserPWD"))
15: strUserSex=request.getParameter("SEX");
16: strUserBlood=request.getParameter("BLOOD");
login_deal.jsp页面也改了下:<%@ page contentType="text/html; charset=gb2312" language="java" errorPage="" %><html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>处理结果</title>
</head><body>
<%
request.setCharacterEncoding("gb2312");
String username=request.getParameter("username");
String pwd=request.getParameter("pwd");
if(session.getAttribute("a")=username&& session.getAttribute("b")=pwd){
response.sendRedirect("login_ok.jsp");
}else{
response.sendError(500,"请输入登录验证信息");
}
%>
</body>
</html>
if(session.getAttribute("a").equals(username)&& session.getAttribute("b").equals(pwd)){
response.sendRedirect("login_ok.jsp");