Asp定時(shí)執(zhí)行操作、Asp定時(shí)讀取數(shù)據(jù)庫(kù)(網(wǎng)頁(yè)定時(shí)操作詳解)_ASP教程
推薦:教大家如何利用ASP打造網(wǎng)站論壇DIY(1)前言:現(xiàn)在網(wǎng)上的論壇到處都有,但不知您是否遇到過(guò)這樣的情況:在雜亂無(wú)章的討論信息中來(lái)尋找自己想要的內(nèi)容,是一件很費(fèi)費(fèi)時(shí)費(fèi)力的事情,到后來(lái),您就都不想去看什么論壇了。那么我們能不能對(duì)
Asp定時(shí)執(zhí)行操作、Asp定時(shí)讀取數(shù)據(jù)庫(kù)(網(wǎng)頁(yè)定時(shí)操作詳解)
'----------------------版權(quán)信息----------------------------
'-----------Author:Vbell----------------------------------
'-----------Date:13:57 2008-5-19-------------------------
'-----------Http:www.qqview.com---------------------------
'--------------------------------------------------------------
目前定時(shí)的操作有:
一、Html頁(yè)面的定時(shí)刷新(Refresh--刷新 )
1,Refresh (刷新) 代碼使用說(shuō)明
說(shuō)明:讓網(wǎng)頁(yè)多長(zhǎng)時(shí)間(秒)刷新自己,或在多長(zhǎng)時(shí)間后讓網(wǎng)頁(yè)自動(dòng)鏈接到其它網(wǎng)頁(yè)。
用法:<Meta http-equiv="Refresh" Content="30">
<Meta http-equiv="Refresh" Content="5; Url=http://www.qqview.com">
注意:其中的5是指停留5秒鐘后自動(dòng)刷新到URL網(wǎng)址
2,如何定時(shí)操作
你可以在同一個(gè)頁(yè)面重復(fù)刷新,以達(dá)到定時(shí)操作的效果。
如:<meta http-equiv="refresh" content="5;URL=http://www.qqview.com/test.asp">
缺點(diǎn):要在瀏覽器打開(kāi)頁(yè)面,不能關(guān)閉。
二、Javascript里面的setTimeout 和 setInterval
1,setTimeout 和 setInterval的區(qū)別
window對(duì)象有兩個(gè)主要的定時(shí)方法,分別是setTimeout 和 setInteval 他們的語(yǔ)法基本上相同,但是完成的功能取有區(qū)別。
setTimeout方法是定時(shí)程序,也就是在什么時(shí)間以后干什么。干完了就拉倒。
setInterval方法則是表示間隔一定時(shí)間反復(fù)執(zhí)行某操作。
如果用setTimeout實(shí)現(xiàn)setInerval的功能,就需要在執(zhí)行的程序中再定時(shí)調(diào)用自己才行。如果要清除計(jì)數(shù)器需要 根據(jù)使用的方法不同,調(diào)用不同的清除方法:
例如:tttt=setTimeout('hello()',1000);
clearTimeout(tttt);
或者:
tttt=setInterval('hello()',1000);
clearInteval(tttt);
2,如何定時(shí)操作
比如要定時(shí)打開(kāi)頁(yè)面 Test.asp(當(dāng)然Test.asp可以是讀取數(shù)據(jù)庫(kù),生成靜態(tài)頁(yè)面......)
<script language="JavaScript" type="text/javascript">
<!--
function hello(){
window.open('Http://www.qqview.com/Test.asp')
}
window.setTimeout(hello(),5000);
//-->
</script>
缺點(diǎn):要在瀏覽器打開(kāi)頁(yè)面,不能關(guān)閉。
三,ASP使用VB寫(xiě)的定時(shí)組件
ASP中沒(méi)有setTimeout這類的定時(shí)語(yǔ)句,我們需要利用ASP組件來(lái)解決,同樣,可以采用VB6來(lái)編制,具體操作方法參考
上一編組件的做法,為了掛起線程,我們需要運(yùn)用WIN32API函數(shù)Sleep,同樣新建一個(gè)Active Dll工程,起名字為T(mén)imer,
類名為sleep。
sleep這個(gè)WIN32API函數(shù)可以用VB6自帶的API文本瀏覽器中找到它的聲明方法
現(xiàn)在類sleep的程序如下,這個(gè)組件程序很簡(jiǎn)單的,我不多解說(shuō)了。
Private Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)
Private m_set As Long
Public Property Get setup() As Long
setup = m_set
End Property
Public Property Let setup(strset As Long)
m_set = strset
End Property
Public Function Sleeptime()
Sleep (setup)
End Function
把它編譯一下,就生成timer.dll這個(gè)組件dll,如果您不會(huì)寫(xiě)VB程序,那么您也可以在下載的文件包里找到timer.dll
這個(gè)文件。把它c(diǎn)opy到windows目錄下,在MS-DOS方式中輸入
c:\windows\regsvr32 timer.dll
完成組件注冊(cè),同樣可以使用這個(gè)定時(shí)組件。
現(xiàn)在解說(shuō)剛才按個(gè)列子的ASP調(diào)用文件�?纯催@個(gè)組件如何使用
*定時(shí)器的應(yīng)用
<html>
<title>定時(shí)器的應(yīng)用(From:Http://www.QQview.com)</title>
<head>
</head>
<body>
<%
‘這個(gè)是腳本執(zhí)行時(shí)間,默認(rèn)為90秒,需要改長(zhǎng)一點(diǎn),不然在90秒后程序會(huì)被中斷'3600為一小時(shí)
Server.ScriptTimeOut=3600
set obj=server.createobject("timer.sleep")
'參數(shù)1000為線程掛起一秒鐘,可以隨意設(shè)定
obj.setup=1000
do while true
obj.sleeptime
'執(zhí)行定時(shí)操作,
If Not Response.IsClientConnected Then
set obj=nothing
session.abandon
End If
loop
%>
</body>
</html>
優(yōu)點(diǎn):在這里只是隨便用VB寫(xiě)了一個(gè)測(cè)試的dll,但是用VB肯定可以在dll里面寫(xiě)一個(gè)定時(shí)執(zhí)行的操作。
缺點(diǎn):感覺(jué)VB寫(xiě)的這個(gè)dll可能會(huì)優(yōu)點(diǎn)占資源。
四,結(jié)合電腦的任務(wù)計(jì)劃的定時(shí)操作,我個(gè)人認(rèn)為是目前最好的方法。
這個(gè)個(gè)人感覺(jué)是目前實(shí)現(xiàn)定時(shí)操作的最好方法。
就是先在服務(wù)器上寫(xiě)好要定時(shí)操作的頁(yè)面,如Test.asp
然后寫(xiě)一個(gè)vbs文件,如下:
Dim IE
Set IE = CreateObject("InternetExplorer.Application")
'運(yùn)行你的 URL
ie.navigate("http://www.qqview.com/Test.asp")
ie.visible=1
'Clean up...
Set IE = Nothing
1,可以在服務(wù)器使用“任務(wù)計(jì)劃”
2,也可以在客戶機(jī)使用“任務(wù)計(jì)劃”
具體使用“任務(wù)計(jì)劃”的使用,請(qǐng)參考http://www.pclala.com/Pc/Skill/200851912807.Html
優(yōu)缺點(diǎn):頁(yè)面會(huì)定時(shí)的彈出頁(yè)面Test.asp,但是會(huì)有一個(gè)解決方法,就是在Test.asp頁(yè)面加入定時(shí)關(guān)閉代碼:
<script LANGUAGE="JavaScript">
<!--
setTimeout('window.close();', 500);
// -->
</script>
總結(jié),由于目前部分網(wǎng)頁(yè)語(yǔ)言的限制,在定時(shí)操作上有一定的困難,但是經(jīng)過(guò)我多次的求證,發(fā)現(xiàn)第四種方法無(wú)疑是效果最好的,最省心的。
本文委托“網(wǎng)絡(luò)大本營(yíng)” 發(fā)布,請(qǐng)轉(zhuǎn)載的時(shí)候帶上版權(quán)信息。謝謝。
分享:ASP實(shí)現(xiàn)帶進(jìn)度條的測(cè)試網(wǎng)速的代碼程序ASP實(shí)現(xiàn)帶進(jìn)度條的測(cè)試網(wǎng)速。 把下列代碼存為.ASP的文件,放在你的服務(wù)器上就可以直接運(yùn)行了。 以下為引用的內(nèi)容: <% Response.E
- asp FSO 讀寫(xiě)文件本文件實(shí)現(xiàn)代碼
- asp中isNull、isEmpty和空字符串的區(qū)別
- asp獲取用戶真實(shí)IP地址的方法
- asp連接sqlserver數(shù)據(jù)庫(kù)實(shí)現(xiàn)代碼
- asp中正則表達(dá)式過(guò)濾html代碼函數(shù)
- asp中g(shù)et post提交表單區(qū)別
- 網(wǎng)頁(yè)模板:ASP內(nèi)建對(duì)象Request
- xmlhttp的open方法使用詳解
- ASP的常用的自定義函數(shù)大全
- asp中用for循環(huán)的一個(gè)小技巧
- eWebEditor v3.8 列目錄
- ASP無(wú)組件分頁(yè)實(shí)現(xiàn)思路及代碼
ASP教程Rss訂閱編程教程搜索
ASP教程推薦
- 幾種ASP調(diào)用帶參數(shù)存儲(chǔ)過(guò)程的方式
- ASP常見(jiàn)的保留字整理(變量與表名注意不能用)
- asp+sql2000存儲(chǔ)過(guò)程分頁(yè)實(shí)例
- 對(duì)一些編程初學(xué)者的良言警句
- asp與js的類型轉(zhuǎn)換函數(shù)介紹
- asp基礎(chǔ)教程:網(wǎng)頁(yè)間數(shù)據(jù)傳遞方法小結(jié)
- eWebEditor v3.8 列目錄
- 馬克斯電影站生成Rss Feed的代碼
- ASP對(duì)XML文檔中文本的增加、刪除、修改、查看
- 用紅色顯示ASP查詢數(shù)據(jù)時(shí)得到的記錄關(guān)鍵詞
- 相關(guān)鏈接:
復(fù)制本頁(yè)鏈接| 搜索Asp定時(shí)執(zhí)行操作、Asp定時(shí)讀取數(shù)據(jù)庫(kù)(網(wǎng)頁(yè)定時(shí)操作詳解)
- 教程說(shuō)明:
ASP教程-Asp定時(shí)執(zhí)行操作、Asp定時(shí)讀取數(shù)據(jù)庫(kù)(網(wǎng)頁(yè)定時(shí)操作詳解)
。