互联网观察 网站建设 网站运营 网络创业 电子商务 建站软件 建站软件教程 网站开发 网页制作 收藏本站
建站常识 | 域名 | 主机 | 网上开店 | 搜索引擎优化 | 网站推广 | 网络赚钱 | 站长经验 | 个人建站 | 网站设计 | 网页特效 | wap网站

Ultradev专题动态包括文本文件(2)动态导航

动态包括文本文件(2)——动态导航

  在教程5中我已经介绍了怎样动态地合并文本文件到你地网页上。现在我们将继续深入探讨它。我的文章数据库引用一些简短的文章(只有一页)以及一些长文章(有20页)。 而我不想让用户装载全部的文章,所以我们我们必须将文本文件分隔成许多小片段。先让我们再次看看数据库的设计。

文章数据库

  现在你可能会注意到我参考的原始文本文件要包含到ArticleURL区域以及接下去的文件作为Page2URL,等等。

区域名字 数据类型 描述

ArticleID Autonumber 主键
Title varchar(75) 文章标题
ShortDesc varchar(255) 简短的描述
ArticleURL varchar(50) 文章第一页的文件名字
Page2URL varchar(50) 文章第二页的文件名字(如果文章很长)
Page3URL varchar(50) 文章第三页的文件名字(如果文章很长)
Page4URL varchar(50) 文章第四页的文件名字(如果文章很长)

示例数据

区域名字 示例

ArticleID 100
Title 文章标题
ShortDesc 文章的简短描述
ArticleURL 100.asp
Page2URL 100-2.asp
Page3URL 100-3.asp
Page4URL 100-3.asp

网站

  现在我们需要对教程5中的代码进行一些修改。
在这个页面上第一件事情要做的是放置一个记录集,用于显示文章和作者。在所有的UltraDev记录集代码下面以及在标签上面增加以下的代码,手稿程序必须在UltraDev的'Go to Specific Record'代码之后,这样ArticleURL才被正确取出。代码如下:

< %
Dim ArticleLink, ArticleFile
If Request.Form("ArticleLink") = "" then
ArticleLink = rsArticleID.Fields.Item("ArticleURL").Value
Else ArticleLink = Request.Form("ArticleLink")
End If
ArticleFile = Chr(34) & ArticleLink & Chr(34)
% >

  其余的代码跟教程5中的一样。

现在我们将要在网页底部增加一些导航按钮。这些按钮将使得用户可以在不同页面上来回浏览,这些按钮及布置如图1所示。

Ultradev专题动态包括文本文件(2)动态导航
(图1)

  在每个表格单元,每一个提交按钮连接到它们自己的表单上。所以在该网页上有4个表单。每一个表单有两个隐藏区域:ArticleID 和 ArticleLink。下面让我们看看Page1按钮和Page2按钮,而Page3按钮和Page4按钮与Page2按钮一样,不用的示它们是使用PageURL或者Page4URL作为记录集数值。

< form name="form4" method="post" action="ArticleInc.asp" >
< input type=hidden name="ArticleID" value="< %=(rsArticleID.Fields.Item("ArticleID").Value)% >">
< input type=hidden name="ArticleLink" value="< %=(rsArticleID.Fields.Item("ArticleURL").Value)% >">
< input type="submit" name="Submit" value="Page 1" >
< /form >

< %
'This code evaluates if Page2URL is NOT NULL, if so it shows the next page link
If ((rsArticlesAuthors.Fields.Item("Page2URL").Value)<> "" ) Then % >

< form name="form4" method="post" action="ArticleInc.asp" >
< input type=hidden name="ArticleID" value="< %=(rsArticleID.Fields.Item("ArticleID").Value)% >">
">
< input type="submit" name="Submit" value="Page 2" >
< /form >
< %End If% >


  下面我在简单解释上面的代码。用户进行搜索之后进入文章列表网页,上面显示文章标题、作者以及日期。点击ArticleName使用Go to Detail Page,它将重定向到ArticleInc.asp。而ArticleID将被传递给Stored Procedure(存储过程),这个存储过程只调用文章。我刚才展示给你的第一片段代码,你看是否有一个Request(请求)数值已经传递给ArticleLink。当第一页被转载的时候并没有发生,所以它缺省使用了Page 1的记录集数值(ArticleURL)。当用户点击Page 2按钮,表单就会使用从隐藏表单元素传来的ArticleID和ArticleLink数值再次被提交。这次重转载记录集仍保持相同的ArticleID,但是使用了要包括的文本文件的新的数值。值得庆幸的是,从记录集的网页其余部分(标题、作者等等)也同时被再次转载。用新包含的文本文件来调用一个网页是一种更好的方法,但是它将丢失开始的区段。

  既然每一文章将总是有一个Page 1,按钮将总是出现在网页的底部。对于每一个接下来的按钮,语句IF..THEN计算了是否NextPageURL有一个数值。如果有的话,它将创建一个按钮,如果没有它就不会创建新按钮。自此我们已经创建了以下的功能:将文章文件分隔成小的片段,并且能动态地将它们包括进网页中,而且还川江了动态导航系统,使得用户可以在多页文章中来回浏览不同页的内容。
  




上一篇:Ultradev专题使用文本&图像的数据库驱动的导航条
下一篇:Ultradev实例教程:2.4 UltraDev与各种数据库的连接代码
相关分类
网页制作 (4121)
  html教程 (591)
  css教程 (546)
  Dreamweaver教程 (1006)
  JavaScript教程 (834)
  网页制作技巧 (378)
  网页特效 (766)
 




   版权所有 Copyright© 2006 黑马建站宝典 联系方式:heima123#gmail.com