数据库表:user
id name pwd wenti daan
conn.asp
<%
db="data/data.mdb" '数据库存放目录
on error resume next
set conn=server.createobject("adodb.connection")
conn.open "driver={microsoft access driver (*.mdb)}dbq="&server.mappath(db)
if err then
err.clear
set conn = Nothing
response.write "数据库连接出错,请检查conn.asp中的连接字符串。"
response.end
end if
function CloseDB
Conn.Close
set Conn=Nothing
End Function
%>
<%
dim badword
badword="'|and|select|update|chr|delete|%20from||insert|mid|master.|set|chr(37)|="
if request.QueryString<>"" then
chk=split(badword,"|")
for each query_name in request.querystring
for i=0 to ubound(chk)
if instr(lcase(request.querystring(query_name)),chk(i))<>0 then
response.write "<script language=javascript>alert('传参错误!参数 "&query_name&" 的值中包含非法字符串!\n\n')location='"&request.ServerVariables ("HTTP_REFERER")&"'</Script>"
response.end
end if
next
next
end if
%>
reg.asp
<!--#i nclude file="conn.asp"-->
<%
if request("action")="reg" then
set rs=server.CreateObject("adodb.recordset")
rs.open "select * from user where name='"&trim(request("name"))&"'",conn,1,1
if rs.recordcount>0 then
response.write "<Script language='JavaScript'>window.alert('您输入的用户名已存在,请返回重新输入!')history.back(-1)</Script>"
response.End()
end if
sql="select * from user"
set rs=server.createobject("adodb.recordset")
rs.open sql,conn,1,3
rs.addnew
rs("name")=trim(request.Form("name"))
rs("pwd")=trim(request.Form("pwd"))
rs("wenti")=trim(request.Form("wenti"))
rs("daan")=trim(request.Form("daan"))
rs.update
rs.close
set rs=nothing
response.write "<script language=javascript>alert('注册成功,点击确定立即登录!')location.replace('login.asp')</script>"
response.end
end if
%>
<html>
<head>
<meta http-equiv="Content-Type" content="text/htmlcharset=gb2312">
<title>无标题文档</title>
</head>
<body><!--#i nclude file="top.asp"-->
<table width="90%" border="1" align="center" cellpadding="10" cellspacing="0">
<tr>
<td>用户注册
<form name="form1" method="post" action="?action=reg" onsubmit="return chkform(this)">
<table width="347" border="1" cellpadding="5" cellspacing="0">
<tr>
<td width="142">用户名</td>
<td width="179"><input name="name" type="text" id="name"></td>
</tr>
<tr>
<td>密码</td>
<td><input name="pwd" type="password" id="pwd"></td>
</tr>
<tr>
<td>密码提示问题</td>
<td><input name="wenti" type="text" id="wenti"></td>
</tr>
<tr>
<td>密码提示答案</td>
<td><input name="daan" type="text" id="daan"></td>
</tr>
<tr>
<td colspan="2"><input type="submit" name="Submit" value="注册">
<input type="reset" name="Submit" value="重置"></td>
</tr>
</table>
</form>
</td>
</tr>
</table>
</body>
</html>
top.asp
<meta http-equiv="Content-Type" content="text/htmlcharset=gb2312">
<table width="90%" border="1" align="center" cellpadding="10" cellspacing="0">
<tr>
<td><a href="/""index.asp">首页</a>
<%
if Session("name")="" then
%>
<a href="/""reg.asp">注册</a><a href="/""login.asp">登陆</a>
<a href="/""pwd.asp">忘记密码?</a><%
else
%>
欢迎您<%=Session("name")%>, <a href="/""loginout.asp">注销登陆</a>
<%
end if
%>
<a href="/""jiami.asp">加密页</a></td>
</tr>
</table>
<br>
login.asp
<!--#i nclude file="conn.asp"-->
<html>
<head>
<meta http-equiv="Content-Type" content="text/htmlcharset=gb2312">
<title>无标题文档</title>
</head>
<body><!--#i nclude file="top.asp"-->
<table width="90%" border="1" align="center" cellpadding="10" cellspacing="0">
<tr>
<td>
用户登陆
<%
if Session("name")="" then
%>
<form name="form1" method="post" action="loginok.asp?action=login" onsubmit="return chkform(this)">
<table border="1" cellspacing="0" cellpadding="5">
<tr>
<td width="116">用户名</td>
<td width="116"><input name="name" type="text" id="name"></td>
</tr>
<tr>
<td>密码</td>
<td><input name="pwd" type="password" id="pwd"></td>
</tr>
<tr>
<td colspan="2"><input type="submit" name="Submit" value="登陆">
<input type="reset" name="Submit" value="重置"></td>
</tr>
</table>
</form>
<%
else
%>
<table border="1" cellspacing="0" cellpadding="5">
<tr>
<td width="303"><%=Session("name")%>,您已经成功登陆</td>
</tr>
</table>
<%
end if
%>
</td>
</tr>
</table>
</body>
</html>
loginok.asp
<!--#i nclude file="conn.asp"-->
<%
Session.TimeOut=30
if request("action")="login" then
name=trim(request.form("name"))
pwd=trim(request.form("pwd"))
if name="" or pwd="" then
Response.Redirect ("login.asp")
end if
set rs=server.createobject("adodb.recordset")
sql="select * from user where name='"&name&"'and pwd='"&pwd&"'"
rs.open sql,conn,1,1
if not rs.eof then
session("name")=name
response.redirect"edit.asp"
else
response.redirect"Error.asp"
response.end
end if
end if
%>
loginout.asp
<%
session("name")=""
response.write "<script language=javascript>alert('退出登陆成功!')location.href('index.asp')</script>"
response.end
%>
pwd.asp
<!--#i nclude file="conn.asp"-->
<html>
<head>
<meta http-equiv="Content-Type" content="text/htmlcharset=gb2312">
<title>无标题文档</title>
</head>
<body><!--#i nclude file="top.asp"-->
<table width="90%" border="1" align="center" cellpadding="10" cellspacing="0">
<tr>
<td><p>找回密码</p>
<form name="form1" method="post" action="pwd2.asp?action=pwd">
<table width="398" border="1" cellpadding="5" cellspacing="0">
<tr>
<td width="130">请输入用户名</td>
<td width="168"><input name="name" type="text" id="name"></td>
<td width="62"><input type="submit" name="Submit" value="查询"></td>
</tr>
</table>
</form></td>
</tr>
</table>
</body>
</html>
pwd2.asp
<!--#i nclude file="conn.asp"-->
<html>
<head>
<meta http-equiv="Content-Type" content="text/htmlcharset=gb2312">
<title>无标题文档</title>
</head>
<body><!--#i nclude file="top.asp"-->
<table width="90%" border="1" align="center" cellpadding="10" cellspacing="0">
<tr>
<td>
找回密码
<%
name=trim(request.form("name"))
set rs=server.createobject("adodb.recordset")
sql="select * from user where name='"&name&"'"
rs.open sql,conn,1,1
if not rs.eof then
%>
<form name="form1" method="post" action="pwd3.asp">
<table width="398" border="1" cellpadding="5" cellspacing="0">
<tr>
<td><%=rs("name")%></td>
<td></td>
<td><input name="name" type="hidden" id="name" value="<%=rs("name")%>"></td>
</tr>
<tr>
<td width="130">密码提示问题</td>
<td width="168"><%=rs("wenti")%>
</td>
<td width="62"></td>
</tr>
<tr>
<td>密码提示答案</td>
<td><input name="daan" type="text" id="daan"></td>
<td><input type="submit" name="Submit" value="查询"></td>
</tr>
</table>
</form>
<% else
%>
<table width="413" border="1" cellpadding="5" cellspacing="0">
<tr>
<td>你输入的用户名不存在,请<a href="/""javascript:history.back()">返回</a>重新输入,或者<a href="/""reg.asp">注册</a></td>
</tr>
</table>
<%end if
%>
</td>
</tr>
</table>
</body>
</html>
pwd3.asp
<!--#i nclude file="conn.asp"-->
<html>
<head>
<meta http-equiv="Content-Type" content="text/htmlcharset=gb2312">
<title>无标题文档</title>
</head>
<body><!--#i nclude file="top.asp"-->
<table width="90%" border="1" align="center" cellpadding="10" cellspacing="0">
<tr>
<td>
找回密码
<%
name=trim(request.form("name"))
daan=trim(request.form("daan"))
set rs=server.createobject("adodb.recordset")
sql="select * from user where name='"&name&"' and daan='"&daan&"'"
rs.open sql,conn,1,1
if not rs.eof then
%>
<table width="398" border="1" cellpadding="5" cellspacing="0">
<tr>
<td width="130"><%=rs("name")%>,您的密码</td>
<td><%=rs("pwd")%>
</td>
</tr>
</table>
<% else
%>
<table width="413" border="1" cellpadding="5" cellspacing="0">
<tr>
<td>你输入的密码提示答案不正确,请<a href="/""javascript:history.back()">返回</a>重新输入</td>
</tr>
</table>
<%end if
%>
</td>
</tr>
</table>
</body>
</html>
error.asp
<!--#i nclude file="conn.asp"-->
<html>
<head>
<meta http-equiv="Content-Type" content="text/htmlcharset=gb2312">
<title>无标题文档</title>
</head>
<body><!--#i nclude file="top.asp"-->
<table width="90%" border="1" align="center" cellpadding="10" cellspacing="0">
<tr>
<td>登陆失败,请检查用户名和密码是否正确 <a href="/""login.asp">返回</a></td>
</tr>
</table>
</body>
</html>
edit.asp
<!--#i nclude file="conn.asp"-->
<%
if request("action")="edit" then
name=session("name")
set rs=server.createobject("adodb.recordset")
sql="select * from user where name='"&name&"'"
rs.open sql,conn,3,2
rs("pwd")=trim(request.Form("pwd"))
rs("daan")=trim(request.Form("daan"))
rs.update
rs.close
set rs=nothing
response.write "<script language=javascript>alert('编辑成功!')location.href('edit.asp')</script>"
end if
%>
<html>
<head>
<meta http-equiv="Content-Type" content="text/htmlcharset=gb2312">
<title>无标题文档</title>
</head>
<body><!--#i nclude file="top.asp"-->
<table width="90%" border="1" align="center" cellpadding="10" cellspacing="0">
<tr>
<td><p>修改资料</p>
<p>
<%
if Session("name")="" then
%>
对不起你还没有登陆,请<a href="/""login.asp">登陆</a>或者<a href="/""reg.asp">注册</a>
<%
else
%>
<%
name=session("name")
set rs=server.createobject("adodb.recordset")
sql="select * from user where name='"&name&"'"
rs.open sql,conn,1,1
%>
</p>
<form action="?action=edit" method="post" name="form" id="form">
<table border="1" cellpadding="5">
<tr>
<td>用户名</td>
<td><%=rs("name")%></td>
</tr>
<tr>
<td>密码</td>
<td><input name="pwd" type="text" id="pwd" value="<%=rs("pwd")%>"></td>
</tr>
<tr>
<td>密码提示问题</td>
<td><%=rs("wenti")%></td>
</tr>
<tr>
<td>密码提示答案</td>
<td><input name="daan" type="text" id="daan" value="<%=rs("daan")%>"></td>
</tr>
<tr>
<td></td>
<td><input type="submit" name="Submit" value="修改">
<input type="reset" name="Submit" value="重置"></td>
</tr>
</table>
</form>
<p><%
end if
%>
</p></td>
</tr>
</table>
</body>
</html>
这是详细代码,希望我的回答对你有帮助
如果对您有帮助的话,请及时采纳哈
在这个几点<connectionStrings></connectionStrings>中添加,<add name="OracleConn" connectionString="pOs+MY5hcdRGZWG8WutJUuPMqGyMbvZ4/6k+p+WewBMZht2c8OJDzZUgyLSElxlWjIgtiGbOSb++SkkGAyCp+qFWSlIuwrd6BeTvcbPGhIJJwDquInFTzF3k4xWqzwpO"/>
我这个是经过机密了的连接串。
在vs里面菜单栏,视图——>服务器资源管理器——>数据连接 处右键添加连接。根据提示填写服务器ip、数据库名、用户名、密码。添加完成之后点击一下测试按钮。前面的信息填写正确后回提示测试成功。点击确定讲出现如下连接列表。
至于web.connfig配置文件中的连接字符串在添加的数据连接属性中能找到。或者右键点击修改连接,也能找到。
TextBox1和TextBox2 这两个控件的值取出来分别分在下面的sid,Spassword这两个字段上。
select * from StuffInfo where sid= and Spassword=
点击确定按钮的时候在代码里面查询数据库。
看看查询数据库之后返回的数据的行数。如果返回行数大于0,则验证成功。否则失败。
在login.aspx这个页面代码里面验证成功之后 跳转到 index.aspx页面即可。
跳转页面的代码response.Redirect("http://www.jb51.net", false)
本人多年没写代码了,你确认下跳转页面的代码是否正确。百度一下应该就能找到。
纯手工敲的,望采纳!
能不能详细点啊。access数据库是mdb文件,如果你用access打开时不能编辑,那就检查一下这个文件是否设置为只读了。
而如果是在ASP中打开这个mdb文件进行数据库的读写,步聚如下:
一、创建Adodb.Connection对象用来连接数据库
使用以下语句:Set Conn=Server.CreateObject("Adodb.Connection")
打开数据库连接:Conn.Open "Provider=Microsoft.Jet.OLEDB.4.0Data Source="&server.mappath("xxx.mdb")
其中的xxx.mdb就是你的access数据库名称(可以加上路径例如:/data/xxx.mdb。
二、创建adodb.recordset记录集对象来打开数据表并获取记录集
使用以下语句:
set rs=server.createobject("adodb.recordset")
rs.open "select * from xxtable",conn,1,3
这样就打开了xxtable这个表,并返回了其中的所有记录,并且是以可编辑状态打开的。其中的conn即是你的数据库连接对象的名称,后面紧跟着的1是recordset记录集对象的游标类型,此处为1表示你通过此SQL语句获得的记录集的游标可以前后移动,这样你就可以进行记录集的循环等 *** 作。最后面的一个数字3,是记录集的锁定类型,3表示可编辑
关于游标类型及锁定类型可以百度搜索一下
通过上面两步,你已经获得了一些记录集并且处于可编辑这些记录集的状态了
接下来就可以使用rs.addnew,rs.update进行记录的新增,更新 *** 作。
比如新增:
rs.addnew() '表示新增一条记录
rs("name")="test1"
rs("pass")="1234"
rs.update()
这样就新增了一条记录,其中的rs.addnew()表示新增一条记录,紧接着用rs("name"),rs("pass")来写入数据到name,pass这两个字段中,然后使用rs.update来保存一下你刚才的写入,这样一条新记录的插入就完成了。
而如果你只是修改一条已有的记录,则不需要rs.addnew(),后面的代码一样即可完成。不过修改记录一般是会先查询指定条件的某一条记录再进行rs.updae
当然你也可以不使用recordset记录集对象,而直接用sql语句的insert,update等来完成。
另外补充说明一点:
如果你发现用recordset或是sql的insert,update不能成功增加记录或修改记录,那么你就检查一下你的这个数据库连接代码是否连接成功(也就是数据库文件的路径是否写对)。如果这些都对,那么你再检查这个数据库文件是否是只读状态,如果也不是只读状态,那么就应该是文件权限的问题了。当你的MDB文件在NTFS格式的磁盘分区中时,需要设置文件的权限才可以写入数据,否则就只能读取。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)