用ASP建立WEB頁面計數器

來源:互聯網
上載者:User

 用ASP建立WEB頁面的計數器通常有兩種簡單的方法,一個是建立global.asa,另外一個是直接寫一個ASP檔案來進行計數。一般使用一個文檔來儲存瀏覽數量。

    1、用global.asa來寫計數器寫一個global.asa檔案,存放到虛擬目錄的根目錄下面,原始碼如下:

   <Script language ="Vbscript" Runat="server">
  sub Application_onStart()
    countFile=server.mappath("counter")+"/counter.txt"
    set fso=Server.CreateObject("Scripting.FileSystemObject")
    set file=fso.OpenTextFile("countFile")
      /'讀取存取數並賦給Application變數number
    Application("number")=file.readLine
    file.close
  end sub
    sub session_onStart()
      If IsEmpty(Session("hasbeenConnected")) then
        Application.Lock
      Application("number")=Application("number")+1
      Applicaiotn.Unlock
      end if
      Session("hasbeenConnected")=True
    end sub
  sub Application_onEnd()
    countFile=server.mappath("counter")+"/counter.txt"
    set fso=Server.CreateObject("Scripting.FileSystemObject")
    set file=fso.CreateTextFile("countFile",true)
    /'使用writeLine方法寫入當前值
    file.writeLine(Application("number"))
    file.close
  end sub
  </script>
    調用計數器時候在網頁中寫入<%response.Write("你是第"&number&"位訪問者!")%>即可,不過調用網頁也必須是ASP頁面。這種方法有缺點,就是好多個人首頁空間並不支援運行global.asa,即不是為使用者建的虛擬目錄,所以無法正確運行。

 

    2、直接寫一個counter.asp來計數我自己現在用的計數器就是這樣,而且可以在任何頁面中調用,調用方法是:

  <scriptsrc="http://xxx.xxx.xxx/counter.asp?id=abc&num=6&style=1"></script >
   其中id=abc表示使用者名稱為abc,那麼要建立counter/abc.txt存放計數值;
       num=6為計數器的顯示位元;
       style=1為計數器風格,建立counter/style1/0~9.gif即可,可以增加多種風格。

   原始碼如下:

<%
set fso=server.CreateObject("Scripting.FileSystemObject")
filepath=server.mappath("counter")+"/"+request("id")+".txt"
set temp=fso.opentextfile(filepath,1)
count=temp.readline
temp.close
if isempty(session("connected")) then
  set temp=fso.opentextfile(filepath,2)
  application.lock
  count=count+1
  temp.writeline(count)
  application.unlock
  temp.close
end if
set temp=nothing
set fso=nothing
session("connected")=true
numlength=len(count)
if request("num")="" then
  maxnum=6
else
  maxnum=cint(request("num"))
end if
if request("style")="" then
  style="1"
else
  style=request("style")
end if
for i=1 TO maxnum STEP 1
  If i<=maxnum-numlength  then
    countimage="<img src=http://xxx.xxx.xxx/counter/style"&style&"/0.gif width=15 height=20></img>"
    response.write "document.write(/'"&countimage&"/');"
  Else
    countimage="<img src=http://xxx.xxx.xxx/counter/style"&style&"/"& mid(count,i-(maxnum-numlength),1)&".gif width=15 height=20></img>"
    response.write "document.write(/'"&countimage&"/');"
  End If
next
%>

 

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.