MEMBUAT COUNTER PENGUNJUNG

Posted: Januari 27, 2009 in Uncategorized
Tag:, , ,

Banyak situs yang dilengkapi dengan counter pengunjung yang berfungsi untuk menunjukkan jumlah pengunjung yang telah mengakses halaman website tersebut.

1. Counter Pengunjung Sederhana

a. Menggunakan MySQL

Sebelum memulai, Anda harus mempersiapkan file sambung.php yang berfungsi untuk menyambungkan ke database MySQL.

Sambung.php

<?php

$username=”ari”;

$password=”ugm”;

$database=”aplikasi”;

mysql_connect (“localhost”,$username,$password) or die (“Tidak dapat tersambung ke database, karena: ” . mysql_error());

mysql_select_db ($database)or die (“database tidak ditemukan”);

?>

Setelah membuat file diatas, Anda juga harus membuat table di dalam database “aplikasi”. Beri nama table tersebut “counter”. Tabel counter hanya terdiri satu kolom yang diberi nama “jml”.

Syntax pada MySQL

CREATE TABLE `counter` (

`jml` INT NOT NULL ,

PRIMARY KEY ( `jumlah` )

);

Kemudian kita buat skrip counter seperti dibawah ini:

counter_mysql.php

<HTML>

<HEAD>

<TITLE>Counter Sederhana dengan MySQL</TITLE>

</HEAD>

<BODY>

<?

include “sambung.php”;

$pilih=mysql_query(“select jml from counter”);

$jumlah=mysql_fetch_array($pilih);

if (!$jumlah["jml"])

{

mysql_query(“insert into counter values (1)”);

}

$jumlah=$jumlah["jml"]+1;

mysql_query(“update counter set jml=$jumlah”);

print “<p align=center>Anda pengunjung ke: $jumlah”;

?>

</body>

</HTML>

Jalankan file counter_mysql.php!

Berikut adalah tampilan hasil skrip counter_mysql.php.

c1

b. Menggunakan Berkas

Membuat counter pengunjung menggunakan berkas pada dasarnya sama dengan menggunakan MySQL. Perbedaannya terletak pada media penyimpanan datanya.

counter_berkas.php

<HTML>

<HEAD>

<TITLE>Counter Sederhana dengan Berkas</TITLE>

</HEAD>

<BODY>

<?

$bukak=fopen(“counter.dat”,”a+”);

$jumlah=fgets($bukak,225);

$bukak=fopen(“counter.dat”,”w”);

$jumlah=$jumlah+1;

fputs($bukak,$jumlah);

fclose($bukak);

print “<p align=center>Anda pengunjung ke: $jumlah”;

?>

</body>

</HTML>

Jalankan file counter_berkas.php!

Berikut adalah tampilan hasil skrip counter_berkas.php.

c2

2. Counter Pengunjung Menggunakan Berkas (lanjutan)

Kita lihat lagi hasil dari point 1. diatas (a. maupun b.), jika kita refresh(ctrl+F5) maka jumlah pengunjung akan bertambah satu tiap satu kali refresh. Berarti apabila halaman tersebut telah kita upload, kemudian ada pengunjung yang mengunjungi halaman tersebut berkali-kali dalam 1 jam atau lebih maka jumlah pengunjung yang tersimpan pada MySQL/berkas akan bertambah terus(padahal pengunjungnya hanya satu orang saja). Jadi, perhitungan jumlah pengunjung itu kurang benar.

Pada sub bab ini, akan dibahas bagaimana menangani masalah di atas. Masalah tersebut dapat diatasi dengan menggunakan cookie. Apakah cookie itu? Cookie merupakan sepotong data yang tersimpan pada harddisk lokal milik pengunjung dan digunakan oleh halaman web dalam mengingat suatu informasi. Prinsipnya, saat membuka halaman web, dicek terlebih dahulu apakah pengunjung tersebut sebelumnya(dalam waktu yang kita tentukan) pernah mengunjungi apa belum. Jika pernah, maka data dalam berkas tidak akan diubah. Sebaliknya jika belum pernah maka data dalam berkas akan diubah.

counter.php

<?

if ($HTTP_COOKIE_VARS["visitor_cookie"] != “ari”)

{

setcookie(“visitor_cookie”, “ari”, time()+1800);

$bukak=fopen(“counter2.dat”,”a+”);

$jumlah=fgets($bukak,225);

fclose($bukak);

$bukak=fopen(“counter2.dat”,”w”);

$jumlah=$jumlah+1;

fputs($bukak,$jumlah);

fclose($bukak);

}

else

{

$bukak=fopen(“counter2.dat”,”r”);

$jumlah=fgets($bukak,225);

fclose($bukak);

}

?>

<HTML>

<HEAD>

<TITLE>Counter Sederhana dengan Berkas</TITLE>

</HEAD>

<BODY>

<?

print “<p align=center>Anda pengunjung ke: $jumlah”;

?>

</body>

</HTML>

Jalankan file counter.php, kemudian refresh-lah berkali-kali, jumlah pengunjung tidak akan berubah. Jumlah pengunjung akan berubah jika kita me-refresh setelah waktu kadaluarsa yang kita tentukan, yaitu 1800 detik (30 menit).

About these ads
Komentar
  1. Kang Atep Afia mengatakan:

    ok…
    thx y atas informasinya….

  2. tiluragung mengatakan:

    bingung.. gmana cara membuat widget baru?

Berikan Balasan

Isikan data di bawah atau klik salah satu ikon untuk log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Logout / Ubah )

Twitter picture

You are commenting using your Twitter account. Logout / Ubah )

Facebook photo

You are commenting using your Facebook account. Logout / Ubah )

Google+ photo

You are commenting using your Google+ account. Logout / Ubah )

Connecting to %s