代码:
login.jsp<%@ page contentType="text/html;charset=GB2312" %>
<HTML>
<BODY>
<Font size=4><center>
<FORM action="check.jsp" Method="post">
 <P>系统登陆界面
 <P>用户名:
  <Input type=text name="uid">
  <p>密&nbsp;&nbsp;码:
  <Input type=text name="pwd">
<p>
  <Input type=submit name="g" value="提交"></Form></BODY>
</HTML>check.jsp
<%@ page contentType="text/html;charset=GB2312" %>
<%@ page import="java.sql.*" %>
<HTML>
<BODY>
  <% 
    String id=request.getParameter("uid");
    String pwd=request.getParameter("pwd");     
    try 

String spath="data//data.mdb";
String dbpath = application.getRealPath(spath); 
String dbname = ""; //Acess 
String user = ""; //Acess 
String url ="jdbc:odbc:Driver={Microsoft Access Driver (*.mdb)};DBQ="+dbpath;  
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); 
Connection conn= DriverManager.getConnection(url);  
Statement stmt=conn.createStatement 
(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE); 
String sql = "select uid,pwd from login"; 
ResultSet rs = stmt.executeQuery(sql);
while(rs.next())
{
if (id==rs.getString("uid")||pwd==rs.getString("pwd"))
{response.sendRedirect("show.jsp");}
else
{   out.print("错误");
response.sendRedirect("1.txt");}
}
rs.close();  
stmt.close();  
conn.close(); 
}
catch(Exception e){ 
 out.print("数据库连接错误!,错误信息如下:<br>"); 
 out.print(e.getMessage()); 

%>
</BODY>
</HTML>
但是达不到效果 错在哪里请指教

解决方案 »

  1.   

    if (id==rs.getString("uid")||pwd==rs.getString("pwd"))
    {response.sendRedirect("show.jsp");}
    else
    {   out.print("错误");
    response.sendRedirect("1.txt");}
    }错误就是不管输入正确的密码还是错误的密码都转到1.txt这个页面!!
      

  2.   

    if (id==rs.getString("uid")||pwd==rs.getString("pwd")) ==>
    if (id.equals(rs.getString("uid")) && pwd.equals(rs.getString("pwd")))
      

  3.   

    要对空值进行个判断
    if(id==null||pwd==null){
    id=rs.getString("uid");
    pwd=rs.getString("pwd");
    }
      

  4.   

    要对空值进行个判断
    if(id==null||pwd==null){
    id=request.getParameter("uid");
    pwd=request.getParameter("pwd");     
    }
      

  5.   

    if (id==rs.getString("uid")||pwd==rs.getString("pwd"))
    你这样写是当用户名对或者密码对就通过是不行的,应该两个都成立才行
    if (id.equals(rs.getString("uid")) && pwd.equals(rs.getString("pwd")))
    还有 String id=request.getParameter("uid");
        String pwd=request.getParameter("pwd"); 这两句在取值之前应该先判断是否为空,在JSP中要养成判断空值的好习惯
      

  6.   

    首先,最好在用户输入信息的时候就判断文本框不能为空,如:
    <script language="JavaScript">
          function checkInput(){
    if(document.form.uid.value==""){
         alert("请输入用户名!");
         document.form1.userName.focus();//得到光标
         return false;
    }
          }
    </script>
    这个习惯是一定要养成的  呵呵然后就是值比较问题了,楼上两位的都是正解,建议LZ多了解一下equals与==的区别
      

  7.   

    用equals比较,不要用==,这个问题都讨论过好多次了,equals是比较值,==是比较对象
      

  8.   

    String sql = "select uid,pwd from login <uid>=id and pwd= <pwd>";