日期:2014-05-17  浏览次数:20814 次

request.getparameter的错误?
第一:输入的用户名和密码都是正确的,但总是运行的是用户名失败
第二:用户名输入的是中文的话request.getparameter接受的是乱码
<!--登陆界面的处理用户名和密码(dljmcl)  --> 
<%@ page language="java" import="java.util.*,java.sql.*" contentType="text/html; charset=gb2312"
    pageEncoding="gb2312"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>登录信息的验证</title>
</head>
<body>
  
   <%
      String yhm=request.getParameter("yhm");
      System.out.println("用户名"+yhm);
      String mm=request.getParameter("mm");
      //加载驱动
      try{
      Class.forName("oracle.jdbc.driver.OracleDriver");
      //得到连接
      Connection cnn=DriverManager.getConnection("jdbc:oracle:thin:@127.0.0.1:1521:orcl","scott","tiger");
      //创建Statement
      Statement stm=cnn.createStatement();
      //查询结果
       ResultSet rs=stm.executeQuery("select yhmm from yhxxb where yhm='"+yhm+"'");
if(rs.next()){
  if(rs.getString(1).equals(mm)){
System.out.println("chengong");
}else{
     System.out.println("失败");
    }
}else{
  System.out.println("用户名失败");
}
}catch(Exception e){
      e.printStackTrace();
      }
     
    %>
</body>
</html>
jsp getParameter

------解决方案--------------------
<%@ page language="java" import="java.util.*,java.sql.*" contentType="text/html; charset=gb2312"
    pageEncoding="gb2312"%>

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">

一个页面,两种编码,不乱码才怪
------解决方案--------------------
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
应该是这个编码定义引起的,建议页面编码都使用utf-8,毕竟项目都要与数据库打交道,utf-8对从是图层到模型层编码支持的都比较好,而且是很多框架的默认编码。
------解决方案--------------------
哈哈,没有getChineseParameter()
就会乱码的

String linkName = proxy.getChineseParameter("linkName");


我们主管写的,就是防中文乱码的!
------解决方案--------------------
过滤器解决所有的乱码问题...