計數器可以用資料庫方式實現,也可以用文字檔案方式實現。由於文字檔案方式不涉及系統的資料庫管理系統,相對簡單,容易實現,因此,在這裡介紹文字方式的計數器。
計數器的原理比較簡單,頁面每次被訪問的時候,對記錄訪問次數的數字加1,然後將這個數顯示出來。原理雖然簡單,在具體實現上還是需要一定的技巧。
由於乙個cgi程式在伺服器上並非一直駐留在記憶體中,為了對訪問次數進行計數,則需要把這個數字存入乙個檔案中,每當主頁被訪問時,開啟該檔案將訪問數字加1後再存入檔案中。
**是多使用者環境,在訪問檔案時必須對檔案上鎖以禁止其他使用者對檔案的訪問,這樣才能保證資料的可靠性。然而不同**使用的作業系統不同,其對檔案上鎖的機制也不同。本文採用了一種各種平台都適用的方法,每當有頁面被訪問時,cgi程式建立乙個臨時檔案,此時若有其它程序也要對檔案進行訪問則須等待,程序對檔案更新後刪除該臨時檔案,等待的程序才能對檔案進行訪問。
下面是用perl實現的乙個計數器源**,並加註了注釋:
#!/usr/local/bin/perl
#存貯表示主頁訪問量數字的檔案
#用作檔案鎖的臨時檔案
# 主模組
&increment;
print "content-type: text/html/n/n";
print $accesses;
sub increment
# 建立臨時檔案
open(lock," >$lockfile") || die
"can't create lockfile./n";
# 讀檔案並更新資料
open(data,$data) || die "can't open data file./n";
$accesses = < data >;
$accesses++;
print data "$accesses/n";
close(data);
# 刪除臨時檔案,對資料檔案開鎖
close(lock);
unlink($lockfile);
}你可以在頁面上需要顯示計數器的地方加上下面的html**,頁面被訪問的時候,來訪者就可以知道自己是第幾位來訪者了。
< html > < head >
< title >home page< /title >
< /head >
< body >
< h1 >home page< /h1 >
< p >歡迎您!第
< !--#exec cgi="/cgi-bin/text-counter.cgi" >
位來訪者.< /p >
< /body > < /html >
只要掌握了計數器的原理,就可以設計出稱心如意的計數器,使你的主頁更有吸引力。
用PHP製作自己的計數器
用php來實現計數器很簡單,計數器的實現分為兩個階段 一是實現計數 二是實現數字的顯示 而在實現計數時又有兩種方式 一是基於檔案的計數方式 二是基於資料庫的計數方式。而在實現數字的顯示也有兩種方式 一是普通的文字顯示 二是圖形方式顯示。下面就將這四種情況作一介紹 一 計數 1 基於檔案的計數 在這種...
用Flash結合ASP製作計數器
blackflash 雖然現在有很多 提供免費的計數器,如果自己能動手做乙個不是更好嗎?所以今天我就教大家通過flash結合asp來製作計數器。1 新建乙個檔案,把當前層命名為 背景 可以自己選擇顏色,你也可以在此層中加入movie clip,這樣可以讓你的計數層更加動感,這可是文字計數器不可能實現...
用ASP建立WEB頁面計數器
用asp建立web頁面的計數器通常有兩種簡單的方法,乙個是建立global.asa,另外乙個是直接寫乙個asp檔案來進行計數。一般使用乙個文件來儲存瀏覽數量。1 用global.asa來寫計數器寫乙個global.asa檔案,存放到虛擬目錄的根目錄下面,源 如下 呼叫計數器時候在網頁中寫入即可,不過...