Cara Membuat Visitor Counter berdasarkan ruangan di perpustakaan

Gaes mo tanya ada yg pernah bikin plugin absensi berdasarkan ruang ga ya gaes..❓😃😃

jadi harus ada tempat buat nampung data ruang. Berarti edit database. tambahin kolom ruang di tabel visitor.
15/01/2019, 15:21 – ido slims: nanti URL aksesnya misal begini:
http://localhost/slims/?p=visitor&ruang=ruang_baca

edit visitor.inc.php
ambil data ruang dengan $_GET[‘ruang’]
terus simpen deh ke database 😅

mumpung lagi senggang, yg mau silahken ikuti tutorial berikut 😁 :

1. Tambah kolom, jalanin di phpmyadmin.
Caranya menujulah ke database. Lalu Pilih Database slims yang digunakan, lalu pilih tabel visitor (paling bawah).

Lalu klik pada menu SQL, dan ketik perintah ini di kolom

ALTER TABLE `visitor_count`
ADD `room` varchar(255) COLLATE ‘utf8mb4_unicode_ci’ NULL;

lalu klik Go.

2019-01-27-230204_1366x768_scrot

Jika Sukses maka akan muncul tampilan seperti ini :

2019-01-27-230349_1366x768_scrot

Lalu kita cek apakah sudah masuk kedalam stuktur tabel, klik pada menu structure

2019-01-27-230643_1366x768_scrot

2. Sip, langkah selanjutnya. karena post request visitor ini pake ajax, jadi set URLnya di javascriptnya.
bukafile visitor.inc.php yang ada di folder slims kamu/lib/contents/visitor.inc.php

edit baris 194 yang semula :
var formAction = theForm.attr(‘action’);

Menjadi :
var room = “<?php echo isset($_GET[‘room’]) ? $_GET[‘room’] : ”; ?>”
var formAction = theForm.attr(‘action’) + ‘&room=’ + room;

dengan begini maka jika URL visitor kita ganti menjadi begini
http://localhost/slims/?p=visitor&room=ruang_baca

maka data *ruang_baca* sudah terkirim, tinggal di tangkap dan disimpan.

3. Menambahkan kode, untuk  mengambil data *room*

bukafile visitor.inc.php yang ada di folder slims kamu/lib/contents/visitor.inc.php,
letakan kode ini dibawah baris 100 :

$room = isset($_GET[‘room’]) ? $dbs->escape_string($_GET[‘room’]) : null;

Keterangan:
$room : nama variable buat nyimpen data sementara waktu.
isset($_GET[‘room’]) : ngecek apa data room tersedia, biar tidak error. kalo tidak ada diisi *null*
setelah data room didapat, tinggal edit kode yg menyimpan data ke database.

4. Menambahkan query insert 

bukafile visitor.inc.php yang ada di folder slims kamu/lib/contents/visitor.inc.php, lihat pada baris 117, yang semula seperti ini :
$_checkin_sql = “INSERT INTO visitor_count (member_id, member_name, institution, checkin_date) VALUES (‘$member_id’, ‘$member_name’, ‘$_institution’, ‘$_checkin_date’)”;

Ubahlah menjadi seperti ini :

$_checkin_sql = “INSERT INTO visitor_count (member_id, member_name, institution, checkin_date, room) VALUES (‘$member_id’, ‘$member_name’, ‘$_institution’, ‘$_checkin_date’, ‘$room’)”;

5. Menambahkan value room,
bukafile visitor.inc.php yang ada di folder slims kamu/lib/contents/visitor.inc.php, lihat pada baris 139, yang semula seperti ini :

$_checkin_sql = “INSERT INTO visitor_count (member_name, institution, checkin_date) VALUES (‘$member_name’, ‘$_institution’, ‘$_checkin_date’)”;

menjadi seperti ini

$_checkin_sql = “INSERT INTO visitor_count (member_name, institution, checkin_date, room) VALUES (‘$member_name’, ‘$_institution’, ‘$_checkin_date’, ‘$room’)”;

6. Saat test

Kalo sudah tinggal ditest.
*ruang baca*
http://localhost/slims/?p=visitor&room=ruang_baca

*ruang koleksi*
http://localhost/slims/?p=visitor&room=ruang_koleksi

*ruang tamu*
http://localhost/slims/?p=visitor&room=ruang_tamu

atau

*dapur*
http://localhost/slims/?p=visitor&room=dapur

Hasil

2019-01-27-233705_1366x768_scrot

2019-01-27-233605_1366x768_scrot


 

jadi tidak perlu banyak file, tinggal disesuaikan saja roomnya.
kalo takut disalahgunakan, tinggal di filter aja variable *$room* nya

 

Sekarang Kita Akan Menampilkan di Pelaporan, yaitu di halaman admin.
Loginlah sebagai admin, lalu klik menu pelaporan. Lalu pilih Daftar Pengujung.

Maka akan tampil (kurang lebih) seperti ini :

2019-01-27-233909_1366x768_scrot

Kita akan menambahkan informasi nama ruang diseblah kolom institusi.

Ikuti Langkah berikut :

  1. Buka lah file visitor_list.php yang ada di folder slimskamu/admin/modules/reporting/customs
    Tambahkan kode ini dibawah baris 98 :

    </div>

  2. menambahkan table room,
    tambahkan kode ini dibawah baris 146.

    ‘vc.room AS \”.__(‘Room’).’\”,

  3. Menambhhakn kode untuk perintah filtering pada pencarian
    Tambahkan kode ini dibawah baris 168:

    if (isset($_GET[‘room’]) AND !empty($_GET[‘room’])) {
    $room = $dbs->escape_string(trim($_GET[‘room’]));
    $criteria .= ‘ AND vc.room LIKE \’%’.$room.’%\”;
    }

  4. Tambahkan kode ini dibawah baris 193′, vc.room AS \”.__(‘Room’).’\”.
  5. Selesai.

Hasil :

2019-01-27-235132_1366x768_scrot

Semoga bermanfaat ya.

Tutorial ini dibantu oleh mas Ido, terimakasih mas Ido. Jazakallah..

File jadi :

https://drive.google.com/drive/folders/1r7nWCj-6oxviEjW8cBVB2amobAQS83QV?usp=sharing

 

 

Leave a Reply

Your email address will not be published. Required fields are marked *