表名:user_Info
列名:Num,Name,Pwd,Role 分别表示:用户号,用户名,密码,角色
<%@ page contentType="text/html; charset=gb2312" language="java" import="java.sql.*" errorPage="" %>
<%@ page import="condb.condb" %> //此处引入连接数据库包
<%
request.setCharacterEncoding("GBK");
String strUserName="";
String strUserPwd="";
strUserName=request.getParameter("userId"); //得到登陆页传过来的用户号
strUserPwd=request.getParameter("userPwd"); //得到。用户密码
%><%
Connection con;
Statement st;
ResultSet rs;
String sql="select * from user_Info where Num='"+strUserName+"'";try{
con=condb.getConnection(); //连接数据库
st=con.createStatement();
rs=st.executeQuery(sql);
if(rs.next()) //查询此用户是否存在
{
if(rs.getString("Pwd").equals(strUserPwd)) //检查密码是否正确
{
out.print(rs.getString("Num"));
out.print(rs.getString("Name"));
out.print(rs.getString("Pwd"));
out.print(rs.getString("Role"));
}
}
else
{
out.print("error!!!!!");
}
st.close();
con.close();}catch(SQLException e)
{
}
%>出现错误:
只能输出用户号和用户名2个,还有密码和角色为什么不能输出来???
假如::
if(rs.getString("Pwd").equals(strUserPwd)) //检查密码是否正确
{
out.print(rs.getString("Num"));
out.print(rs.getString("Name"));
out.print(rs.getString("Pwd"));
out.print(rs.getString("Role"));
}
改为::
out.print(rs.getString("Num"));
out.print(rs.getString("Name"));
out.print(rs.getString("Pwd"));
out.print(rs.getString("Role"));
则输出4个结果,但是就不能验证密码了
初学 请指教。。
列名:Num,Name,Pwd,Role 分别表示:用户号,用户名,密码,角色
<%@ page contentType="text/html; charset=gb2312" language="java" import="java.sql.*" errorPage="" %>
<%@ page import="condb.condb" %> //此处引入连接数据库包
<%
request.setCharacterEncoding("GBK");
String strUserName="";
String strUserPwd="";
strUserName=request.getParameter("userId"); //得到登陆页传过来的用户号
strUserPwd=request.getParameter("userPwd"); //得到。用户密码
%><%
Connection con;
Statement st;
ResultSet rs;
String sql="select * from user_Info where Num='"+strUserName+"'";try{
con=condb.getConnection(); //连接数据库
st=con.createStatement();
rs=st.executeQuery(sql);
if(rs.next()) //查询此用户是否存在
{
if(rs.getString("Pwd").equals(strUserPwd)) //检查密码是否正确
{
out.print(rs.getString("Num"));
out.print(rs.getString("Name"));
out.print(rs.getString("Pwd"));
out.print(rs.getString("Role"));
}
}
else
{
out.print("error!!!!!");
}
st.close();
con.close();}catch(SQLException e)
{
}
%>出现错误:
只能输出用户号和用户名2个,还有密码和角色为什么不能输出来???
假如::
if(rs.getString("Pwd").equals(strUserPwd)) //检查密码是否正确
{
out.print(rs.getString("Num"));
out.print(rs.getString("Name"));
out.print(rs.getString("Pwd"));
out.print(rs.getString("Role"));
}
改为::
out.print(rs.getString("Num"));
out.print(rs.getString("Name"));
out.print(rs.getString("Pwd"));
out.print(rs.getString("Role"));
则输出4个结果,但是就不能验证密码了
初学 请指教。。
解决方案 »
- Tomact报错,Socket accept failed,是什么原因,跪求高手解答。
- 列表功能实现了,如何用组合键实现单条记录的查询(连接Oracle数据库),急~~~~~~~
- 【急】S2SH修改Action得不到页面的值,求解???
- sql ResultSet的判断问题 请各位懂的帮帮忙拜托!
- 关于hibernate自动生成表
- 验证码的问题<一直困扰我>
- jboss数据库连接池怎么配置?
- 在问tomcat+SQLServer+JSP平台下的连接池问题
- 郁闷!!我昨天开始学用JSP。真是倒霉!!散分!
- 那有jspSmartUpload的源码,想看看!
- [求助!]关于由数字,大小写字母,中文的正则表达式实现
- 打印功能
{
String pwd = rs.getString("Pwd") ;
String num = rs.getString("Num") ;
String name = rs.getString("Pwd") ;
String role = rs.getString("Role") ;if(pwd.equals(strUserPwd)) //检查密码是否正确
{
out.print(num);
out.print(name);
out.print(pwd);
out.print(role);
}
///////rs取一条记录时同一字段不能取两次,也就是同一记录的字段游标不能回溯
con=condb.getConnection(); //连接数据库
st=con.createStatement();
rs=st.executeQuery(sql);
String s=rs.getString("Pwd");
if(rs.next()) //查询此用户是否存在
{
if(s.equals(strUserPwd)) //检查密码是否正确
{
out.print(rs.getString("Num"));
out.print(rs.getString("Name"));
out.print(s);
out.print(rs.getString("Role"));
}
}
else
{
out.print("error!!!!!");
}
st.close();
con.close();}catch(SQLException e)
{
}
////
这样你试下看。。呵呵
if(rs.getString("Pwd").equals(strUserPwd)) //检查密码是否正确
{
out.print(rs.getString("Num"));
out.print(rs.getString("Name"));
out.print(rs.getString("Pwd"));
out.print(rs.getString("Role"));
}
rs.next()游标会下移一个,rs.getString("Pwd")会在下移一个
String num = rs.getString("Num") ;
String name = rs.getString("Name") ;
String role = rs.getString("Role") ;1.上面的rs是不是相当于是一个游标,指向查询到的集合中的某一行(表中某元素)?
2.还是rs指向的是表中某个列??也就是说可以这样写
String pwd = rs.getString("Pwd") ;
String num = rs.getString("Num") ;
String name = rs.getString("Name") ;
String role = rs.getString("Role") ;
String ro= rs.getString("Role") ;
假如此时候rs指向集合集的Pwd,Num,Name 3个列的同一行(第n行),难道在Role列中,rs就指向
(n+1行)了吗?哪个正确呢?
{
out.print(rs.getString("Num"));
out.print(rs.getString("Name"));
out.print(rs.getString("Pwd"));
out.print(rs.getString("Role"));
}
rs.next()游标会下移一个,rs.getString("Pwd")会在下移一个回复:
rs.next()是判断游标rs的下一个是否为空的啊,怎么会下移一个???