如何判断啊?
String name= request.getParameter("name") ;
String password = request.getParameter("psw") ;
 if (name.equal("name") && password.equal("password"))
这样写出错啊

解决方案 »

  1.   

    if (name.equal("name") && password.equal("password"))
    改成
    if(name.equals("") || password.equals(""))还有具体没有说清楚--------------------
    J2EE技术交流QQ群:6890959
    欢迎大家加入..
    一起切磋交流..
    共同进步..群空间好东西很多..
      

  2.   

    好像如果获取的是空可能会抛出异常把,可能啊,没有试过。不过利用request.getParameter获取后通常判断是否为空值。
      

  3.   

    "name"和"password"是什么啊,好像找不到吧?
      

  4.   

    如果name和password是数据库的值,
    这样:if (name.trim().equals(数据库中的name值) && password.trim().equals(数据库中的password值))
      

  5.   

    <%@ page contentType="text/html;charset=gb2312"%>
    <%@ page import="java.sql.*"%>
    <html>
    <head>
    <title></title>
    <meta http-equiv="Content-Type" content="text/html; charset=gb2312"></head>
    <body>
    <center>
    <br>
    <%! 
    Connection con = null ;
    PreparedStatement stmt = null ;
    ResultSet rs = null ;
    %>
    <%
    // 声明一个boolean变量,用于保存用户是否合法的状态
      
             
    // 接收参数
    String name= request.getParameter("name") ;
    String password = request.getParameter("psw") ;
    out.println(name);
    out.println(password);
    boolean flag =false;
    %>  
      <%    if (name=="admin" & password=="admin")
          {  
      out.println("aaa111");
      response.sendRedirect("admin.jsp");
      }
      else{
            
           String sql = "SELECT name FROM info WHERE name=? and psw=?" ;
    try
    {  
    Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); 
           con=DriverManager.getConnection("jdbc:odbc:jsjdj");
    stmt = con.prepareStatement(sql) ;
    stmt.setString(1,name) ;
    stmt.setString(2,password) ;
    rs = stmt.executeQuery() ;
    if(rs.next())
    {
    // 用户合法
    flag = true ;
    // 将用户名保存在session之中
    session.setAttribute("uname",rs.getString(1)) ;
    }
    else
    {
    // 保存错误信息
    request.setAttribute("err","错误的用户名及密码!!!") ;
    }
    rs.close() ;
    stmt.close() ;
    con.close() ;
    }
    catch(Exception e)
    {}
    }
    %>


        <%// 跳转
    if(flag)
    // 用户合法
            { %>    

    <jsp:forward page="admin.jsp"/>
         <%
        }
    else
    {   out.println("aaaa");
    // 用户非法
             %>
    <%
    }
    %>
    </center>
    </body>
    </html>
      

  6.   

    整个代码是这样的,但是每次都进不了admin.jsp页面,而是直接进入else语句了.打印出out.println("aaaa");请高手看下啊,
      

  7.   

    请高手看下啊,为什么每次都直接执行out.println("aaaa");
      

  8.   

    String name= request.getParameter("name") ;
    String password = request.getParameter("psw") ;改成
    String name= request.getParameter("name").trim() ;
    String password = request.getParameter("psw").trim() ;
    从数据库中取得的值做同样的trim()处理, 再试试看~~~
      

  9.   

    把以下的代码
    if (name=="admin" & password=="admin")
          {  
      out.println("aaa111");
      response.sendRedirect("admin.jsp");
      }
    改为
    if (name.equal("admin")&& password.equal("admin"))
          {  
      out.println("aaa111");
      response.sendRedirect("admin.jsp");
      }
      

  10.   

    你将 “boolean flag =false;” 语句放在声明块 <%! %> 中试一下,看行不行。
      

  11.   

    你的 类型有问题啊! request.getP();  返回的是一个对象 你是怎么运行的啊?要强制转换的。
      

  12.   

    为什么不用"admin".equal(name)代替name.equal("admin")呢?
    为什么在catch语句中不写日志或打印错误信息呢?
      

  13.   

    本人不小心把equals写成equal了,yun19()可要注意了!