Membuat Visitor Counter dengan PHP dan MySQL

source code dapat di copy dengan mengarahkan cursor ke area source code kemudian mengklik tombol dengan icon kertas putih dan <>
Counter Visitor yang jika di bahasa indonesiakan menjadi penghitung pengunjung adalah utilitas yang biasanya ada pada halaman website atau blog untuk mengetahui jumlah pengunjung mereka. Saat ini widget semacam ini sudah banyak dikembangkan oleh developer mulai dari yang gratis (free) seperti histats hingga yang berbayar (pro) tapi saya tidak akan membahas bagaimana memasangnya pada website tapi lebih kepada bagaimana teknik membuat visitor counter tersebut dengan PHP dan MySQL.

Membuat Visitor Counter dengan PHP dan MySQL

Dalam implementasinya, ada dua teknik yang kerap digunakan untuk membuat visitor counter yaitu tanpa database (disimpan dalam file biasanya file text/*.txt) dan yang kedua adalah dengan menggunakan database yang akan coba kita praktekan kali ini.

1. Pertama Buat sebuah database di MySQL serta sebuah tabel dengan struktur sebagai berikut

Membuat Visitor Counter dengan PHP dan MySQL

2. Kedua, Seperti biasa Koneksikan Database yang telah dibuat pada proses 1 dengan contoh script seperti berikut

<?php
$koneksi = mysql_pconnect("localhost","root","root") or die ("Koneksi Gagal dibentuk");
if ($koneksi){
mysql_select_db("counter") or die("Tidak Dapat Memilih Database");
}
?>
3. Ketiga adalah membuat script PHP yang akan bertugas untuk menghitung jumlah pengunjung. disini saya menggunakan teknik session dimana pengunjung baru akan di daftarkan pada session "visitor" dan datanya (termasuk IP Address, Jenis Browser dan Tanggal Akses) akan disimpan kedalam tabel database. contoh scriptnya adalah sebagai berikut
<?php
include "koneksi.php";

// Detect Browser
$browser = $_SERVER['HTTP_USER_AGENT'];
$chrome = '/Chrome/';
$firefox = '/Firefox/';
$ie = '/MSIE/';
if (preg_match($chrome, $browser))
    $data = "Chrome/Opera";
if (preg_match($firefox, $browser))
    $data = "Firefox";
if (preg_match($ie, $browser))
    $data = "IE";

// Ambil Informasi Yang diperlukan dari Pengunjung
$ipaddress = $_SERVER['REMOTE_ADDR']."";
$browser = $data;
$tanggal = date('Y-m-d');
$kunjungan = 1;
// Daftarkan Kedalam Session Lalu Simpan Ke Database
if (!isset($_SESSION['visitor'])){
$_SESSION['visitor']=$ipaddress;
mysql_query("INSERT INTO visitor (tanggal,ip_address,counter,browser) VALUES ('".$tanggal."','".$ipaddress."','".$kunjungan."','".$browser."')");
} 
// Hitung Jumlah Visitor
$kemarin  = date("Y-m-d",mktime(0,0,0,date('m'),date('d')-1,date('Y')));
$hari_ini  = mysql_fetch_array(mysql_query('SELECT sum(counter) AS hari_ini FROM visitor WHERE tanggal="'.date("Y-m-d").'"'));
$kemarin = mysql_fetch_array(mysql_query('SELECT sum(counter) AS kemarin FROM visitor WHERE tanggal="'.$kemarin.'"'));
$sql = mysql_fetch_array(mysql_query('SELECT sum(counter) as total FROM visitor'));
?>

5. Langkah Terakhir adalah menampilkan data visitor yang tersimpan didalam database. Adapun contoh script yang saya gunakan adalah sebagai berikut.
<html>
<head>
 <title>Counter Visitor Sederhana</title>
</head>
<body>
<?php
 session_start();
 include "counter.php";
 echo "<div style='margin-top:50px; font-family: Segoe UI; font-weight: lighter;'><center>";
 echo "<b>---- Informasi Pengunjung ----</b><br/>";
 echo "<img src='gambar/2.bmp'/> ".$_SERVER['REMOTE_ADDR']." (IP Anda)<br/>"; 
 switch($browser){
 case "Firefox" : echo "<img src='gambar/browser/firefox.gif' width='15px' height='15px'/> ".$browser." (Browser Anda)<br/>"; break;
 case "Chrome/Opera" : echo "<img src='gambar/browser/chrome.gif' width='15px' height='15px'/> ".$browser." (Browser Anda)<br/>"; break;
 case "IE" : echo "<img src='gambar/browser/ie.gif' width='15px' height='15px'/> ".$browser." (Browser Anda)<br/>"; break;
 } 
 echo "<b>------ Pengunjung Hari Ini -------</b><br/>";
 echo "<img src='gambar/1.bmp'/> <b style='color:red'>".$hari_ini['hari_ini']."</b><br/>";
 echo "<b>------ Pengunjung Kemarin -------</b><br/>";
 echo "<img src='gambar/2.png'/> <b style='color:red'>".$kemarin['kemarin']."</b><br/>";
 echo "<b>------ Total Pengunjung -------</b><br/>";
 echo "<img src='gambar/1.png'/> <b style='color:red'>".$sql['total']."</b><br/>";
 echo "</center></div>";
?>
</body>
</html>

Source code lengkap beserta database dan peralatan yang dibutuhkan dapat anda download disini.
source code dapat di copy dengan mengarahkan cursor ke area source code kemudian mengklik tombol dengan icon kertas putih dan <>

Share this

Related Posts

Previous
Next Post »

8 comments

comments
Anonymous
23 November 2014 at 21:59 delete

udah ngikutin tutorialnya, dan sukses .
pertanyaan selanjutnya klo mau taruh di sidebar gmn ya ? maklum newbie
sy pakai html

Reply
avatar
3 May 2015 at 23:13 delete

Terimakasih, penjelasannya rinci banget sampai jenis browsernya pun tercatat.

Reply
avatar
13 May 2015 at 02:41 delete

sangat berguna, ditunggu kunjungannya ke www.reynaldi.my.id

Reply
avatar
9 April 2016 at 13:49 delete

Sangat Membatu kawan Terimah Kasih Banyak BOSku

Reply
avatar
15 June 2016 at 12:10 delete

terima kasih, sangat membantu sekali

Reply
avatar
2 July 2016 at 23:54 delete

Link downloadnya rusak gan.... bagi donk.

Reply
avatar
17 January 2017 at 02:29 delete

file ny tidak ada di dropbox,apakah ada link lain ?

Reply
avatar
12 June 2017 at 09:48 delete

Thank min bermanfaat sekali
kalau mau di bikin pake hightcharts kaya gimana ya?

Reply
avatar

bantu kami untuk lebih baik; jika ada hal yang kurang jelas atau broken link silahkan masukan komentar anda kami akan segera menanggapi dan memperbaikinya. login ke akun gmail anda untuk menampilkan form komentar.