录数比 PageSize 的值少,最后一页也算是 PageCount 的一页。
(4)PageSize 属性 PageSize 属性是决定 ADO 存取数据库时如何分页显示的关键,使用它就可以决定多少记录组成一个逻辑上的“一页” 。
设定并建立一个页的大小,从而允许使用 AbsolutePage 属性移到其它逻辑页的第一条记录。
PageSize 属性能随时被设定。
(5)RecordCount 属性 RecordCount 属性可以找出一个 Recordset 对象包括多少条记录。
如: lt totlerecordsRS.RecordCount gt7.2 讨论板7.2.1 讨论板程序流程图 讨论组一般用于各个小组在网上上就共同的主题进行讨论。
有时也可称它为BBS,它是网上最早流行的栏目,为大家提供了发布信息、自由抒发情感、讨论问题的空间。
本讨论组在设计时,是由管理员发讨论主题,然后在每个讨论主题里可以就主题进行讨论。
其程序流程图如图7-4所示: 登录 发主题 回复主题 显示讨论信息 图 7-4 公告板程序流程图7.2.2 公告板数据库的设计 BBS 中涉及两个数据表一个是主题数据表另一个是与主题相关的讨论帖数据表。
主题数据表和相关讨论帖数据表如图 7-5 和图 7-6 所示。
这两张表以 TitleID 为关键字进行关联。
关联图如图 7-7 所示。
图 7-5 titles 数据表 图 7-6details 数据表6 图 7-7 titles 和 details 关联图7.2.3 讨论板功能的实现 讨论主要由输入主题、提交主题、显示主题和回复主题四个部分组成。
网页文件主要有 4个。
其中 xuexi.asp 用于显示讨论板首页,包括讨论主题和提交主题功能,titlenew.asp 用于将新主题写入数据库, detail.asp 用于显示某个主题下的讨论内容,detnew.asp 用于将讨论内容写入数据库。
讨论板程序调用的实现,如图 7-8 所示。
图 7-87.2.4 程序设计要点 在 Xuexi.asp 中,显示的日期是主题创建日期到最后一条讨论内容的更新日期,是一个时间段,与 titles 数据表所一定的字段不一致。
如图 7-9 所示。
图 7-9 相应的程序如下: lttable borderquot0quot Cellspacingquot5quot alignquotcenterquotgt lttr bgColorquotaaabcdquotgt lttdgt日期lt/tdgt lttd NowrapPgt工作站小组名称 lttdgt则数lt/tdgt lttdgt主题lt/tdgt lt/trgt lt if not rsData.EOF Then rsData.Movefirst While Not rsdata.EOF Day1rightquot00quotampDayrsDAtaquotCreateDatequot2 Month1rightquot00quotampmonthrsDataquotCreateDatequot2 Day2Rightquot00quotampDayrsdataquotLastnewsDatequot2 Month2rightquot00quotampMonthrsDataquotLastNewsDatequot2 DateRangeMonth1ampquot/quotampDay1ampquot-quotampMonth2ampquot/quotampDay2 gt lttr valignquottopquotgt lttd NowrapgtltDateRangegt lt/tdgt lttdgtltrsDataquotNamequotgt lt/tdgt lttd AlignquotrightquotgtltrsDataquotNumberquotgt lt/tdgt lttdgtlta HREFquotDetail.aspTitleIDltrsdataquotTitleIDquotgtquotgtltrsDataquotsubjectquotgt lt/agtlt/tdgt lt/trgt lt rsdata.MoveNext Wend gt lt/tablegt 在显示记录的“主题”subject字段时,为主题设置了一个超级链接,以便进入detail.asp8页面。
超级链接的建立方法如下: lta HREFquotDetail.aspTitleIDltrsdataquotTitleIDquotgtquotgtltrsDataquotsubjectquotgt lt/agt detnew.asp文件用于保存讨论内容。
当进入某一个讨论主题,并发表意见之后,detnew.asp除了要将讨论内容保存于details数据表之外,还需要同时更新titles数据表的以下两个字段: LastNewsDate字段:最后被讨论的时间,更新后的内容为系统时间取now函数。
Number字段:参与讨论的则数,更新后,在原数的基础上加一。
上面两个字段的更新代码如下: set cmdserver.CreateObjectquotADODB.commandquot set cmd.activeConnectionrsData.ActiveConnection sqlquotupdate titles set lastNewsDatenownumbernumber1 wheretitleIdquotamptitleId cmd.CommandTextsql cmd.execute实验 留言板与讨论板程序设计实例 本章实验主要针对留言板和讨论板进行设计,根据本章提供的数据库及源程序,设计出有特点的留言板和讨论板。
下面的界面及源程序仅供参考。
一、留言板程序设计 1、界面设计 留言板首页比较简单,如图7-2所示。
上部是留言显示部分,下面是留言添加表单,留言填写完毕后,单击“送出留言”按钮后传送到chuliliuyan.asp去处理,处理完后再引导回首页。
如图7-10所示。
图7-10 2.Liuyanban.asp代码 lt Dim strConn Dim objConnection set objConnectionServer.CreateObjectquotADODB.Connectionquot strConnquotProviderMicrosoft.Jet.OLEDB.4.0DataSourcequotampServer.MapPathquotliuyanban.mdbquot objConnection.open strConn Dim rs set rsserver.CreateObjectquotADODB.Recordsetquot rs.open quotselect from liuyanbanku order by 时间 descquotobjConnection33 gt lthtmlgt ltheadgtltstyle typequottext/cssquotgtlt/headgt ltbody bgcolorquotebfad1quot leftmargin0 topmargin0gt lth2 aligncentergtltfont colorquotFF00FFquotgtlta hrefquot../../index.aspquotgtltimgsrcquotbanner1.jpgquot widthquot770quot heightquot100quot borderquot0quot altquot回首页quotgtlt/agtlt/fontgt lt/h2gt lt pageClngrequestquotpagequot10 if pagelt1 Then page1 if pagegtrs.pageCount then pagers.pagecount showonePage rspage gt ltFORM Actionxianshiliuyan.asp methodGETgt ltpgt lt/FORMgt lt sub ShowOnePagerspage rs.AbsolutePagepage for ipage1 to rs.pageSize rsTobook rs rs.movenext if rs.EOF Then Exit For next end sub sub rsTobookrs memoreplacersquot留言quotvbCrLfquotltbrgtquot if lenrsquot图标quotltgt0 then picHtmlquotltIMG SRCquotamprsquot图标quotampquotgtquot else picHtmlquotquot end if gt ltTable border0 widthquot800quot leftmargin0 topmargin0 cellpaddingquot1quotcellspacingquot1quotaligncentergt lttrgt lttd width43 bgcolord4d3b1gtltpicHTMLgt ltdiv alignquotrightquotgtlt/divgt ltdiv alignquotrightquotgtlt/divgt ltdiv alignquotcenterquotgtlt/divgt lt/tdgt ltTD widthquot710quotgt lttable border0 widthquot751quot cellpaddingquot1quot cellspacingquot1quotgt lttrgt lttd widthquot141quot bgcoloraaabcd nowrapgtlta classquot38jsquotgt 留 言者:lt/agtltrsquot姓名quotgtlt/tdgt lttd widthquot208quot bgcoloraaabcd nowrapgt主题:ltrsquot主题quotgtlt/tdgt lttd widthquot157quot bgcoloraaabcd nowrapgt时间:ltrsquot时间quotgtlt/tdgt lttd widthquot232quot bgcoloraaabcd nowrapgtE-mail:ltahrefquotmailto:ltrsquotE-mailquotgtquotgtltrsquotE-mailquotgtlt/agtlt/tdgt lt/trgt lttrgt lttd colspan4 bgcolord4d4c8gtltmemogtlt/tdgt lt/trgt lt/tablegt lt/tdgtlt/trgt lt/tablegt lt End Sub gt ltFORM Actionxianshiliuyan.asp methodGETgt ltA hrefquot ../liuyanban/liuyanban.aspquotgt返回留言窗体lt/agt lt if pageltgt1 then response.write quotltA hrefliuyanban.asppage1gt第一页lt/agtquot response.write quotltA hrefliuyanban.asppagequotamppage-1ampquotgt上一页lt/agtquot end if if pageltgtrs.pagecount then r
上一篇:
2012年计算机毕业论文题目大全
下一篇:
澳大利亚留学生英语会计案例分析报告:Blue Moon case study