页面无法登录
jsp代码:
<%@ page contentType= "text/html;charset=GB2312 " %>
<%@ page import= "tom.jiafei.Login " %>
<%!
public String codeString(String s)
{ String str=s;
try{ byte b[]=str.getBytes( "ISO-8859-1 ");
str=new String(b);
return str;
}
catch(Exception e)
{ return str;
}
}
%>
<html>
<body bgcolor= "#3333FF "> <font size= "1 ">
<%@ include file= "head.txt " %>
<font size= "1 ">
<p> 输入用户名和密码:
<% String str=response.encodeURL( "login.jsp "); %>
<form action= " <%=str%> " method= "post ">
<br> 登录名称 <input type=text name= "logname ">
<br> 输入密码 <input type=password name= "password ">
<br> <input type=submit name= "g " value= "提交 ">
</form>
<jsp:useBean id= "login " class= "tom.jiafei.Login " scope= "session " >
</jsp:useBean>
<% String message= " ",
logname= " ",
password= " ";
if(!(session.isNew()))
{ logname=request.getParameter( "logname ");
if(logname==null)
{ logname= " ";
}
logname=codeString(logname);
password=request.getParameter( "password ");
if(password==null)
{ password= " ";
}
password=codeString(password);
}
%>
<% if(!(logname.equals( " ")))
{
%>
<jsp:setProperty name= "login " property= "logname " value= " <%=logname%> " />
<jsp:setProperty name= "login " property= "password " value= " <%=password%> " />
<%
message=login.getMessage();
if(message==null)
{ message= " ";
}
}
%>
<%
if(!(session.isNew()))
{ if(message.equals( "ok "))
{ String meb=response.encodeURL( "showMember.jsp ");
response.sendRedirect(meb);
}
else
{ out.print(message);
}
}
%>
</body>
</html>
javabean代码:
package tom.jiafei;
import java.sql.*;
public class Login
{ String logname,
password,
success= "false ",
message= " ";
Connection con;
Statement sql;
ResultSet rs;
public Login()
{
try{Class.forName( "sun.jdbc.odbc.JdbcOdbcDriver ");
}
catch (ClassNotFoundException e){}
}
public void setLogname(String name)
{ logname=name;
}
public String getLogname()
{ return logname;
}
public void setPassword(String pw)
{ password=pw;
}
public String getPassword()
{ return password;
}
public String getSuccess()
{ return success;
}
public String getMessage()
{ try
{
con=DriverManager.getConnection( "jdbc:odbc:friend ", "sa ", " ");
sql=con.createStatement();
String condition= "SELECT * FROM member WHERE logname= "+ " ' "+logname+ " ' ";
rs=sql.executeQuery(condition);
int rowcount=0;
String ps=null;
while(rs.next())
{ rowcount++;
logname=rs.getString( "logname ");
ps=rs.getString( "password ");
}
if ((rowcount==1)&&(password.equals(ps)))
{ message= "ok ";
success= "ok ";
}
else
{ message= "输入的用户名或密码错误 ";
success= "false ";
}
con.close();
return message;
}
catch (SQLException e)
{ message= "输入的用户名或密码错误 ";
success= "false ";
return message;
}
}
}
访问页面不报错,但每次用已经注册的号(注册页面调试正常可以写数据进数据库)登录底下都显示:输入的用户名或密码错误
我不认为是数据库权限问题,因为我写的另个页面可以读出数据。
请高手看看。
[解决办法]
为什么在页面里面写java代码呢/////