Menciptakan Counter text

Menciptakan Counter text berbasis flat file

Counter di dalam sebuah website memiliki arti penting untuk dapat mengetahui jumlah kunjungan ke dalam website yang kita buat yang memiliki dasar bagi kita untuk terus meningkatkan isi materi di dalam website kita karena memiliki trafik akan menaikan rating website kita di mesin pencari. Tidak setiap Website harus dibuat menggunakan database contohnya pada counter text ini, kita menggunakan file text biasa untuk menyimpan data counter.  Berikut script singkat Counter

<?

//counter_text.php

 

$COUNTER_DIR ="./counter-data";

 

header("Cache-Control : no-cache");

 

if (!isset($counter)||!preg_match("/^\w+$/", $counter))

            die("[ERROR: no counter specified]");

 

            @touch("$COUNTER_DIR/$counter.txt");

if (!($fp = @fopen("COUNTER_DIR/$counter.txt","r+")))

            die("[ERROR: Can't open counter file]");

 

if (!@flock($fp, LOCK_EX))

            die("[ERROR: Can't lock counter file]");

 

##fseek($fp, 0);

$value =@fgets($fp, 128);

if (!$value) $value=0;

@fseek($fp, 0);

 

$value++;

 

@fputs($fp, "$value");

@fclose($fp);

 

echo $value;

?>

Yang perlu menjadi catatan adalah, karena ada lebih dari satu klien yang dapat memangil skrip yang sama, maka perlu di lakukan mekanisme locking/penguncian. Kemudian kita membuka file counter tersebut dengan mode (read write) jika berhasil kita segera menguncinya (!@flock($fp, LOCK_EX)) dan untuk meningkatkan nilai counter, maka akan membaca nilai dari $value =@fgets($fp, 128);

Dan jika ada file counter baru maka hasilnya adalah string kosong yang akan di ubah menjadi bilangan kosong 0 if (!$value) $value=0; kemudian akan menambahkan dengan satu dan menuliskannya ke file @fseek($fp, 0); dan @fputs($fp, "$value"); setelah itu dengan melakukan fclose(), secara otomatis flock akan terbuka dan klien yang terblokir akan terlepas dan siap untuk mengakses file counter tersebut.

 Salah satu yang menjadi perhatian adalah kita harus memberikan batasan locking/pengkoncian dan konkurensi/proses-proses yang terjadi pada saat yang bersamaan, sehingga kita melakukannya (!@flock($fp, LOCK_EX)) / pengkoncian.

Untuk dapat menggunakan counter ini, harus menginclude skrip lain, contoh

<!- gunakan-counter-text.php ->

<h1> Selamat Datang </h1>

 terima kasih >atas kunjungannya

 <hr>

 <b><? $counter="kamu"; include "gunakan-counter-text.php"; ?></b>

Data counter akan tersimpan di file kamu.txt dan di halaman yang lain anda dapat memasang counter yang sama (kamu) atau counter lain dengan mengeset variabel $counter.

 

Semoga informasi di atas dapat menambah refrensi anda

 

Kunjungi www.prowebpro.com untuk menambah wawasan anda.

Web Design Packages

Paket BasicPaket BusinessPaket Corporate

Address

PT. Proweb Indonesia

 

Please visit: www.proweb.co.id