Kali ini saya akan membahas tentang “mencatat pengunjung dengan menggunakan
IP address”. Maksudnya untuk mencatat kunjungan berdasarkan IP address, seperti
halnya dengan hits counter. Tetapi ini berdasarkan alamat IP pengunjung, jadi kita bisa
melihat berapa IP yang masuk dan berapa kali dia mengunjungi web site kita.
Seperti biasa untuk langkah pertama yang kita buat adalah membuat nama
database pada MySQL yang nanti akan kita gunakan sebagai media penyimpanan.
Skrip table pada database adalah sebagai berikut.
CREATE TABLE `ipcounter` (
`id` int(21) NOT NULL auto_increment,
`ip` varchar(250) default NULL,
`hits` int(250) NOT NULL default ‘0′,
PRIMARY KEY (`id`)
) ENGINE=MyISAM ;
Setalah berhasil dalam membuat ipcounter, langkah selanjutnya adalah membuat
koneksi database yang digunakan untuk menghubungkan web dengan database,
sehingga aplikasi yang kita buat bisa ter-update dengan sempurna. Berikut adalah
skrip koneksi PHP dengan MySQL. (simpan dengan nama config.php)
<?
$hostname = “hostname”;
$username = “username”;
Setelah membuat skrip koneksi dengan database MySQL langkah selanjutnya adalam
membuat halaman index. Halaman ini kita gunakan sebagai tampilan IP dan
kunjungan dari si pengunjung. Misalnya IP anda adalah 127.0.01 telah mengunjungi
web site ini sebanyak 17 kali. Berikut skrip yang digunakan untuk menampilkan data
dari IP dan jumlah kunjungan. (simpan dengan nama index.php)
<?
Include “config.php”;
$ip = $REMOTE_ADDR;
$uexists=@mysql_num_rows(@mysql_query(“select id from ipcounter where
ip=’$ip’”));
if ($uexists>0){
@mysql_query(“update ipcounter set hits=(hits+1) where ip=’$ip’”);
} else {
@mysql_query(“insert into ipcounter (ip) values (‘$ip’)”);
}
$ipcounter = mysql_query (“select * from ipcounter where ip=’$ip’”, $connect)
or die (“Maaf, koneksi gagal dilakukan”);
While ($row=mysql_fetch_array($ipcounter))
{
echo “<center><font style=\”font-family: century gothic; font-size: 13; color:
#0000ff;\”>IP Anda adalah <b>$row[1]</b> <br />kesini sebanyak
<b>$row[2]</b> kali.<br /><a href=\”tampil.php\” title=\”Daftar IP
Counter\”>Daftar IP Counter</a></font></center>”;
}
?>
Setelah skrip index telah dibuat, cobalah jalankan aplikasi dengan menggunakan
browser kesukaan Anda. Klik refresh pada browser Anda, apakah hitsnya telah berhasil
ter-update atau malah tidak bias di update sama sekali. Apabila masih terjadi
kesalahan, silahkan teliti kembali hasil ketikan Anda, siapa tahu Anda kurang teliti
dalam mengetik perintah dan jika berhasil saya ucapkan selamat karena Anda telah
teliti dalam menulis perintah PHP dengan sempurna. Tapi ini belum selesai, masih ada
satu skrip lagi yang digunakan untuk menampilkan seluruh alamat IP yang terjaring di
web site kita.
Sebelum kita melanjutkan dengan skrip penampil seluruh data dari IP kunjungan, berdiri
sebentar untuk melancarkan peredaran darah dan keluar rumah sebentar untuk
melihat hijaunya daun agar mata kita tidak terlalu lelah dan pikiran menjadi lebih
segar kembali.
OK, sekarang kita lanjutkan kembali pembahasan kita mengenai tulisan ini. Langkah
terkahir dalam pembahasan kali ini adalah pembuatan halaman penampil data dari
IP beserta hits yang masuk. Berikut adalah skrip penampil data IP kunjungan. (simpan
dengan nama tampil.php)
<?
include “config.php”;
$tampil = mysql_query (“select * from ipcounter order by id desc”, $connect) or
die (“Maaf, koneksi gagal dilakukan”);
$totip = mysql_num_rows($tampil);
echo “<table width=\”450\” border=\”1\” bordercolor=\”#ffffff\”
align=\”center\” style=\”border-collapse: collapse;\”>
<tr>
<td width=\”100%\” colspan=\”2\” align=\”center\” bgcolor=\”#dfdfdf\”><font
style=\”font-family: century gothic; font-size: 13; color: #0000ff;\”><b>Daftar IP
Counter</b></font></td>
</tr>
<tr>
<td width=\”60%\” align=\”center\” bgcolor=\”#f9f9f9\”><font style=\”fontfamily:
century gothic; font-size: 13; color: #0000ff;\”>IP Address</font></td>
<td width=\”40%\” align=\”center\” bgcolor=\”#f9f9f9\”><font style=\”fontfamily:
century gothic; font-size: 13; color: #0000ff;\”>Jumlah Kunjungan</font></td>
</tr>”;
$i = 0;
$no = 0;
While ($row=mysql_fetch_array($tampil))
{
if ($i==0)
{
echo “<tr bgcolor=\”#ffffff\”>”;
$i++;
} else {
echo “<tr bgcolor=\”#f9f9f9\”>”;
$i–;
}
$no++;
echo “<td width=\”60%\” align=\”left\”><font style=\”font-family: century
gothic; font-size: 13; color: #0000ff;\”>$row[1]</font></td>
<td width=\”40%\” align=\”left\”><font style=\”font-family: century gothic; fontsize:
13; color: #0000ff;\”>$row[2]</font></td>
</tr>”;
}
echo “<tr>
<td width=\”100%\” colspan=\”2\” align=\”right\” bgcolor=\”#dfdfdf\”><font
style=\”font-family: century gothic; font-size: 13; color: #0000ff;\”>Total
<b>$totip</b> pengunjung</font></td>
</tr>
</table>”;
?>
Setelah selesai menulis perintah diatas, kini saatnya uji coba di browser kesukaan Anda,
apakah tidak terjadi kesalahan? Jika masih terjadi kesalahan silahkan teliti kembali hasil
ketikan dari kode PHP, siapa tahu Anda kurang atau justru lebih dalam menuliskan
kode PHP. Jika tidak terjadi kesalahan berarti Anda mempunyai aplikasi baru yang
akan ditampilkan di web site Anda.
Dari contoh aplikasi IP Counter diatas Anda dapat menambahkan fasilitas yang lain, misalnya menambahkan tanggal untuk mencatat kunjungan pertama kali pengunjung
datang dan tanggal terakhir mengunjungi web site kita. Anda juga bias
menambahkan aplikasi halaman jika data yang tampil terlalu banyak, sehingga Anda
bisa menampilkan data sesuai dengan keinginan Anda.
DIarsipkan di bawah: PHP