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

ASP
ASP基础讲座(下)
解决IIS5 HTTP500内部错误
ASP 3.0高级编程(四十六)
ASP 3.0高级编程(四十五)
ASP 3.0高级编程(四十四)
ASP 3.0高级编程(四十三)
ASP 3.0高级编程(四十二)
ASP 3.0高级编程(四十一)
ASP 3.0高级编程(三十九)
ASP 3.0高级编程(三十八)
ASP 3.0高级编程(三十七)
ASP 3.0高级编程(三十六)
ASP 3.0高级编程(三十五)
ASP 3.0高级编程(三十四)
ASP 3.0高级编程(三十三)
ASP 3.0高级编程(三十二)
ASP 3.0高级编程(三十一)
ASP错误代码说明
jscript错误代码及相应解释大全
ASP错误处理

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


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-03   浏览: 51 ::
收藏到网摘: 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.删除全部选中的留言后,再输出留言板。