當前位置:首頁 > 建站常識 > 列表

asp批量生成靜态頁面的(de)方法

點擊:時(shí)間:2017/12/25關鍵詞:上海網頁設計 上海網站維護 上海網站制作 網站建設公司
當網站數據巨大(dà)時(shí),一次生成許多(duō)靜态頁,會導緻生成頁面超過20分(fēn)鐘(zhōng)後報錯,以至于後面的(de)靜态頁不能生成。即使使用(yòng)了(le)Server.ScriptTimeout = 9999,程序運行後,也(yě)會出現假死現象。這(zhè)裏介紹一種方法,每次生成100個(gè)靜态頁面,不停地生成,直到全

asp批量生成靜态頁面的(de)方法

當網站數據巨大(dà)時(shí),一次生成許多(duō)靜态頁,會導緻生成頁面超過20分(fēn)鐘(zhōng)後報錯,以至于後面的(de)靜态頁不能生成。

即使使用(yòng)了(le)Server.ScriptTimeout = 9999,程序運行後,也(yě)會出現假死現象。

這(zhè)裏介紹一種方法,每次生成100個(gè)靜态頁面,不停地生成,直到全部生成完畢

注意:這(zhè)裏使用(yòng)的(de)是模塊替換生成靜态頁面的(de)方法。

代碼如下(xià):

<%

Dim cnt:cnt = 1 '本輪循環計數器初始化(huà)

start  = request("start") '獲取本輪指針的(de)開始位置

If IsNumeric(start) Then start = CLng(start) Else start=1

If start=0 Then start = 1 '如果start爲空,從第一條開始

num = 100 '每次生成的(de)數量

content = "fso獲取的(de)模闆頁面代碼,這(zhè)裏就省略了(le)"

sql = "se1ect * from 表名"

rs.Open sql,conn,1,1

rs.AbsolutePosition = start '這(zhè)是此程序最關鍵的(de)一步,将指針指向start,start通(tōng)過參數動态獲得(de)

Do While Not rs.eof And cnt < num

   content = Replace(content,"{要替換的(de)内容1}",rs("字段名1")) '用(yòng)字段值替換模闆内容,下(xià)同

   content = Replace(content,"{要替換的(de)内容2}",rs("字段名2"))

   ……

   cnt = cnt+1

   start = start + 1

rs.movenext

Loop

If Not rs.eof Then '通(tōng)過刷新的(de)方式進行下(xià)一輪請求,并将指針變量start傳遞到下(xià)一輪

response.write "<meta http-equiv='refresh' content='0;URL=?start="&start&"'>"

Else

response.write "生成HTML文件完畢!"

End if

rs.Close()

Set rs = Nothing

%>

預約建站
免費提供網站優化(huà)
領取關鍵詞