Pr oye k Aplik a si Ba b 3 – Ja va Kids Fou n da t ion
Pr oye k Aplik a si Ba b 3 – Ja va Kids Fou n da t ion
Karena proyek ini source codenya cukup banyak m aka kit a akan m em buat nya dalam wakt u dua hari. Yait u hari ke t iga belas dan hari ke em pat belas. Jadi proyek bab 3 ini diharapkan selelsai dalam wakt u dua hari.
Unt uk proyek kali ini akan sangat berbeda dengan proyek- proyek sebelum nya. I ni karena kit a sudah t idak m em akai file sebagai m edia penyim panan. Tapi kit a sekarang m enggunakan sist em dat abase. Proyek bab 3 kali ini bert it el “ Java Kids Foundat ion” . Websit e ini nant inya m em iliki sist em m e m be r sh ip art inya t erdapat m em ber area dan unt uk m asuk user harus m enget ikkan usernam e dan password.
Selain it u kit a j uga m enam pilkan berit a disebelah kiri halam an. Berit a ini j uga m enggunakan dat abase sebagai m edia penyim panan. Pada halam an ut am a berit a yang kit a t am pilkan hanya cuplikannya saj a yait u sebanyak 25 kat a pert am a. Dan unt uk m em baca secara lengkap user perlu m engklik link berit a lengkap.
Pada proyek ini j uga t erdapat fasilit as buku t am u dan form kont ak kam i. Jadi boleh dibilang proyek kali ini m erupakan proyek yang paling m endekat i aplikasi web sebenarnya. Unt uk keperluan m anaj em en berit a, m em ber yang bergabung dan penghapusan ent ry buku t am u. Kit a sediakan con t r ol pa n e l unt uk adm in.
Beberapa fasilit as yang ada pada proyek ini sudah pernah kit a t erapkan sebelum nya. Hanya saj a kali ini lebih kit a kem bangkan. Fasilit as- fasilit as yang ada ant ara lain:
Fasilit as m em ber Fasilit as berit a Buku t am u Kont ak kam i Lupa password Cont rol panel unt uk adm in
Cont rol panel yang kit a sediakan nant inya dapat kit a gunakan unt uk m enghapus, m engedit , dan m enam bah berit a. Selain it u dapat pula digunakan unt uk m enghapus m em ber at au buku t am u yang kit a anggap “ sam pah” .
Unt uk it u ikut i beberapa langkah konfigurasi sebelum kit a m ulai m em buat proyek bab 3 ini, ikut i langkah- langkah berikut :
Buat folder baru pada C: \ Apache2\ ht docs\ webm ast er\ Bab3\ Nam ai folder t ersebut ha ri- 1 3 - 1 4 Masuk pada direkt ori C: \ Apache2\ ht docs\ webm ast er\ Bab3\ hari- 13- 14\ Buat folder baru, nam ai folder t ersebut Proyek - Ba b3 Masuk pada direkt ori C: \ Apahce2\ ht docs\ webam st er\ Bab3\ hari- 13- 14\ Proyek- Bab3\ Buat beberapa folder baru, yait u a dm in, m em ber, dan t em pla t e
Daft ar file yang akan kit a buat unt uk aplikasi proyek bab 3 ini dit unj ukkan pada t abel 3.7 berdasarkan let ak direkt ori.
Ta be l 3 .7 Daft ar file unt uk proyek Java Kids Foundat ion
Direkt ori Pr oye k - Ba b3
N a m a File
Fu ngsi
index.php Menam pilkan halam an ut am a dan cuplikan berit a daft ar.php
Menam pilkan form regist rasi m em ber Menam pilkan form regist rasi m em ber
Menam pilkan form login
bukut am u.php Menam pilkan dan m em proses form buku t am u kont ak.php Menam pilkan form kont ak
Menam pilkan form lupa password
j avakids.sql Unt uk m em buat dat abase dan t abel
Direkt ori Pr oye k - Ba b3 \ a dm in
N a m a File
Fu ngsi
index.php Menam pilkan form login at au m enu ut am a unt uk adm in berit a.php
Mengedit , m enam bah dan m enghapus berit a
bukut am u.php
Menghapus ent ry buku t am u
m em ber.php
Menam pilkan halam an m em ber area
fungsi.php Menyim pan kum pulan fungsi
Direkt ori Pr oye k - Ba b3 \ t e m pla t e
N a m a File
Fu ngsi
index_var.php Menyim pan kum pulan variabel unt uk halam an non m em ber m em ber_var.php
Menyim pan kum pulan variabel unt uk halam an m em ber area j ava_skin.php
Tem plat e unt uk halam an non m em ber
m em ber_skin
Tem plat e unt uk halam an m em ber area
t em plat e.php Menyim pan class skin index.php Meredirect ke halam an ut am a
Direkt ori Pr oye k - Ba b3 \ m e m be r
N a m a File
Fu ngsi
index.php
Menam pilkan halam an ut am a m em ber
profil.php Mengupdat e profil
Unt uk file pert am a yang akan kit a buat , kit a m ulai dari direkt ori a dm in . Sekarang Jalankan PHP DESI GNER 2006 klik m enu File - N e w - SQL unt uk m em buat file SQL baru. Ket ik kode berikut ini
-- File untuk membuat database -- buat database bernama javakids -- hapus jika sudah ada
DROP DATABASE IF EXISTS javakids ; CREATE DATABASE javakids ;
-- aktifkan database javakids USE javakids;
-- buat tabel admin CREATE TABLE admin ( username varchar (16) NOT NULL , password varchar (16) NOT NULL , PRIMARY KEY ( username )
) TYPE ='MyISAM';
-- buat tabel bukutamu -- kolom id_bt bersifat auto increment artinya otomatis bertambah satu -- saat dilakukan UPDATE pada tabel
CREATE TABLE bukutamu (
id_bt int (4) NOT NULL auto_increment ,
tgl_post varchar (20) NOT NULL , nama varchar (30) NOT NULL , email varchar (30) NOT NULL , komentar varchar (255) NOT NULL ,
PRIMARY KEY (id_bt) ) TYPE ='MyISAM';
-- buat tabel member CREATE TABLE member ( username varchar (16) NOT NULL , password varchar (16) NOT NULL , nama varchar (30) NOT NULL ,
email varchar (30) NOT NULL , alamat varchar (100) NOT NULL , kodepos int (7) NOT NULL , kota varchar (20) NOT NULL , PRIMARY KEY ( username ) ) TYPE ='MyISAM';
-- buat tabel news CREATE TABLE news (
id_berita int (4) NOT NULL auto_increment ,
jdl_berita varchar (75) NOT NULL ,
isi_berita text NOT NULL ,
tgl_berita varchar (12) NOT NULL , PRIMARY KEY ( id_berita )
) TYPE ='MyISAM';
-- masukkan username dan password untuk admin INSERT INTO admin VALUES ('admin', 'javakids123');
Sim pan pada direkt ori Pr oye k - Ba b3 \ a dm in \ dengan nam a j a va k ids.sql.
Sepert i yang pernah kit a bahas unt uk m engeksekusi file SQL kit a dapat m enggunakan MySQL Monit or at au phpMyAdm in. Karena pada webhost ing banyak digunakan phpMyAdm in m aka kit a akan m enggunakan m et ode ini agar anda t erbiasa. Jalankan browser anda arahkan ke ht t p: / / localhost / webm ast er/ phpMyAdm in2.x.x gant i x dengan versi anda. Klik gam bar yang t erlet ak diat as daft ar dat abase.
Set elah m uncul window klik t om bol t ab I m por t file s pada query box klik t om bol browse arahkan ke C: \ Apache2\ ht docs\ webm ast er\ Bab3\ hari- 13- 14\ Proyek- Bab3\ adm in\ pilih j a va k ids.sql lalu klik Open. Langkah yang t erakhir klik t om bol Go unt uk m em proses file.
Selanj ut nya kit a akan m em buat file yang m em bangun sist em Cont rol Panel unt uk adm in. Kit a m ulai dengan m em buat file yang isinya adalah kum pulan fungsi yang akan kit a gunakan ham pir diseluruh file yang kit a buat . Jalankan PHP DESI GNER 2006 klik File - N e w - PH P lalu salin list ing kode berikut
Script dari file fu n gsi.ph p
<?php
// fungsi untuk koneksi ke MySQL function konek_db ( $localhost = 'localhost' , $user = 'javauser' , $pass = 'pas123' , $db = 'javakids' ) {
@ $koneksi = mysql_connect ( $localhost , $user , $pass ); if (! $koneksi ) return false ;
mysql_select_db ( $db ); }
//fungsi untuk login //fungsi untuk login
// cegah dari SQL Injection dan cross site scripting function filter_str ( $string ) { $filter = ereg_replace ( '[^a-zA-Z0-9_]' , '' , $string ); return $filter ; }
//cek setiap field apa ada yang kosong function cek_field ($ var ) {
foreach ( $var as $field )
{ if ( $field == '' || ! isset ( $field )) return false ; } return true ; }
// cek kevalidan email function cek_email ( $email ) { // fungsi untuk mengecek kevalidan email if ( ereg ( '^[a-zA-Z0-9_\-]+@[a-zA-Z0-9\-]+\.[a-zA-Z0-9\-\.]+$' , $email )) return true ; else return false ; }
// fungsi untuk logout function logout ( $nama_session ) { if ( isset ( $_SESSION [ $nama_session ])) { unset ( $_SESSION [ $nama_session ]); session_destroy ();
return true ; } else return false ; }
// cek session function cek_session ( $nama_session ) { if ( isset ( $_SESSION [ $nama_session ])) return true ;
// session login terisi
else return false ;
// session login kosong
Sim pan pada direkt ori Pr oye k - Ba b3 \ a dm in \ dengan nam a fu ngsi.ph p.
SQL I n j e ct ion m erupakan suat u m et ode unt uk m engeksploit asi sist em dengan cara m em anipulasi query SQL. Manipulasi biasanya dilakukan pada form input yang m enyediakan t ext box.