ES^014

ES^014

 

Memiliki history(log) form dalam bentuk txt

PERMASALAHAN

Dengan adanya form pada SiS+ dan segala kelebihannya, ternyata masih terdapat kekurangan juga, yaitu saat mengakses form belum terdapat sebuah log atau history nya. Log yang dimaksud adalah sebuah rekaman history transaksi apa yang dilakukan user pada website. Log file berisi peristiwa yang dicatat oleh komponen sistem operasi. Peristiwa ini sering ditentukan oleh sistem operasi itu sendiri. File log mungkin berisi informasi tentang perubahan perangkat, device driver, perubahan sistem, peristiwa, operasi dan banyak lagi. Hal ini dimaksudkan untuk adaya sebuah laporan atau untuk monitoring form apa saja yang memang bayak dikunjungi oleh mahasiswa dan siapa saja yang sering mengunjungi form-form pada SiS+. Dengan adanya log mungkin akan digunakan atau dapat diambil keputusan kedepannya. Jadi akan terlihat form apa saja yang sama sekali tidak dikunjungi, mungkin form inilah yang nantinya tidak akan digunakan lagi atau dapat diputuskan suatu keputusan lainnya.

PEMECAHAN MASALAH

Untuk membuat sebuah log atau history tersebut, mungkin digunakan konsep seperti :

Membuat sebuah table daftar form dan juga ID mahasiswa dan jumlah kunjungan form, yang nantinya jika mahasiswa masuk ke dalam SiS+ dan mengunjungi form, maka secara otomatis direkam pada database yaitu ID atau NIM’a dan kemudian nama form nya atau kode form nya. Dan ditambahkan waktu untuk mengetahui kapan mahasiswa mengakses form tersebut. Untuk pembuatan ini belum dilakukan dan sedang mencari solusinya unttuk pembuatan log atau history form.

Konsep membuat file log nya tidak menggunakan database untuk menyimpan semua history nya, tetapi menggunakan file dalam format txt. Karena penyimpanan pada file txt tidak memakan space yang begitu banyak, sedangkan jika memakai database dapat menyebabkan space databasenya membengkak. Ini dikarenakan setiap transaksi akan tercatat.

Dalam pembuatan log file nya sebagai berikut :

1.  Membuat fuction untuk penyimpanan nya di dalam Model SiS+ yaitu di folder /protected/models.

Code :

public function LogForm($KategoriForm,$IdForm,$View,$Download) {

//————————–Log Login———————————
date_default_timezone_set(‘Asia/Jakarta’);
$DATE = date(“Y-m-d/H:i:s”);
$ip = $_SERVER[‘REMOTE_ADDR’];
$browser = $_SERVER[‘HTTP_USER_AGENT’];
$username = Yii::app()->user->name;

//$uri = $_SERVER[‘REQUEST_URI’];
//$referer = $_SERVER[‘HTTP_REFERER’];
$data = “$username|$KategoriForm|$IdForm|$View|$Download|$ip|$DATE|$browser\n”;

$filename = ‘LogForm.txt’;
$fp = fopen($filename, “a”);
if(flock($fp, LOCK_EX))
fwrite($fp,$data);
flock($fp, LOCK_UN);
fclose($fp);

//———————————————————-

}

public function GetCounter2($filename) {

$fp = fopen($filename, “r”);
if(flock($fp, LOCK_EX))
$file = fread($fp, filesize($filename) – 1);
flock($fp, LOCK_UN);
fclose($fp);
$lines = explode(“\n”, $file );
$rawPengunjung = count($lines);
return $lines ;

}

public function MostPopuler(){

return 1 ;
}