<%@page contentType="text/html" pageEncoding="GBK"%>
<%@page import="java.sql.*"%>
<%!
public static final String DRIVER="com.mysql.jdbc.Driver";
public static final String URL="jdbc:mysql://localhost:3306/sms?useUnicode=true&characterEncoding=GBK";
public static final String USER="root";
public static final String PWD="bush";
%>
<%
Connection conn=null;
PreparedStatement pst=null;
ResultSet rs=null;
boolean flag=false;
String name=request.getParameter("username");
String pwd=request.getParameter("userpass");
String sql="select uid from user where uname=? and upwd=?";
try{
Class.forName(DRIVER);
conn=DriverManager.getConnection(URL,USER,PWD);
pst=conn.prepareStatement(sql);
pst.setString(1,name);
pst.setString(2,pwd);
rs=pst.executeQuery();
while(rs.next()){
int i=rs.getInt("uid");
out.println("<h1>"+i+"</h1>");
}
if(rs.next()){
flag=true;
session.setAttribute("uname",name);
}
}catch(Exception e){
}finally{
try{
rs.close();
pst.close();
conn.close();
}catch(Exception e){
}
}
if(flag){
%>
<jsp:forward page="main.jsp"/>
<%
}else{
%>
<jsp:forward page="fail.html"/>
<%
}
%>我也刚开始练习jsp,写了个登陆操作,用户名如果是英文的话可以,但是换成中文就总是验证失败啊!
mysql数据库的编码是GBK,所有的页面编码也都是GBK。
那位大神给支个招?小弟菜鸟一名,求教了!
<%@page import="java.sql.*"%>
<%!
public static final String DRIVER="com.mysql.jdbc.Driver";
public static final String URL="jdbc:mysql://localhost:3306/sms?useUnicode=true&characterEncoding=GBK";
public static final String USER="root";
public static final String PWD="bush";
%>
<%
Connection conn=null;
PreparedStatement pst=null;
ResultSet rs=null;
boolean flag=false;
String name=request.getParameter("username");
String pwd=request.getParameter("userpass");
String sql="select uid from user where uname=? and upwd=?";
try{
Class.forName(DRIVER);
conn=DriverManager.getConnection(URL,USER,PWD);
pst=conn.prepareStatement(sql);
pst.setString(1,name);
pst.setString(2,pwd);
rs=pst.executeQuery();
while(rs.next()){
int i=rs.getInt("uid");
out.println("<h1>"+i+"</h1>");
}
if(rs.next()){
flag=true;
session.setAttribute("uname",name);
}
}catch(Exception e){
}finally{
try{
rs.close();
pst.close();
conn.close();
}catch(Exception e){
}
}
if(flag){
%>
<jsp:forward page="main.jsp"/>
<%
}else{
%>
<jsp:forward page="fail.html"/>
<%
}
%>我也刚开始练习jsp,写了个登陆操作,用户名如果是英文的话可以,但是换成中文就总是验证失败啊!
mysql数据库的编码是GBK,所有的页面编码也都是GBK。
那位大神给支个招?小弟菜鸟一名,求教了!
解决方案 »
- Hibernate异常org.hibernate.PropertyAccessException
- 问,用了SSH后,各位的SPRING文件如何配置
- 页面静态化之后,如何用JSP实现文章点击次数的动态显示?
- jsp的问题
- 帮忙写个 SQL 语句啊
- java RPC server的出现的异常。
- 大家谈谈<<think in java >>中英版的感受
- 帮我做做选择,entity ejb or dao+jdbc
- java.sql.SQLException: [Microsoft][SQLServer 2000 Driver for JDBC][SQLServer]将截断字符串或二进制数据。
- 关于web打包发布的问题
- 关于CriteriaBuilder的疑问!
- Win 7 用Java语言或C++语言设置本地连接IPV4的IP地址
打印name
2.String sql="select uname,upwd from user";
打印uname,和upwd
我的这个jdbc:mysql://localhost:3306/sms?useUnicode=true&characterEncoding=GBK
jdbc:mysql://localhost:3306/sms?useUnicode=true&characterEncoding=GBK
之前加入 request.setEncoding("GBK");
页面编码就是gbk,但是在String name=request.getParameter("username")
前加request.setEncoding("gbk");出错了,说request对象没有这个方法。
终于搞定了!!加个reques.setCharacterEncoding("gbk");就好了!谢谢啊!
我自己还是学艺不精啊!