网络编程
位置:首页>> 网络编程>> Asp编程>> 实现有批量删除功能的ASP留言板

实现有批量删除功能的ASP留言板

  发布时间:2007-10-31 07:27:00 

标签:留言板,删除,批量,asp

今天我们来写一个有管理功能的留言板程序。所谓的管理功能,其实就是每条留言前有一个选择框,点中要删除的留言,或者点“删除所有留言”,就完成了批量删除。通过这一实例,我们可以初步了解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.删除全部选中的留言后,再输出留言板。


0
投稿

猜你喜欢

手机版 网络编程 asp之家 www.aspxhome.com