華府江山 http://203.72.56.8/phpBB3/ |
|
不錯的記數器 http://203.72.56.8/phpBB3/viewtopic.php?f=42&t=145 |
第 1 頁 (共 1 頁) |
發表人: | alex [ 2009年 3月 19日, 16:14 ] |
文章主題 : | 不錯的記數器 |
不錯的記數器 可統計本年、月、日來訪人數 但不用MySQL 本人加入了跑馬燈效果 對了 這個記數器只能在UNIX系統上使用呦 防灌水 只要一個主程式即可(紀錄檔自動產生) 放置程式的資料夾權限請設777 <? // ~~~~主程式~~~~~ //################################ // 版本更新內容 // V1.0 計數器問世 // V1.1 修正鎖定IP功能 // V1.2 加入自行設定功能 // V1.3 加入圖片顯示功能 // V1.4 加入跑馬燈效果(By超愛牛奶) //################################ //================================== // 設定區 //================================== //本計數器必需架設在Unix-Like作業系統 //請把計數器所在的目錄權限開成777 //計數器的記錄檔↓ $database = "counter.txt"; //IP的鎖定檔↓ $link = "ip.txt"; //鎖定同一個IP(防灌水)的秒數,設太高會增加系統負擔↓ $sec = "300"; //計數器與IP記錄檔案中每筆資料的分格記號(勿用.和數字)↓ $br = "@#~"; //是否使用圖片顯示,預設為1(0:不使用 1:使用) $pics = "0"; //使用圖片的話,圖片0~9的檔名(由上往下是0.1.2...9)↓ $pic[0] = "0.gif"; $pic[1] = "1.gif"; $pic[2] = "2.gif"; $pic[3] = "3.gif"; $pic[4] = "4.gif"; $pic[5] = "5.gif"; $pic[6] = "6.gif"; $pic[7] = "7.gif"; $pic[8] = "8.gif"; $pic[9] = "9.gif"; //網頁的標題↓ $title = "計數器V1.4"; //背景顏色(請用16進位RGB色彩碼)↓ $bgcolor = "#DDDDFF"; //文字顏色(說明同上)↓ $fgcolor = "#8888FF"; //文字大小(1~7),標準值是3↓ $fontsize = "2"; //================================== // 檢查資料 //================================== $cd = file_exists($database); if($cd !=1){ $fp = fopen($database,"w"); chmod($database,0667); } $cd = file_exists($link); if($cd != 1){ $fp = fopen($link,"w"); chmod($link,0667); } //================================== // 主程式 //================================== $fp = fopen($database,"r"); $data = fread($fp,filesize($database)); $num = explode($br,$data); fclose($fp); $fp = fopen($link,"r"); $locks = fread($fp,filesize($link)); $ip = explode($br,$locks); fclose($fp); for($i = 0;$i < sizeof($ip);$i += 2){ $timeout = time(void) - $ip[$i + 1]; if($timeout >= $sec){ $ip[$i] = "null"; $ip[$i + 1] = "null"; } } for($i = 0;$i < sizeof($ip);$i += 2){ if($REMOTE_ADDR == $ip[$i]){ $add = "N"; break; } } if(date("j") != $num[1]){ $num[1] = date("j"); $num[2] = "0"; } if(date("n") != $num[3]){ $num[3] = date("n"); $num[4] = "0"; } if(date("Y") != $num[5]){ $num[5] = date("Y"); $num[6] = "0"; } if($add != "N"){ $ip[sizeof($ip)] = $REMOTE_ADDR; $ip[sizeof($ip)] = time(); for($i = 0;$i <= 6;$i += 2){ $num[$i] += 1; } $fp = fopen($database,"w"); for($i = 0;$i <= 6;$i++){ $newnum = $newnum . $num[$i] . $br; } fwrite($fp,$newnum); fclose($fp); $fp = fopen($link,"w"); for($i = 0;$i < sizeof($ip);$i++){ if($ip[$i] != "null"){ $newip = $newip . $ip[$i] . $br; } } fwrite($fp,$newip); fclose($fp); } //================================== // HTML輸出 //================================== ?> <html> <head><title><? echo $title; ?></title></head> <body bgcolor = <? echo $bgcolor; ?>> <marquee direction="right"><font color = <? echo $fgcolor; ?> size = <? echo $fontsize .">"; if($pics != "1"){ echo "本日人氣:" . $num[2] . " "; echo $num[3] . "月人氣:" . $num[4] . " "; echo ($num[5] - 1911) . "年人氣:" . $num[6]; echo " 總人氣:" . $num[0]; }else{ echo "本日人氣:"; for($i=0;$i<strlen($num[2]);$i++){ $n = substr($num[2],$i,1); echo "<img src= $pic[$n]>"; } echo " " . $num[3] . "月人氣:"; for($i=0;$i<strlen($num[4]);$i++){ $n = substr($num[4],$i,1); echo "<img src= $pic[$n]>"; } echo " " . ($num[5] - 1911) . "年人氣:"; for($i=0;$i<strlen($num[6]);$i++){ $n = substr($num[6],$i,1); echo "<img src= $pic[$n]>"; } echo " 總人氣:"; for($i=0;$i<strlen($num[0]);$i++){ $n = substr($num[0],$i,1); echo "<img src= $pic[$n]>"; } } ?></marquee> </font> </body> </html> |
第 1 頁 (共 1 頁) | 所有顯示的時間為 UTC + 8 小時 |
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group http://www.phpbb.com/ |