各位哥哥姐姐,小弟最近在学jsp,要编一个jsp与access的登录程序,用户在登录页面login.jsp填写好用户名和密码后提交由loginsave.jsp进行登录处理,如果用户名和密码正确,提示登录成功并将页面转向主页index.jsp,否则提示用户名或密码错误后将页面重定向到登录页面login.jsp,下面是我做的代码,数据库的设置没问题,请帮我改下,如果哪位有现成的代码,可以发给我,小弟衷心感谢您!谢谢!(不要用javabean的,我现在学的东西还少,一点一点学!)谢谢各位哥哥姐姐帮帮忙!
登录页面login.jsp,代码如下:
<form name="form1" method="post" action="loginsave.jsp">
<table width="279" border="1" align="center" bordercolor="#66FF00">
  <div align="center">
   <tr><td width="273"><span class="STYLE1">
    <label>用户名:<input type="text" name="logname" /></label></span>
   </td></tr>
   <tr><td><span class="STYLE1">
    <label>密码:<input type="password" name="logpass" /></label></span>
   </td></tr>
   <tr><td><label><input type="submit" name="Submit" value="登录" /></label>
           <label><input type="reset" name="Submit" value="重置" />
            <a href="findpassword.jsp">找回密码</a></label>
   </td></tr>
  </div>
</table></form>登录请求处理页面loginsave.jsp,代码如下:
<%@page contentType="text/html; charset=GBK" %>
<% request.setCharacterEncoding("GBK"); %>
<%@ page import="java.util.*" %>
<%@include file="conn.jsp"%>
<%!
 String logname,logpass;
 boolean loginAttempt=false;
 boolean loginOK=false;
%>
<%
//验证条件
if (request.getParameterValues("logname") != null
&&request.getParameterValues("logpass") != null)
{ loginAttempt = true; }
if (loginAttempt)
{logname=request.getParameter("logname");
 logpass=request.getParameter("logpass");
 Statement stmt=con.createStatement();
 String sql="select * from member where logname='"+logname+"' and password='"+logpass+"'";    
 //数据库的访问;
 ResultSet RS=stmt.executeQuery(sql);
 int rowscount=0;
 try
 { while(RS.next())
   { rowscount++; }
 }
 catch(Exception e)
 { }
 if(rowscount!=0)
 { session.setAttribute("username",logname);//验证成功后,用session记录用户名称
   loginOK=true;
  if(loginOK)
  { String url;
    url=request.getParameter("url");
    out.println(url);
    if(url==null)
    { response.sendRedirect("index.jsp"); }
    else
    { response.sendRedirect("index.jsp"); }
  }
 }
 else
 { session.setAttribute("username","");
   response.sendRedirect("index.jsp");
 }
}
%>

解决方案 »

  1.   

    [email protected]都可以!麻烦哥哥姐姐帮帮忙!
      

  2.   

    数据库的设置没问题,但是你看你的代码有哪句是与数据库连接的?
    Statement   stmt=con.createStatement(); 
    con对象怎么得到的哦……
    加油
      

  3.   

    我的数据库链接是专门用一个jsp页面来装载的conn.jsp代码如下
    <%@ page import="java.sql.*"%> 
    <% 
    Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");  
    String url="jdbc:odbc:shopping"; 
    Connection con=DriverManager.getConnection(url); 
    %>
    然后要在要调用的页面上加载<%@ include file="conn.jsp" %>就ok了!
    运行后的错误提示如下:
    An error occurred at line: 35 in the jsp file: /shopping/jsp/loginsave.jsp
    Duplicate local variable url
    32:  { session.setAttribute("username",logname);//验证成功后,用session记录用户名称
    33:    loginOK=true;
    34:    if(loginOK)
    35:    { String url;
    36:      url=request.getParameter("url");
    37:      out.println(url);
    38:      if(url==null)
    就是我在login.jsp页面中没有url这个参数,所以在第二个页面loginsave.jsp中的request.getParameter("url")就是错的,可是改了之后又不能登录,应该怎么修改啊!
    如果有现成的代码,可以发给我,小弟衷心感谢!(不要用javabean的,我现在学的东西还少,一点一点学!)谢谢各位哥哥姐姐帮帮忙! 
    [email protected]都可以!麻烦哥哥姐姐帮帮忙!
      

  4.   

     String   url; 
            url=request.getParameter("url"); 
            out.println(url); 
            if(url==null) 
            {   response.sendRedirect("index.jsp");   } 
            else 
            {   response.sendRedirect("index.jsp"); 
    这段做什么的?
    可惜没现成代码给你发
      

  5.   

    在jsp页面中,怎样判断输入的一段字符是不是电子邮箱呢?