| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2454 人关注过本帖
标题:[求助]用户登录代码纠错
只看楼主 加入收藏
无理取闹
Rank: 9Rank: 9Rank: 9
等 级:贵宾
威 望:53
帖 子:4264
专家分:0
注 册:2006-7-26
收藏
得分:0 

学校的老师 和教材都是老掉牙的了
还继续祸害下一代啊


win32汇编
病毒 加密
目前兴趣所在
2007-01-04 18:13
Abby
Rank: 1
等 级:新手上路
帖 子:28
专家分:0
注 册:2007-1-3
收藏
得分:0 

哦,angeloc谢谢你!我也知道要学会独立思考,可是我弄了三天了,参考了所有手头上的资料,也在网上找了,可是,只是越弄越乱,就是找不到问题的症结。好沮丧,好挫伤编程的积极性啊。

2007-01-04 18:17
Abby
Rank: 1
等 级:新手上路
帖 子:28
专家分:0
注 册:2007-1-3
收藏
得分:0 
唉,只有穿别人的鞋,走自己的路了!可是,我迷路了。。。
2007-01-04 18:20
Abby
Rank: 1
等 级:新手上路
帖 子:28
专家分:0
注 册:2007-1-3
收藏
得分:0 

唉,还是不行呀SOS

2007-01-05 18:23
Abby
Rank: 1
等 级:新手上路
帖 子:28
专家分:0
注 册:2007-1-3
收藏
得分:0 
<td height="246">
<form name="form1" method="post" action="login.jsp">
<div align="right">
<p align="left">用户名:<input name="userName" type="text" value="---请输入您的用户名---">
<br>
<br>
密 码:<input name="Password" type="password" value="请输入您的密码">
<br>
<br>
<input type="submit" name="Submit" value="登录">
<label>
<input type="submit" name="Reset" value="重置">
</label>
</p>
<p>新用户注册 找回密码</p>
</div>
</form></td>
这个用户登录界面在edi.html(主页)中的一个单元格里
2007-01-05 18:29
Abby
Rank: 1
等 级:新手上路
帖 子:28
专家分:0
注 册:2007-1-3
收藏
得分:0 
<%@ page contentType="text/html; charset=gb2312" language="java" import="java.sql.*" import="javax.servlet.*"%>
<!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=gb2312">
<title>无标题文档</title>
</head>
<body>
<%String driver="sun.jdbc.odbc.JdbcOdbcDriver";
Class.forName( driver).newInstance();
Connection con=null;
con=DriverManager.getConnection("jdbc:odbc:EnterpriseDatabaseInformation","","");
Statement stmt=null;
stmt= con.createStatement();
String username=request.getParameter("userName");
String password=request.getParameter("Password");
//输入为空,重导回这个页面
if( username.equal("")|| password.length()==0){
String redirectURL="Untitled-3.jsp";
response.sendRedirect(response.encodeURL( redirectURL));
}
else{
String sqlstring="SELECT * FROM users"; sqlstring+=""; sqlstring+="WHERE UserID LIKE '"+username"'";
ResultSet rs=null;
rs=stmt.executeQuery(sqlstring);
if(rs.next()){
if(rs.getString(2).equals(password)){
rs.close();
stmt.close();
conn.close();}
//如果数据库中存在该用户名,并且密码正确,重导至首页
String redirectURL="edi.html";
response.sendRedirect(response.encodeURL(redirectURL));
}
else{
rs.close();
stmt.close();
conn.close();
//存在该用户名,但密码不正确,重导回登录页面
String redirectURL="edi.html";
response.sendRedirect(response.encodeURL(redirectURL));
}
}
else{
rs.close();
stmt.close();
conn.close();
//不存在该用户名,重导回注册页面
String redirectURL="Untitled-1.jsp";
response.sendRedirect(response.encodeURL(redirectURL));}
}
%>
</body>
</html>
这是用户登录逻辑处理代码
2007-01-05 18:30
Abby
Rank: 1
等 级:新手上路
帖 子:28
专家分:0
注 册:2007-1-3
收藏
得分:0 
Abby希望大家帮助自己看清错误,我真的看了很久很久了,拜托各位高手出手相助啊

edi.html主页中有关用户登录的代码:

...
<title>Company Home</title>
<script language="JavaScript">
fuction isValid(LoginForm){
if(LoginForm.userName.value==""){
alert("登录名不能为空!");
return false;
}
else if((LoginForm.Password.length<6)||(LoginForm.Password.length>12)){
alert("密码必须是6-12位字母或数字!");
return false;
}
else if(LoginForm.Password.length()==0){
alert("密码不能为空!");
return false;
}
else{
return true;
}
}
</script></head>

。。。
<td height="246"><%String getmessage=(String) session.getValue("login_message");if (getmessage==null) getmessage="";%>
<form action="login_confirm.jsp" method="post" name="LoginForm" onSubmit="return isValid(this);">
<div align="right">
<p align="left">用户名:<input name="userName" type="text" value="---请输入您的用户名---">
<br>
<br>
密 码:<input name="Password" type="password" value="请输入您的密码">
<br>
<br>
<input type="submit" name="Submit" value="登录">
<label>
<input type="submit" name="Reset" value="重置">
</label>
</p>
<p>新用户注册 找回密码</p>
</div>
</form></td>
以下是login_confirm(登录验证)的代码:
<body>
<%
String driver="sun.jdbc.odbc.JdbcOdbcDriver";
Class.forName(driver).newInstance();
Connection con=null;
con=DriverManager.getConnection("jdbc:odbc:EnterpriseDatabaseInformation","","");
Statement stmt=null;
stmt=con.createStatement();
String username=request.getParameter("userName");
String password=request.getParameter("Password");
try{
ResultSet rs=con.executeQuery("select * from users where UserName='"+username"' and freeze=0");
if(rs.next()){
String PWD=request.getParameter("Password");
if(PWD.equals(rs.getString("Password"))){//判断用户输入的密码是否正确
session.setAttribute("username",username);//为session变量username赋值
response.sendRedirect("edi.html");//将页面重定向到主页面
}
else{out.println("<script language='javascript'>alert('您输入的用户名或密码有误,请与管理员联系!');window.location.href='edi.html';</script>");}
}
else{out.println("<script language='javascript'>alert('您输入的用户名或密码有误,或您的帐户已经被冻结,请与管理员联系!');window.location.href='edi.html';</script>");}
}
catch(Exception e){out.println("<script language='javascript'>alert('您的操作有误!');window.location.href='edi.html';</script>");}
con.close();
rs.close();
stmt.close();
session.putValue("UserName",username);%>
}
else{
rs.close();
stmt.close();
con.close();
String msg="登录名或者口令有误!";
session.putValue("login_message",msg);
%>
<script language="JavaScript">
window.location="passthrough.jsp?showword=登录"
</script>
<%}
<jsp:forward page="edi.html"/>
<%}%>
</body>
2007-01-05 22:57
Abby
Rank: 1
等 级:新手上路
帖 子:28
专家分:0
注 册:2007-1-3
收藏
得分:0 
以下是passthrough.jsp的代码
<body>
<%@ include file="top.html"%>
<%
session.putValue("loginsign","OK");
%>
<center>
<br><br><p>
<%=request.getParameter("showword")%>成功!你可以
</p><br><br><br>
更改注册信息
在此留言
返回主页
</center>
<br><br><br><p></p>
<%@ include file="bottom.html"%>
</body>

存在的问题是
输入任何值,页面都会跳转到passthrough.jsp这个页面
如果删除连接passtrhough.jsp的代码,又会出现:

} else{ rs.close(); stmt.close(); con.close(); String msg="登录名或者口令有误!"; session.putValue("login_message",msg); %> } else{ rs.close(); stmt.close(); con.close(); String msg="登录名或者口令有误!"; session.putValue("login_message",msg);
2007-01-05 23:32
快速回复:[求助]用户登录代码纠错
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.044138 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved