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.

Share |

Portfolio

www.wearnespc.comwww.solper.comwww.autojaya.comwww.intisolar.comsmartprint.co.idwww.ottopharm.comoliser.co.idAnd More ....

Livechat

  • Sonny
    Marketing

  • Aris G
    Support

  • Agus
    Support

  • Kurnianto
    Support

  • Eko P
    Designer

  • Andreas
    Designer

  • LiveZilla Live Help

Address

PT. Proweb Indonesia
Perkantoran Duta Merlin No F4
Jl. Gadjah Mada 3-5
Jakarta Pusat
GPS: S 6o 09' 58.1", E 106o 49' 3.3"

 

Phone : 021 - 2636 3170
    021 - 3377 0050
     
Mobile : 0856 - 9360 1378
    0812 - 806 2772
    0857 - 1586 8992
    0816 - 180 8005
     
Blackberry PIN : 23096502
     
Fax : 021 - 633 5765
     
Web : www.proweb.co.id