[ Klik-Kanan.com ]  
 Depan » Tutorial » PHP Info Banner   Tentang Kami   Buku Tamu   Kontak 

Membuat counter image
Oleh : Henry SP

Counter ini terdiri dari 3 file utama, file pertama bernama acounter.php3 yang merupakan halaman web yag digunakan untuk menampilkan counter. Jumlah pengunjung disimpan pada file kedua yang bernama acount.txt. File terakhir adalah file ip.txt yang digunakan untuk menyimpan ip address pengunjung web.

 

<html>
<head>
<title>Contoh Counter dengan image www.klik-kanan.com</title>
</head>
<body bgcolor="#FFFFFF">
www.klik-kanan.com
<center>
<br>
<font size="2" face="Arial, Helvetica, sans-serif">- Anda pengunjung ke - <br>
<br>
</font>

<?php
// letak image yang digunakan sebagai counter
$img = "http://localhost/php/counter/";

// letak image animasi
$animated_img = "http://localhost/php/counter/ani/";

// Berapa digit yang ditampilkan
$padding = 6;

// ukuran lebar dan tinggi file image
$width = 16;
$height = 22;

// letak file log
$fpt = "acount.txt"; //

$lock_ip =0; // IP locking, 1=ya 0=tidak
$ip_lock_timeout =30; // dalam menit
$fpt_ip = "ip.txt"; // file IP log

function checkIP($rem_addr) {
global $fpt_ip,$ip_lock_timeout;
$ip_array = file($fpt_ip);
$reload_dat = fopen($fpt_ip,"w");
$this_time = time();
for ($i=0; $i<sizeof($ip_array); $i++) {
list($ip_addr,$time_stamp) = split("\|",$ip_array[$i]);
if ($this_time < ($time_stamp+60*$ip_lock_timeout)) {
if ($ip_addr == $rem_addr) {
$found=1;
}
else {
fwrite($reload_dat,"$ip_addr|$time_stamp");
}
}
}
fwrite($reload_dat,"$rem_addr|$this_time\n");
fclose($reload_dat);
return ($found==1) ? 1 : 0;
}

if (!file_exists($fpt)) {
$count_dat = fopen($fpt,"w+");
$digits = 0;
fwrite($count_dat,$digits);
fclose($count_dat);
}
else {
$line = file($fpt);
$digits = $line[0];
if ($lock_ip==0 || ($lock_ip==1 && checkIP($REMOTE_ADDR)==0)) {
$count_dat = fopen($fpt,"r+");
$digits++;
fwrite($count_dat,$digits);
fclose($count_dat);
}
}
$digits = sprintf ("%0".$padding."d",$digits);
$ani_digits = sprintf ("%0".$padding."d",$digits+1);
echo "<table cellpadding=0 cellspacing=0 border=0><tr align=center>\n";
$length_digits = strlen($digits);
for ($i=0; $i < $length_digits; $i++) {
if (substr("$digits",$i,1) == substr("$ani_digits",$i,1)) {
$digit_pos = substr("$digits",$i,1);
echo ("<td><img src=$img$digit_pos.gif width=$width height=$height></td>\n");
}
else {
$digit_pos = substr("$ani_digits",$i,1);
echo ("<td><img src=$animated_img$digit_pos.gif width=$width height=$height></td>\n");
}
}
echo "</tr></table>\n";
?>

</center>
</body>
</html>

Download

© 2001 - 2006 Klik Kanan
Dilarang memperbanyak artikel yang terdapat pada situs ini tanpa seizin Klik Kanan.