值javaBean:Value2.java代码
package com.yxq.valueBean;
public class Value2{
  private String name;
  private String pass;
  public Value2(){         };
  public void setName(String n){
   this.name=n;
      }
  public String getName(){
   return name;
     }
  public void setPass(String p){
   this.pass=p;
      }
  public String getPass(){
   return pass;
     }
  }
工具javaBean:Tool2.java代码package com.yxq.toolBean;
import com.yxq.valueBean.Value2;
public class Tool2{
  public String chelogin(Value2 login){
   if(login.getName().equals("jkx")&&login.getPass().equals("aa")){
      return "yes";}
   else
     {return "no";}
   }
}
验证页面:log2.jsp代码
<%@ page contentType="text/html;charset=gb2312" %>
<jsp:useBean id="login" class="com.yxq.valueBean.Value2"/>
<jsp:useBean id="tool" class="com.yxq.toolBean.Tool2"/><%
  request.setCharacterEncoding("GBK");
  String userName1=request.getParameter("userName");
  String userPassword1=request.getParameter("userPass");
  %>
<%
  login.setName(userName1);
  login.setPass(userPassword1);
  System.out.println(userName1);
  System.out.println(userPassword1);
  if(tool.chelogin(login).equals("yes")){
   out.println("<SCRIPT LANGUAGE='JavaScript'>alert('成功');location.href='error.jsp';</script>");
    }
 else
 { out.println("<SCRIPT LANGUAGE='JavaScript'>alert('用户名或密码输入错误!');location.href='index2.jsp';</script>");
    }
 
%>
登录页面:index2.jsp
<form action="log2.jsp">
    <h2>用户登录</h2>
    用户名:<input type="text" name="userName">
    <br>
    密&nbsp;&nbsp;码:<input type="password" name="userPass">
    <br>
    <input type="submit" value="登录">;
    <input type="reset" value="重置">;
</form>
运行时,我输入的是正确的用户名和密码,可总是出现“用户名或密码输入错误!”这个页面,麻烦帮忙找一下问题,谢谢!

解决方案 »

  1.   

    你先在验证页面输出
    userName1 userPassword1
    看看
      

  2.   

    你的form没用action 和method
    还有就是用可能是text获取值时字符前出现了空格
    你用trim()函数取消下
    或者用css设置text属性的padding:0px;
    我也是新手,如有写错的地方请不要灌水。
      

  3.   

    你看看你的Log2里头取到值没有啊
      

  4.   

    package com.yxq.valueBean;
    public class Value2{
      private String name;
      private String pass;
      public Value2(){ };
      public void setName(String n){
      this.name=n;
      }
      public String getName(){
      return name;
      }
      public void setPass(String p){
      this.pass=p;
      }
      public String getPass(){
      return pass;
      }
      }
    工具javaBean:Tool2.java代码package com.yxq.toolBean;
    import com.yxq.valueBean.Value2;
    public class Tool2{
      public String chelogin(Value2 login){
      if(login.getName().equals("jkx")&&login.getPass().equals("aa")){
      return "yes";}
      else
      {return "no";}
      }
    }
    验证页面:log2.jsp代码
    <%@ page contentType="www.cctv40.cntext/html;charset=gb2312" %>
    <jsp:useBean id="login" class="com.yxq.valueBean.Value2"/>
    <jsp:useBean id="tool" class="com.yxq.toolBean.Tool2"/><%
      request.setCharacterEncoding("GBK");
      String userName1=request.getParameter("userName");
      String userPassword1=request.getParameter("userPass");
      %>
    <%
      login.setName(userName1);
      login.setPass(userPassword1);
      System.out.println(userName1);
      System.out.println(userPassword1);
      if(tool.chelogin(login).equals("yes")){
      out.println("<SCRIPT LANGUAGE='JavaScript'>alert('成功');location.href='error.jsp';</script>");
      }
     else
     { out.println("<SCRIPT LANGUAGE='JavaScript'>alert('用户名或密码输入错误!');location.href='index2.jsp';</script>");
      }
     
    %>
    看起来好像没问题啊。。
      

  5.   

    yes  我也觉得 没问题, lz 实在不行 你就+ 我QQ把 我帮你解决 543452810