建站代码网

热门标签

由数据库集体创建HTML页面

在前面的文章中我们访问了HTML,我们展示了如何将Access数据库可以被输出每个意见到一个静态的HTML页面。该演示将说明如何从由DB类别中的一个Access数据库输出HTML页面。在前面的例子中,我们创建了由这里的50个州被分为34 个类别的50个页面。在读取分贝的内容之后,而不是写入输出到浏览器之后它被写入到服务器。每个类别(年进入联盟)将拥有自己的动态创建的页面,其显示以及(所有这一切在这一年进入了状态)对应的信息。目录页的表也(在浏览器中)周边的所有国家网页轻松导航创造。当前时间(服务器时间)也被添加到显示所有的.HTML网页上动态创建。当在您的服务器上执行这个是需要对你自己执行的目录设置权限的。
<html>
<title>CodeAve.com(
Create HTML Pages from Access Db by Group)</title>
<body bgcolor="#FFFFFF">
<%
查询数据库的名称
accessdb="state_info" 

数据库的连接字符串
cn="DRIVER={Microsoft Access Driver (*.mdb)};"
cn=cn & "DBQ=" & server.mappath(accessdb)

创建一个服务器记录设置对象
Set rs = Server.CreateObject("ADODB.Recordset")

查询对于所有年份的state info states表格
输入州的名称
sql = "select year,state,statename,capital,year,order "
sql = sql & "from states order by year, statename " 
rs.Open sql, cn

移动到第一个记录
rs.movefirst

循环到所有记录的输出
do while not rs.eof

如果变量the year<>当前的记录值
创建一个新的db 输出html页面
if the_year <> clng(rs("year")) then

创建一个当前年份的浏览器输出量超链接
response.write "<a href=""" & rs("year") & ".htm"" target=""_blank"">"
response.write rs("year") & "</a> created at" & now() & "<br>"

创建一个以当前年份记录为主的文件
file_being_created= rs("year") & ".htm"
set fso = createobject("scripting.filesystemobject")
Set act = fso.CreateTextFile(server.mappath(file_being_created), true)

写输出到html文件的顶端
act.WriteLine("<html>")
act.WriteLine("<title>State(s) that entered the Union in " & rs("year") &"</title>")
act.WriteLine("<body bgcolor=""#FFFFFF"">")

end if 'end check for new document

在下个文件中写下意见
act.WriteLine("State: " & rs("statename") & "<br>" )
act.WriteLine("Abbreviaton: " & rs("state") & "<br>" )
act.WriteLine("Capital: " & rs("capital") & "<br>")
act.WriteLine("Entered the Union in "& rs("year") & "<br>")
act.WriteLine("Number in order of entrance into the Union "& rs("order") &"<br>")
act.WriteLine("<br>")

把当前年份的记录值放在年份的变量当中
the_year=clng(rs("year"))

移动到下个记录
rs.movenext

检查下个记录的年份值
如果它们是很不同的接近当前文档
写所有的页脚,错误接下来会重新出现
防止记录设置的最近错误
on error resume next

if the_year <> clng(rs("year")) then
act.WriteLine("<p>Page created on: " & now ())
act.WriteLine("</body></html>")

关闭文本文件
act.close

end if ' end check for year against the rs.year value 
loop

破坏记录设置
set rs=nothing
rs.close
%>
</body>
</html>

热门信息

X