当前位置: 首页 > 图文教程 > 网络编程 > ASP > 实现有管理功能的ASP留言板

ASP
分享一段代码show.asp?id=26变成show/?26的形式
多域名一网站时如果返回最原来的域名
[原创]完美解决ASP 不能更新。数据库或对象为只读。
5天学会asp
TSYS中生成静态页时溢出: ''CInt''
对象标记具有无效的 ''MSWC.MyInfo'' ProgID
[原创]随机增加网站点击的一个不错的方法
Microsoft JET Database Engine 错误 ''80004005'' 未指定的错误的完美解决方法
反SPAM新思路—换Z-BLOG的验证码!
七步倒┈→专用asp后门
asp下实现代码的“运行代码”“复制代码”“保存代码”功能源码
使用ASP实现网站的“目录树”管理的代码
ShowPage 显示“上一页 下一页”等信息的封装代码
[原创]站长感慨asp编程究竟何去何从
响应对象 错误 ''ASP 0185 : 80020003'' 缺少默认属性
[原创]asp下用实现模板加载的的几种方法总结
[原创]asp获取URL参数的几种方法分析总结
Access数据库中“所有记录中均未找到搜索关键字”的解决方法
ASP程序中输出Excel文件实例一则
ASP应用中如何限制同一表单被多次提交

实现有管理功能的ASP留言板


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-03   浏览: 196 ::
收藏到网摘: n/a

 

    今天我们来写一个有管理功能的留言板程序。所谓的管理功能,其实就是每条留言前有一个选择框,点中要删除的留言,或者点“删除所有留言”,就完成了批量删除。通过这一实例,我们可以初步了解ASP中对数据库的基本操作。
    
  一、建立数据库(ACCESS2000中文版)

myid      文本型   20字节   这是发言的唯一标志
myname    文本型   10字节   这是保存留言人姓名的
nowtime   日期/时间型    这里记录了留言时间
mytitle   文本型   30字节   这是留言的题目
mybody    备注    留言内容
    
  其中的myid字段是关键,它是删除的唯一标志。
    
  二、管理程序

    manage.asp代码
    '先定义变量
    dim listrs,conn,cmd
    '可根据实际留言数量修改i的循环次数
    for i=1 to 100
    if request("delit"&i)<>empty then
    '上面这条语句为关键部分,检查第i条留言是否被选中,若被选中,则执行下面的删除操作
    Set conn = Server.CreateObject("ADODB.Connection")
    sConnection = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="&Server.MapPath("guestbook.mdb")&";"
    'mappath函数要用一个参数guestbook.mdb,表示要连接的数据库,注意路径问题
    conn.Open sConnection
    '再连接数据表
    set cmd=Server.Createobject("ADODB.Command")
    set cmd.activeconnection=conn
    cmd.commandtext="delete from guest where myid='"&request("delit"&i)&"'"
   '上面的guest是数据表的表名,myid是字段名
   cmd.execute
   set conn=Nothing
   set cmd=Nothing
   '执行SQL指令及释放对象
   end if
   next
   '输出表单,注意action属性指向manage.asp
   response.write ""
   '连接数据库
   set conn=Server.CreateObject("ADODB.Connection")
   set listrs=server.createobject("ADODB.Recordset")
   sConnection = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="&Server.MapPath("guestbook.mdb")&";"
    conn.Open sConnection
    listrs.open "select * from guest",conn,2,2
    '上面打开了数据库的guest表
    i=1
    '变量i开始记数
    while not listrs.eof
    response.write "来自:"&listrs("myname")&"----"&listrs("mytitle")&"时间:"&listrs("nowtime")&"
"&listrs("mybody")&"
"
    i=i+1
   '上面两步是关键处,输出每条留言的同时,输出一个checkbox复选框,此框功能是选中与不选中将返回不同值
    listrs.movenext
    wend
    set listrs=Nothing
   '输出提交按钮和表单结束标志
    response.write

三、代码分析
    
  代码不太好理解,且听我说来:
    
  1.程序首次执行时,if request("delit"&i)<>empty then总是返回假值,因为复选框未被选中,接着输出所有的留言。
    
  2.在选中了要删除的留言后,按下“删除按钮”,重新执行。

  3.删除全部选中的留言后,再输出留言板。