关于asp生成html,分页的问题??

quweiie 技术总监  2009-07-29 03:46:11

News Table
id title content addtime

我每次添加或删除一条记录,是不是都要生成一次新闻列表

createNewsList.asp

path="../"
sql="select id,title,addtime from news order by addtime desc"
rs.open sql,conn,1,1
If rs.eof Then
Response.Write("No Data!")
Else
count=rs.RecordCount '总数
If count Mod pagesize=0 Then
pagecount=count\pagesize
Else
pagecount=count\pagesize+1
End If
For i=1 To pagecount
filename=listpage&i&".html" '这个为生成后的文件名
url=url0&"/newslist.asp?page="&i '这个为动态页面地址,必须是http://****.asp格式的
Call createhtml(url,filename,path)
Next
End If
rs.close
Set rs=Nothing
conn.Close
Set conn=nothing
'------------------------------------------------------------------------
Function createhtml(url,filename,path)
Set MyFileObject=Server.CreateObject("Scripting.FileSystemObject")
path1=server.mappath(path)&"\"&filename
Set MyTextFile=MyFileObject.CreateTextFile(path1)
strurl=url
strTmp = GetHTTPPage(trim(strurl))
MyTextFile.WriteLine(strTmp)
MytextFile.Close
response.write "生成"&filename&"成功<br>"
Set MyFileObject=nothing
End function

Function getHTTPPage(url)
'On Error Resume Next
dim http
set http=Server.CreateObject("Microsoft.XMLHTTP")
Http.open "GET",url,false
Http.send()
if Http.readystate<>4 then
exit function
end if
getHTTPPage=bytesToBSTR(Http.responseBody,"GB2312")
set http=nothing
If Err.number<>0 then
Response.Write "<p align='center'><font color='red'><b>服务器获取文件内容出错</b></font></p>"
Err.Clear
End If
End Function

Function BytesToBstr(body,Cset)
dim objstream
set objstream = Server.CreateObject("ADODB.Stream")
objstream.Type = 1
objstream.Mode =3
objstream.Open
objstream.Write body
objstream.Position = 0
objstream.Type = 2
objstream.Charset = Cset
BytesToBstr = objstream.ReadText
objstream.Close
set objstream = nothing
End Function

Function timetohtml(str)
timetohtml=Replace(Replace(Replace(str,":",""),"-","")," ","")&".html"
End Function
...全文
56 点赞 收藏 8
写回复
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
应该是按条数生成,假设你每页10条,那你对100条生成就是10页
回复
quweiie 2009-07-29
你的意思是说,比如 我先生成第一页到第十页的列表页,然后依次再生成11页到20页的等等!
回复
生成静态得没有别的办法,对于大量的数据,只能分段,不能连续的
回复
shiljcn 2009-07-29
study
回复
quweiie 2009-07-29
有别的算法吗?请帮忙
回复
有可能造成当机,像你目前这样写
回复
quweiie 2009-07-29
那要数据量大了呢?
回复
基本如此
回复
发动态
发帖子
ASP
创建于2007-09-28

2.8w+

社区成员

ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
申请成为版主
社区公告
暂无公告