一个简单的ASP留言簿实例Word格式.docx
- 文档编号:20693613
- 上传时间:2023-01-25
- 格式:DOCX
- 页数:27
- 大小:23.73KB
一个简单的ASP留言簿实例Word格式.docx
《一个简单的ASP留言簿实例Word格式.docx》由会员分享,可在线阅读,更多相关《一个简单的ASP留言簿实例Word格式.docx(27页珍藏版)》请在冰豆网上搜索。
%
setconn=server.createobject("
adodb.connection"
)
conn.open"
driver={microsoftaccessdriver(*.mdb)};
dbq="
&
server.mappath("
gustbook.mdb"
exec="
select*fromguestbook"
setrs=server.createobject("
adodb.recordset"
rs.openexec,conn,1,1
%>
html>
head>
title>
无标题文档<
/title>
metahttp-equiv="
Content-Type"
content="
text/html;
charset=gb2312"
>
/head>
bodybgcolor="
#FFFFFF"
text="
#000000"
tablewidth="
100%"
border="
0"
cellspacing="
cellpadding="
<
dowhilenotrs.eof
tr>
td>
%=rs("
name"
)%>
/td>
tel"
message"
time"
/tr>
rs.movenext
loop
/table>
/body>
/html>
上例中:
)定义了一个adodb数据库连接组件;
gustbook.mdb"
)连接数据库;
设置查询数据库的命令,select后面加的是字段,如果都要查询的话就用*,from后面再加上前面建立的表的名字gustbook;
)定义一个记录集组件,所有搜索到的记录都放在这里面;
rs.openexec,conn,1,1是打开这个记录集,exec就是前面定义的查询命令,conn就是前面定义的数据库连接组件,后面参数“1,1”,这是读取,后面讲到修改记录就把参数设置为1,3;
这一段读取记录。
在一个表格中,用4列分别显示了上次建立的表里面的四个字段,用do循环,notrs.eof的意思是条件为没有读到记录集的最后,rs.movenext的意思是显示完一条转到下面一条记录,<
%=%>
就等于<
%response.write%>
用于在html代码里面插入asp代码,主要用于显示变量。
三、在数据库写入记录
建立一个写数据的表单提交文件wirte.htm和添加记录文件wirte.asp。
wirte.htm代码:
formname="
form1"
method="
post"
action="
wirte.asp"
name
inputtype="
text"
name="
br>
tel
message
value="
"
submit"
Submit"
提交"
reset"
Submit2"
重置"
/form>
wirte.asp代码:
name=request.form("
tel=request.form("
message=request.form("
insertintoguestbook(name,tel,message)values('
+name+"
'
"
+tel+"
'
+message+"
)"
conn.executeexec
conn.close
setconn=nothing
上面,exec里面的是执行的命令,insertinto后面加的是表的名字,后面的括号里面是需要添加的字段,不用添加的或者字段的内容就是默认值的可以省略。
这里的变量一定要和ACCESS里面的字段名对应,否则就会出错。
values后面加的是传送过来的变量。
在ASP里面不能嵌双引号,所以可以用'
代替双引号,放在双引号里面,连接两个变量用+或者&
,name就是表单传来的变量,在这个变量外面加两个'
,表示是字符串了,后面的tel是数字型变量所以不需要外面包围'
。
大家慢慢分析这句话,假设表单传来的数据name="
aaa"
tel=111,message="
bbb"
,这句话执行时为:
aaa'
111,'
bbb'
接下来的conn.execute就是执行这个exec命令
rs.close
setrs=nothing
把打开的数据库关闭,把定义的组件设置为空,这样可以返回资源。
记住,次序不可以颠倒!
四、在数据库删除记录
建立一个删除数据的提交页面del.htm和删除记录文件del.asp。
del.htm代码:
del.asp"
要删除的记录号:
id"
del.htm提交的是记录的ID。
del.asp代码:
delete*fromguestbookwhereid="
request.form("
这个ASP文件删除了del.htm提交的ID的记录。
删除记录的操作语句为:
五、在数据库修改记录
建立一个修改数据的提交页面modify.htm和写入修改记录的文件modify.asp及保存修改记录的文件modifysave.asp。
modify.htm代码:
get"
modify.asp"
要修改的记录号:
modify.asp代码:
select*fromguestbookwhereid="
+request.querystring("
form"
modifysave.asp"
hidden"
%=request.querystring("
Modifysave.asp代码:
rs.openexec,conn,1,3
rs("
)=request.form("
rs.update
在这里,rs.openexec,conn,1,3后面的参数是1,3,修改记录就要用1,3。
记录集是rs,rs("
aa"
)就是当前记录aa字段的东西,让它等于新的数据request.form("
)就修改了,rs.update就是保存修改过的记录
六、查询数据库记录
建立一个检索数据的提交页面search.htm和搜索记录的文件search.asp。
search.htm代码:
search.asp"
搜索:
name=
andtel=
搜索采用name和tel两个条件,and说明要两个条件都满足,具体在earch.asp中设定条件,这里只是提交数据。
earch.asp代码:
select*fromguestbookwherename='
andtel="
+tel
语句:
+tel的where后面加上的是条件,与是and,或是or。
如果提交的name是张三,tel是111,这句话的意思就是搜索name是张三的,并且电话是111的记录。
如果要搜索name是张三或电话是111的记录,即只要满足其中一个条件就显示出来,可以这么写:
ortel="
如果要搜索一个字段里面是不是包含一个字符串就可以这么写:
whereinstr(name,a)也就是搜索name里面有a(张三)这个字符串的人。
如果条件不匹配,程序会出错。
七、分页技术
下面我们介绍一下ASP里面的分页技术,先说说基本程序,具体操作代码整合在下一节,以节省篇幅。
select*fromgustbook"
rs.PageSize=3
pagecount=rs.PageCount
page=int(request.QueryString("
page"
))
ifpage<
=0thenpage=1
ifrequest.QueryString("
)="
thenpage=1
rs.AbsolutePage=page
rs.pagesize设置一个页面里面显示的记录数,pagecount是我们自己定义的一个变量,rs.pagecount是记录的个数,page也是我们自己定义的一个变量,我们下一页的链接可以设置为index.asp?
page=<
%=page+1%>
,下一页的链接可以设置为index.asp?
%=page-1%>
,这样当按下链接的时候调用页面自己,page这个变量就+1或者-1了,最后我们让rs.absolutepage(当前页面)为第page页就可以了。
thenpage=1,这句话的作用就是我们打开index.asp的时候没有跟随page变量,自动设置为page=1,防止出错,还有当我们if....then...放在一行的时候endif可以省略。
下面说一种特殊情况:
ifpage=1andnotpage=pagecount,这个时候没有上一页,但是有下一页
elseifpage=pagecountandnotpage=1,这个时候没有下一页,但是有上一页
elseifpage<
1,这个时候没有任何记录
elseifpage>
pagecountthen,这个时候没有任何记录
elseifpage=1andpage=pagecount,这个时候没有上一页,没有下一页
else,这个时候有上一页,也有下一页。
下面看一段显示1到n页,且每一个数字点击以后就出现这个数在代表的页面的代码,很常见哦。
%fori=1topagecount%>
ahref="
index.asp?
%=i%>
/a>
%next%>
for....next是循环从i=1开始,循环一次加1到pagecount为止。
八、程序的简单整合
以上介绍了一个最简单的ASP程序,是ASP的精髓,每一个ASP大型程序都包含了它。
下面我们把分开的内容做一个简单的整合和美化,以便进一步增加其实用性。
先新建一个conn.asp的文件,用来配置数据库的连接。
把数据库的连接独立出来供其它程序调用,可使得程序简洁易读。
conn.asp代码:
%setconn=server.createobject("
在Index.asp中,对添加记录、删除记录、修改记录、查询记录和分页技术进行简单的整合,使其集中在一个页面中。
Index.asp代码:
!
--#includefile="
conn.asp"
-->
then
page=1
endif
rs.AbsolutePage=page
Content-Language"
zh-cn"
浏览记录<
tableborder="
1"
width="
style="
border-collapse:
collapse"
bordercolor="
#99CCFF"
<
fo
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 一个 简单 ASP 留言簿 实例
![提示](https://static.bdocx.com/images/bang_tan.gif)