Membuat Aplikasi Simulasi UNBK dengan Codeigniter dan MySQL


ri32-simulasi-ujian-unbk-tryout-online

Latar Belakang

Ujian Nasional Berbasis Komputer (UNBK) disebut juga Computer Based Test (CBT) adalah sistem pelaksanaan ujian nasional dengan menggunakan komputer sebagai media ujiannya. Dalam pelaksanaannya, UNBK berbeda dengan sistem ujian nasional berbasis kertas atau Paper Based Test (PBT) yang selama ini sudah berjalan.

Maksud dari artikel ini adalah ingin membantu sekolah yang ingin membuat aplikasi simulasi UNBK berbasis web. Selain untuk simulasi UNBK, aplikasi ini juga dapat dikembangkan untuk kebutuhan tryout online, simulasi dan ujian online secara umum.

Aplikasi ini bersifat responsive artinya dapat menyesuaikan tampilan saat diakses baik oleh browser handphone maupun komputer desktop. Aplikasi ini dibuat menggunakan framework Codeigniter dan database MySQL dengan fitur sebagai berikut :

Fitur Admin :

  • Setup siswa
  • Setup Soal-soal
  • Setup Kegiatan Ujian
  • Setup Pemilihan Soal
  • Dapat melihat detail hasil ujian siswa
  • Dapat meng-copy hasil ujian siswa ke excel
  • Dapat me-reset hasil ujian siswa

Fitur Siswa :

  • Menu Tryout
  • Klik tombol kerjakan soal
  • Klik tombol panduan aplikasi
  • Soal tampil secara random (acak)
  • Dapat melihat hasil ujian beserta rinciannya

Continue reading

Membuat Aplikasi Akuntansi Online versi 2 Menggunakan PHP & MySQL


akuntansi-ri32

Latar Belakang

Aplikasi akuntasi online ini merupakan pengembangan dari aplikasi akuntansi sebelumnya. dibuat menggunakan PHP dan database MySQL.

Tampilan Aplikasi

Halaman Login

Halaman Login

Jurnal Kas Masuk

Jurnal Kas Masuk

Cetak Perkiraan

Cetak Perkiraan

Laporan Jurnal Kas Masuk

Laporan Jurnal Kas Masuk

Backup Database

Backup Database

Sekian artikel dari saya semoga bermanfaat untuk teman-teman dan anda semua…aamiin

Cilangkap, 30-03-2015

GusnaNuri

Membuat Aplikasi Random Image menggunakan PHP dan MySQL


10php-mysql

Latar Belakang

Saya mempunyai 2 referensi jika teman-teman ingin membuat aplikasi random image.

  1. Jika kita ingin menampilkan gambar yang ada didalam suatu folder secara acak.
  2. Jika kita ingin menampilkan gambar di folder dengan alamat gambar yang tersimpan di database

Untuk referensi yang pertama kita hanya dapat menampilkan gambar-gambar yang ada didalam sebuah folder, tanpa perlu mendefinisikan nama-nama filenya didalam coding. karena akan otomatis dibaca saat aplikasi dijalankan. untuk penamaan file sebaiknya menggunakan nomor urut dari 1,2,3.jpg sampai dengan seterusnya. kekurangannya kita hanya dapat mendefinisikan satu URL pada gambar yang tampil.

Untuk referensi yang kedua kita menyimpan nama-nama file gambar di sebuat table database. dengan bantuan field id untuk index data. kelebihan aplikasi yang kedua ini, kita dapat mendefinisikan URL pada setiap gambar yang tampil. dan saya tambahkan fitur untuk tracking file berapa kali gambar tersebut di klik dan menuju ke halaman web tertentu.

<?php
include “conn.php”;
$url=mysql_real_escape_string(htmlentities($_GET[‘url’]));
$id=mysql_real_escape_string(htmlentities(abs((int)$_GET[‘id’])));

echo “<br><center>Please wait view moment…</center>”;

$query=mysql_query(“select id,counter from tabel_banner where id=’$id'”);
$row=mysql_fetch_array($query);
$cek=mysql_num_rows($query);

if($cek!==0){
$c=$row[‘counter’];
$cc=$c+1;

$update=mysql_query(“update tabel_banner set counter=’$cc’ where id=’$id'”);

if($update){
?>document.location.href=”;<?php
}
}
?>

Download

  1. http://www.4shared.com/zip/yVcmiOl0ce/rotate-folder.html
  2. http://www.4shared.com/zip/gcYl-NRXce/rotate-db.html

Sekian artikel dari saya semoga bermanfaat untuk teman-teman dan anda semua…aamiin

Cilangkap, 07-12-2014

GusnaNuri

Membuat Sistem Informasi Bimbingan Konseling dengan PHP dan MySQL


SIBILING :: Sistem Informasi Bimbingan Konseling

Latar Belakang

Sistem Informasi Bimbingan Konseling (SIBILING) adalah sebuah sistem berbasis website yang menampilkan informasi mengenai pelanggaran siswa di sekolah serta informasi penanganan yang diberikan oleh guru pembimbing.

Tugas utama dari seorang guru pembimbing (Guru BP/BK) adalah memberikan konsultasi dan bimbingan kepada seluruh siswa didiknya. namun ada kalanya siswa melakukan pelanggaran disekolah. Sistem ini membantu mengkoordinasikan antara pihak sekolah, guru/walikelas, dan orangtua jika terjadi pelanggaran yang dilakukan oleh siswa di sekolah.

Gambaran Sistem

  1. Admin mengelola sistem seperti data induk (guru pembimbing, siswa, dan orangtua)
  2. Admin mengelola setup sistem seperti (setup jenis pelanggaran, jenis sanksi)
  3. Admin dapat melihat dashboard, serta laporan rinci dari data bimbingan siswa
  4. Guru dapat menentukan siswa yang dibimbing
  5. Guru dapat menginput data pelanggaran siswa serta ‘sanksi’ yang diberikan
  6. Guru dapat melihat dashboard, serta rincian dari data siswa yang dibimbingnya
  7. Orangtua dapat melihat informasi jika ada pelanggaran yang dilakukan oleh anaknya di sekolah
Tampilan Halaman Admin

Tampilan Halaman Admin

Tampilan Halaman Guru

Tampilan Halaman Guru

Tampilan Siswa Bimbingan

Tampilan Siswa Bimbingan

tampilan-halaman-guru-siswa-pelanggaran

Tampilan Input Pelanggaran

Cetak Laporan Pelanggaran

Cetak Laporan Pelanggaran

Struktur Tabel Database

Struktur Tabel Database

Download

http://www.4shared.com/zip/1CKqQ2lDce/SIBILING_Free_Download.html

Cilangkap, 21-12-2014

KangAgus

Klik untuk info dan pemesanan

Membuat paging dinamis menggunakan PHP & MySQL


paging-dinamis-ri32

Latar Belakang

Dalam artikel ini saya menjelaskan teknik paging yang banyak dipakai menampilkan data dalam jumlah banyak pada suatu halaman web.

Terkadang jika jumlah datanya banyak, akan menghasilkan link halaman paging yang panjang, sehingga kurang bagus dilihat. oleh karena itu kita perlu menggunakan teknik paging yang dinamis. Terdapat fungsi next dan prev. serta nomor link halaman paging yang tidak memanjang.

untuk lebih memudahkan memahami paging saya membuat sebuah aplikasi sederhana yang terbagi menjadi 3 modul yaitu :

  1. Menampilkan data maupun hasil pencarian data tanpa menggunakan paging
  2. Menampilkan data menggunakan paging dinamis, namun hasil pencariannya belum terikat dengan fungsi paging
  3. Menampilkan data menggunakan paging, serta menampilkan hasil pencarian kedalam fungsi paging yang dinamis.

Continue reading

Aplikasi upload dan update Photo menggunakan PHP & MySQL


aplikasi upload update photo RI32

Aplikasi update Photo Biodata

Latar Belakang

Dalam artikel ini saya akan menjelaskan tentang teknik upload dan update photo menggunakan php dan mysql yang dituangkan dalam sebuah aplikasi biodata. Sehingga user dapat :

  1. Mengupload photo beserta biodatanya
  2. Menghapus data beserta photo yang di upload
  3. Mengupdate photo dalam biodata tanpa duplikasi photo sebelumnya

Filter Type Photo

if($type != “image/gif” && $type != “image/jpg” && $type != “image/jpeg” && $type != “image/png”) {
echo “File Yang Di izinkan Hanya jpg,jpeg,png,gif!! <a href=index.php> Silahkan ulangi</a>”; }

Filter Ukuran Photo

if($ukuran>1000000){
echo “File Yang Di izinkan Hanya berukuran kurang dari 1MB!! <a href=index.php> Silahkan ulangi</a>”; }

Hindari nama file yang sama

$uploaddir=’./photo/’;
$rnd=date(His);
$nama_file_upload=$rnd.’-‘.$nama_photo;
$alamatfile=$uploaddir.$nama_file_upload;
if (move_uploaded_file($_FILES[‘photo’][‘tmp_name’],$alamatfile))

Algoritma Update Photo

  1. Buat field hidden di form edit untuk menyimpan nilai password lama dan  photo lama.
  2. Jika user tidak menginput photo atau password baru. Maka saat update data, aplikasi masih menggunakan pasword dan photo yang lama.
  3. Khusus untuk photo jika user input photo baru, maka photo lama akan di hapus, dan aplikasi akan meng-upload photo yang baru.
  4. Jika berhasil melewati semua filter, maka data akan di update ke database.

Download Source Code

Sekian artikel dari saya, semoga bermanfaat untuk teman-teman dan anda semua…aamiin

Cilangkap, 07 Juli 2013

GusnaNuri

Contoh SQL Injection dengan PHP dan MySQL


sql-injection

Latar Belakang

SQL injection mengacu pada tindakan seseorang memasukkan pernyataan SQL untuk dijalankan pada database tanpa sepengetahuan kita. Injeksi biasanya terjadi ketika kita meminta pengguna untuk input data, seperti nama atau password mereka. dan bukannya nama, tapi mereka memberikan pernyataan SQL bahwa kita tidak sadar pernyataan SQL tersebut akan berjalan pada database kita.

Download Contoh Halaman Login

Cara Penggunaan

  1. Download contoh form login yang akan di injection
  2. Import database db_injection.sql.zip via phpmyadmin
  3. Copy folder web_injection ke dalam folder htdocs
  4. Buka halaman register untuk mendaftarkan admin baru dengan alamat URL  http://localhost/web_injection/register.php
  5. Buka halaman login dengan alamat URL http://localhost/web_injection/index.php

Query Login yang digunakan

  • Jika kemungkinan query menggunakan awalan kutip satu ‘, maka inject dengan kutip dua. contoh querynya sebagai berikut : $query=select * from admin where username=”‘.$username.'” and password=MD5(“‘.$password.'”);
  • Jika kemungkinan query menggunakan awalan kutip dua “, maka inject dengan kutip satu. contoh querynya berikut : $query=select * from admin where username=’$username’ and password=MD5(‘$password’);

Cara Injection

  1.  Buka halaman login dengan URL http://localhost/web_injection/index.php
  2. Masukan username admin’ /*
  3. Masukan password hacked’)*/ OR (‘1’=’1

Injection username dan password

  • Jika kemungkinan query menggunakan kutip satu, maka inject dengan kutip dua, menggunakan Username : admin” /* Password : hacked”)*/ OR (“1″=”1
  • Jika kemungkinan query menggunakan kutip dua, maka inject dengan kutip satu. menggunakan Username : admin’ /* Password : hacked’)*/ OR (‘1’=’1

Query inject

select * from admin where username=’ admin’ / ‘ and password=MD5(‘ hacked’)/ OR (‘1’=’1 ‘)

Menggunakan teknik comment

select * from admin where username=’admin’ /‘ and password=MD5(‘hacked’)/ OR (‘1’=’1’)

Parsing Query setelah di inject

select * from admin where username=’adminOR (‘1’=’1’)

Output

Berhasil Login

Berhasil Login

Password Salah

Gagal Login

1

Login by SQL Injection

Cara Mencegah SQL Injection 

  1. Menggunakan fungsi PHP mysql_real_escape_string(), htmlentities(), htmlspecialchars(), strip_tags(), stripslashes(), mysql_escape_string(), get_magic_quotes_gpc() dan addslashes()
  2. Membatasi panjang input box.
  3. Filter input yang dimasukkan oleh user, terutama penggunaan tanda kutip tunggal (Input Validation).
  4. Matikan atau sembunyikan pesan-pesan error yang keluar dari SQL Server yang berjalan.

Referensi

Sekian artikel dari saya semoga bermanfaat untuk teman-teman dan anda semua…aamiin

Cilangkap, 28 Juni 2013

GusnaNuri

%d bloggers like this: