7203030021

99
PROYEK AKHIR RANCANG BANGUN MODEL SISTEM PELAYANAN DAN PEMESANAN TIKET MASKAPAI PENERBANGAN BERBASIS WAP PADA DATABASE TERDISTRIBUSI Siti Mubarokah NRP.7203.030.021 Dosen Pembimbing: M. Zen Samsono Hadi, ST NIP. 132 303 871 Arif Basofi, S.Kom NIP. 132 303 872 JURUSAN TELEKOMUNIKASI POLITEKNIK ELEKTRONIKA NEGERI SURABAYA SURABAYA 2006

Transcript of 7203030021

Page 1: 7203030021

PROYEK AKHIR

RANCANG BANGUN MODEL SISTEM PELAYANAN

DAN PEMESANAN TIKET MASKAPAI PENERBANGAN BERBASIS WAP PADA DATABASE TERDISTRIBUSI

Siti Mubarokah NRP.7203.030.021

Dosen Pembimbing: M. Zen Samsono Hadi, ST

NIP. 132 303 871

Arif Basofi, S.Kom NIP. 132 303 872

JURUSAN TELEKOMUNIKASI POLITEKNIK ELEKTRONIKA NEGERI SURABAYA

SURABAYA 2006

Page 2: 7203030021

RANCANG BANGUN MODEL SISTEM PELAYANAN DAN PEMESANAN TIKET MASKAPAI PENERBANGAN

BERBASIS WAP PADA DATABASE TERDISTRIBUSI

Oleh :

Siti Mubarokah

7203.030.021

Proyek Akhir ini Diajukan Sebagai Salah Syarat Untuk Memperoleh Gelar Ahli Madya (A.Md.)

di Politeknik Elektronika Negeri Surabaya

Institut Teknologi Sepuluh Nopember Surabaya

Disetujui Oleh : Dosen Penguji Proyek Akhir : Dosen Pembimbing : 1. Ir. Prima Kristalina, MT 1. M. Zen Samsono Hadi, ST NIP. 131 843 904 NIP. 132 303 871 2. Okkie Puspitorini, ST 2. Arif Basofi, S.Kom NIP. 132 134 723 NIP. 132 303 872 3. Aries Pratiarso, MT NIP. 131 964 953

Mengetahui : Ketua Jurusan Tekomunikasi

Drs. Miftahul Huda, MT NIP. 132 055 257

ii

Page 3: 7203030021

ABSTRAK

Sekarang ini banyak masyarakat yang menggunakan jasa angkutan udara untuk melakukan perjalanan yang singkat agar sampai tujuan tepat waktu. Oleh sebab itu informasi tentang keberangkatan pesawat, harga tiket dan pemesanan tiket pada suatu penyedia jasa angkutan udara sangat dibutuhkan oleh masyarakat. Dengan memanfaatkan teknologi informasi yang sudah ada kita ingin menampilkan informasi dan pemesanan tiket tersebut melalui WAP. Hal ini cocok dengan tingkah laku masyarakat yang selalu mobile. Dengan teknologi ini masyarakat dapat mengakses informasi tentang keberangkatan pesawat dan pemesanan tiket hanya dengan mengaksesnya melalui mobile phone dalam waktu 24 jam tanpa harus datang langsung ke counter-counter penyedia jasa angkutan udara. Dalam hal ini untuk membuat WAP tentang pelayanan dan pemesanan tiket maskapai penerbangan Surabaya kita memerlukan suatu database untuk menyimpan data – data tentang jadwal keberangkatan, harga tiket, dan data anggota. Database yang akan kita pakai adalah MySQL, sedangkan pemrogramannya menggunakan penggabungan antara Pemrograman WML dan PHP. Kata Kunci : WAP, MySQL, Pemrograman WML dan PHP.

iii

Page 4: 7203030021

ABSTRACT

Now many communities that make use of the air transport service to do the short trip so that to the right on time aim. Therefore information about the departure of the aircraft, the price of the ticket and the ordering of the ticket to an air transport service provider really is needed by the community. By making use of our available information technology want to put forward information and the ordering of this ticket through WAP. This agrees with the behaviour of the community that always mobile. With this technology the community can access information about the departure of the aircraft and the ordering of the ticket only by accessing him through mobile phone (the Cellular Phone) in time 24 hours without must come directly to counter-counter the air transport service provider. In this case to make WAP about the service and the ordering of our airline's Surabaya ticket need some database to keep the data – the data about the departure schedule, the price of the ticket, and the list of member. Database that would we with am MySQL, whereas his programming makes use of the merging between the WML Programming and PHP. Key word: WAPr, MySQL, the WML Programming and PHP

iv

Page 5: 7203030021

KATA PENGANTAR Assalamu’alaikum Wr. Wb.

Dengan mengucap puji syukur kepada Allah, atas limpahan rahmat dan hidayah-Nya sehingga penulis dapat menyelesaikan proyek akhir ini dengan berjudul :

RANCANG BANGUN MODEL SISTEM PELAYANAN DAN PEMESANAN TIKET MASKAPAI BERBASIS WAP PADA

DATABASE YANG TERDISTRIBUSI

Proyek Akhir ini adalah kewajiban bagi setiap mahasiswa Politeknik Elektronika Negeri Surabaya ITS dengan tujuan untuk memenuhi persyaratan untuk memperoleh kelulusan pada program Diploma III Jurusan Telekomunikasi di Politeknik Elektronika Negeri suarabaya ITS. Dengan selesainya buku laporan proyek akhir ini, penulis berharap semoga buku ini dapat membawa manfaat pembaca umumnya dan juga bagi penulis pada khususnya serta semua pihak yang berkepentingan. Penulis juga berharap agar proyek akhir ini dapat dikembangkan lebih lanjut sehingga dapat benar-benar digunakan sebaik-baiknya untuk mendukung perkembangan ilmu pengetahuan. Penulis menyadari bahwa penulis adalah manusia biasa yang tidak luput dari kesalahan dan kekurangan. Untuk itu, kritikan dan saran yang bersifat membangun kami harapkan untuk perbaikan selanjutnya. Wassalamu’alaikum Wr. Wb. Surabaya, Agustus 2006 Penulis

v

Page 6: 7203030021

UCAPAN TERIMA KASIH Dengan segala kerendahan hati yang tulus ikhlas, pada kesempatan ini saya ingin menyampaikan terima kasih yang sebesar-besarnya kepada semua pihak yang telah membantu saya dalam menyelesaikan proyek akhir ini, sehingga saya dapat menyelesaikan studi saya di Politeknik Elektronika Negeri Surabaya. Ucapan terima kasih ini saya tujukan kepada :

1. Allah SWT, karena dengan rahmat dan hidayah-Nya saya dapat menyelesaikan buku proyek akhir ini. “Terima kasih telah memberikan ketabahan” dan tak lupa shalawat dan salam selalu tercurahkan kepada junjungan nabi besar Muhammad SAW.

2. Ibu (aku salut padamu) dan Bapak, do’a restu kalian sangat berguna bagiku “aku sayang pada kalian berdua”

3. Mas Syaifudin, Mbak Hima, makasih telah memberikan spirit dan saran kepadaku. Mas Malik, Mbak Rowiyah, makasih atas bantuan material maupun sprituilnya mungkin tanpa bantuan kalian aku tidak akan disini.

4. Mas rokim, makasih telah mensupportku sehingga bisa tabah dalam mengahadapi semua masalah yang pernah ada. “You are my best brother”. Sahabatku Eni, makasi telah mendukungku.

5. Bapak M. Zen S Hadi,ST, Bapak Arif Basofi,S.Kom makasih telah membimbing saya dengan sabar, makasih atas sharing ilmunya.

6. Bapak Titon Dutono, selaku Direktur Politeknik Elektronika Negeri Surabaya

7. Bapak Miftahul Huda,MT selaku Kepala Jurusan Telekomunikasi

8. Ir. Prima Kristalina, MT yang telah memberikan fasilitas yang ada di lab komdig. Ma’af klo slama ini kita semua ramai.

9. Teman-teman lab komdig, dean, edhen, sexty, nanik, terimakasih dukungannya, nia ma’af aku telah merepotkan, makasi sharing ilmunya.

10. Teman-teman kos TMB 73, soulmate-q(desti, yesi, wulan, Tika), kiki, mb’ erga, mb’ lutfi, mb’ deni, dintel, dindun, makasi telah menghibur dan mensupportku.

vi

Page 7: 7203030021

vii

11. Opik, wahyudin ‘bolot’ makasi telah menginstallkan serta mengajariku Linux, Hasbi makasi telah mengajariku program php.

12. Makasi untuk orang-orang yang telah mendukungku, yang tak dapat kusebutkan satu persatu.

13. Teman-teman ku khususnya 3 Telkom A kalian sangat kompak, dan semuanya makasi.....

Page 8: 7203030021

viii

DAFTAR ISI HALAMAN JUDUL ………………………………………. i LEMBAR PENGESAHAN ………………………………. ii ABSTRAK …………………………………………………. iii ABSTRACT ……………………………………………….. iv KATA PENGANTAR …………………………………….. v UCAPAN TERIMA KASIH………………………………. vi DAFTAR ISI ........................................................................ viii DAFTAR GAMBAR ........................................................... xi DAFTAR TABEL ............................................................... xii BAB 1 PENDAHULUAN 1.1 LATAR BELAKANG …………………………. 1 1.2 RUANG LINGKUP ……………………………. 1 1.3 TUJUAN ………………………………………. 1 1.4 BATASAN MASALAH ……………………….. 1 1.5 METODOLOGI ……………………………….. 2 1.6 SISTEMATIKA PENULISAN………………….. 3 BAB 2 TEORI DASAR 2.1 UMUM …………………………………………. 5 2.2 DASAR MANAJEMEN JARINGAN INTERNET 5 2.3 TEKNOLOGI WIRELESS …………………….. 8 2.3.1 WIRESLESS APPLICATION PROTOKOL (WAP) ……………………………………… 8 2.3.1.1 Ruang Lingkup WAP ………………… 9 2.3.1.2 Elemen-elemen Penting Dari WAP …… 10 2.3.1.3 WAP Client …………………………… 11 2.3.1.4 WAP Gateaway ……………………….. 11 2.3.1.5 Origin Server …………………………. 12 2.3.1.6 Konfigurasi Jaringan WAP …………… 12 2.3.1.7 Penggunaan WAP Gateaway …………. 13 2.3.1.8 Penggunaan Aplikasi WAP server ……. 14 2.3.1.9 Markup Language (WML) dan WML script ………………………………….. 15 2.4 PHP ………..................................................... 19 2.4.1 Skrip PHP ………………………………….. 19 2.4.2 Konsep Kerja PHP ………………………… 19 2.5 APACHE ………………………………………. 20

viii

Page 9: 7203030021

ix

2.6 DATABASE MySQL …………………………. 20 2.6.1 KEISTIMEWAAN MySQL ......................... 20 2.7 DISTRIBUTED DATABASE …………………. 22 2.8 SISTEM OPERASI LINUX ………………….. 24 2.8.1 KELEBIHAN LINUX DENGAN OS LAIN 24 2.8.2 DEBIAN GNU LINUX ……………………. 24 2.8.3 PERINTAH DASAR LINUX …………….. 25 2.8.4 FILESYSTEM HIERARCHY STANDARD 25 2.9 FUNGSI MD5 …………………………………. 28 BAB 3 PERANCANGAN DAN PEMBUATAN SISTEM 3.1 PERANCANGAN SISTEM …………………… 29 3.1.1 PERSIAPAN INSTALASI OS (OPERATING SISTEM) …………………………………… 29 3.1.2 INSTALLASI APACHE …………………. 30 3.1.3 INSTALLASI WEB BROWSER …………. 30 3.1.4 INSTALLASI PHP ………………………… 31 3.1.5 INSTALLASI MySQL ……………………. 32 3.1.6 INSTALLASI DECKIT …………………… 33 3.1.7 FLOWCHART SISTEM ………………….. 34 3.1.7.1 Flowchart Sistem pada sisi client ……... 34 3.1.7.2 Flowchart Sistem pada sisi server …….. 36 3.2 PEMBUATAN SISTEM ………………………. 37 3.2.1 KONFIGURASI HTTP.conf ………………. 37 3.2.2 PEMBUATAN DATABASE ……………… 38 3.2.3 INTEGRASI SISTEM …………………….. 45 3.2.3.1 Index.php ……………………………. 45 3.2.3.2 Script Programming Pendaftaran User Baru …………………………………… 46 3.2.3.3 Login User ……………………………. 48 3.2.3.4 Pemesanan Tiket ……………………… 49 3.2.3.5 Pembatalan Tiket ……………………… 50 3.2.3.6 Info Transaksi ………………………… 51 3.2.3.7 Info Umum …………………………… 52 3.3 PROSES UPLOAD DATA KE SERVER ……… 53 3.4 PROSES INSTALLASI DISTRIBUTED DATABASE …………………………………… 54 3.4.1 KONFIGURASI KOMPUTER MASTER … 54 3.4.2 KONFIGURASI KOMPUTER SLAVE …… 56

ix

Page 10: 7203030021

x

BAB 4 PENGUJIAN DAN ANALISA 4.1 TUJUAN PENGUJIAN ....................................... 59 4.2 METODE PENGUJIAN ...................................... 59 4.3 PENGUJIAN SISTEM ........................................ 59 4.4 ANALISA HASIL ............................................... 60 4.4.1 PENGUJIAN LAMA AKSES WAP ......... 60 4.4.1.1 Pengaksesan Dengan Menggunakan Satu User ........................................................ 60

4.4.1.2 Pengaksesan Dengan Menggunakan Dua User ........................................................ 64

4.4.2 PENGECEKAN ID USER DAN PASSWORD 65 4.4.3 PENGUJIAN PEMESANAN ……………… 66 4.4.4 PENGUJIAN DISTRIBUTED DATABASE 67 4.4.4.1 Pengujian Tambah Data ………………. 67 4.4.4.2 Pengujian Update Data ………………. 68 4.4.4.3 Pengujian Delete Data ………………… 69 BAB 5 PENUTUPAN 5.1 KESIMPULAN …………………………………. 71 5.2 SARAN …………………………………………. 72 DAFTAR PUSTAKA ……………………………………… 73 LAMPIRAN 1 ………………………………………… 75 LAMPIRAN 2 ………………………………………… 79 LAMPIRAN 3 ………………………………………… 83 RIWAYAT HIDUP ……………………………………….. 87

x

Page 11: 7203030021

xi

DAFTAR GAMBAR Gambar 2.1 Susunan Client – Server………………………. 8 Gambar 2.2 Model Pemrograman WAP…………………… 10 Gambar 2.3 Penggunaan dari WAP Gateaway ……………. 13 Gambar 2.4 Penggunaan dari aplikasi server WAP............... 15 Gambar 2.5 Contoh WML ………………………………… 17 Gambar 2.6 Arsitektur WAP……………………………….. 19 Gambar 3.1 Blok Diagram Sistem ………………………… 29 Gambar 3.2 Installasi Apache……………………………….. 30 Gambar 3.3 Tampilan localhost/phpinfo.php ……………… 32 Gambar 3.4 Tampilan localhost/phpmyadmin …………….. 33 Gambar 3.5 Tampilan deckit (WAP Emulator) ……………. 33 Gambar 3.6 Gambar Flowchart Sistem Registrasi ………… 34 Gambar 3.7 Gambar Flowchart Sisitem Login, Transaksi Pemesanan dan Pembatalan Tiket Pesawat…… 35 Gambar 3.8 Flowchart Sistem Pada Sisi Server …….......... 36 Gambar 3.9 Membuat Database maskapai dengan Menggunakan phpmyadmin …………………. 38 Gambar 3.10 Proses Pendaftaran User Baru………………… 48 Gambar 3.11 Proses Login User ……………………………. 49 Gambar 3.12 Proses Pemesanan Tiket ……………………… 50 Gambar 3.13 Proses Pembatalan ……………………………. 51 Gambar 3.14 Proses Info Transaksi ………………………… 52 Gambar 3.15 Proses Informasi Keberangkatan Pesawat .. 53 Gambar 4.1 Grafik Lama Akses WAP Satu User ................ 62 Gambar 4.2 Grafik Lama Akses WAP User 1 ……………. 64 Gambar 4.3 Grafik Lama Akses WAP User 2 ……………. 65 Gambar 4.4 Hasil Insert Tabel acc_reg…………………….. 68 Gambar 4.5 Hasil Update data Pada Tabel acc_reg............... 69 Gambar 4.6 Hasil delete data Pada Tabel acc_reg .............. 70

Page 12: 7203030021

xii

DAFTAR TABEL Tabel 2.1 Keunggulan dan Kelemahan DDBMS ..................... 22 Tabel 2.2 Filesystem Hierarchy Standard ............................... 26 Tabel 2.3 Isi dari directory/dev ................................................ 27 Tabel 3.1 acc_reg .................................................................... 39 Tabel 3.2 tujuan ..................................................................... 39 Tabel 3.3 jadwal ...................................................................... 40 Tabel 3.4 det_jdwl .................................................................. 41 Tabel 3.5 tiket ......................................................................... 41 Tabel 3.6 psn_smtr ................................................................... 42 Tabel 3.7 pembayaran ............................................................. 42 Tabel 3.8 psn_btl .................................................................... 43 Tabel 3.9 admin ..................................................................... 44 Tabel 4.1 Pengujian Lama Akses satu user ............................. 60 Tabel 4.2 Pengujian Lama Akses User 1 ................................. 64 Tabel 4.3 Pengujian Lama Akses User 2 ................................ 64 Tabel 4.4 Pegujian ID user dan Password .............................. 65 Tabel 4.5 Percobaan Pemesanan ............................................. 66

Page 13: 7203030021

BAB 1 PENDAHULUAN

I.I LATAR BELAKANG

Dengan kemajuan teknologi sekarang ini pelayanan dan pemesanan tiket pesawat pada maskapai penerbangan dengan menggunakan internet, maupun telepon kurang efektif dan efisien, meskipun fasilitas internet mempunyai beberapa kelebihan yaitu real time. Oleh sebab itu, dengan memanfaatkan teknologi telepon seluler pelayanan dan pemesanan tiket pesawat pada maskapai penerbangan pada database yang tersebar atau terdistribusi dapat dikembangkan dengan menggunakan teknologi WAP.

Pemanfaatan teknologi Wireless Application Protocol (WAP) dimaksudkan untuk memudahkan pelanggan memperoleh pelayanan pemesanan tiket pesawat dimanapun mereka berada, dengan cara mengakses internet melalui telepon seluler.

Pada Proyek Akhir ini menggunakan teknologi WAP yang diharapkan dapat meningkatkan pelayanan suatu instansi penerbangan kepada pelanggannya. I.2 RUANG LINGKUP

• Jaringan Komputer • Komunikasi Data • Database

I.3 TUJUAN

Tujuan dari Proyek Akhir ini adalah :

• Membangun aplikasi pelayanan dan pemesanan tiket pesawat pada suatu maskapai penerbangan dengan menggunakan teknologi WAP pada database yang tersebar atau terdistribusi agar mudah diakses oleh pelanggan dimanapun dan kapanpun.

I.4 BATASAN MASALAH

• Permasalahan pada Proyek Akhir ini, yaitu : 1. Bagaimana cara merancang dan membangun struktur

multidatabase yang tersebar atau terdistribusi pada maskapai penerbangan.

2. Bagaimana membangun aplikasi pelayanan dan pemesanan

1

Page 14: 7203030021

2

tiket dengan menggunakan teknologi WAP pada satu jenis database tersebut.

3. Bagaimana membuat WEB Admin untuk mengetahui laporan pemesanan dan pembatalan tiket yang baru.

• Batasan masalah pada Proyek Akhir ini, yaitu : 1. Database yang digunakan dalam Proyek Akhir ini adalah

MySQL yang digunakan sebagai server maupun client. 2. Bahasa yang digunakan dalam Proyek Akhir ini yaitu

bahasa pemrograman WML, PHP. 3. Pada Proyek Akhir ini menggunakan data maskapai

penerbangan Garuda Indonesia sebagai studi kasus dengan posisi database yang tersebar.

4. Pemesanan tiket hanya dapat dilakukan pada hari yang sama. Dan range waktu pemesanannya antara 01.00 – 23.00 WIB.

5. Pengujian antara distributed database dengan layanan wap dilakukan secara terpisah.

6. Distributed database pada proyek akhir ini menggunakan dua PC (personal computer). Satu sebagai Master Server dan satu PC sebagai Slave Server.

I.5 METODOLOGI

Untuk menyelesaikan proyek akhir ini, dilakukan langkah – langkah sebagai berikut :

I.5.1 Perencanaan Sistem Prinsip kerja sistem ini adalah ponsel merequest halaman WAP. Selanjutnya WAP Gateaway menghubungkan operator ponsel dengan Internet, dan request dilanjutkan ke WAP server melalui internet. Kemudian WAP server akan memberikan respon berdasarkan permintaan yang ada dan telah diolah dengan PHP. Data didapat dari database yang telah tersedia di server. I.5.2 Instalasi dan Konfigurasi Sistem

WAP server yang digunakan adalah Apache web server. Untuk menambah layanan WAP pada sebuah server web, diperlukan MIME-Type. Sedangkan agar Apache dapat mengenali script php, maka perlu ditambahkan Application-Type untuk php dan file berupa /etc/apache/httpd.conf.

Page 15: 7203030021

3

I.5.3 Pembuatan Script Program PHP Membuat program berupa script PHP yang disisipkan pada

file-file WML pada pembuatan homepage WAP. Kemudian program PHP tersebut digunakan untuk mengolah data yang tersimpan pada database.

I.5.4 Pembuatan Homepage

Homepage WAP dibuat dengan WML dan WML Script. Dengan bahasa tersebut maka file-file dapat diubah menjadi text yang dapat ditampilkan pada ponsel. Sedangkan jika tampilan pada layar ponsel berupa gambar maka bentuk file berupa file wbmp yang dapat dikenali oleh WAP. Sedangkan untuk melihat hasil homapage WAP sementara dipakai WAP Emulator.

I.5.5 Analisa dan Kesimpulan

Dari hasil pengujian sitem secara keseluruhan dilakukan analisa dan memberikan kesimpulan dari analisa tersebut.

I.6 SISTEMATIKA PENULISAN

Sistematika penulisan dari buku proyek akhir ini direncanakan sebagai berikut : BAB I PENDAHULUAN

Berisi tentang latar belakang, tujuan, batasan masalah, permasalahan, metodologi, dan sistematika pembahasan masalah yang digunakan.

BAB II TEORI DASAR

Membahas tentang teori-teori yang digunakan dalam penyelesaian proyek akhir ini.

BAB III PERANCANGAN SISTEM

Berisi tentang perencanaan sistem dan proses pembuatan software yang telah dibuat.

BAB IV PENGUJIAN DAN ANALISA

Berisi data tentang hasil pembuatan dan pengujian sistem dan dilakukan analisa terhadap hasil pembuatan sistem pemesanan tiket pesawat.

Page 16: 7203030021

4

BAB V KESIMPULAN Memberikan kesimpulan tentang hasil yang telah diperoleh dan saran yang selayaknya dapat menunjang apabila proyek akhir ini dilanjutkan.

Page 17: 7203030021

BAB 2 TEORI DASAR

2.1 UMUM Pada bab ini akan diberikan teori dasar yang melandasi permasalahan dan penyelesainnya yang diangkat dalam proyek akhir ini. Teori dasar yang diberikan meliputi : dasar manajemen internet, teknologi wireless, teknologi database, dan distributed database.

2.2 DASAR MANAJEMEN JARINGAN INTERNET Jaringan Internet adalah gabungan komputer yang berhubungkan antara satu dengan yang lainnya yang dapat berkomunikasi data. Untuk melakukan komunikasi diperlukan protocol sebagai bahsa dalam komunikasi data. Protocol yang paling banyak digunakan yakni TCP/IP. TCP/IP merupakan gabungan antara dua protocol yaitu TCP dan IP. Aplikasi TCP/IP adalah seperti SNMP, SMS, (short Message Service), UDP, FTP (File Transfer Protocol), TELNET (Terminal Emulation Protocol) DNS, (Domain Name Server), SMTP (Simple main Transfer Protocol) dan lain-lainnya.

TCP/IP merupakan protokol jaringan komputer terbuka dan bisa terhubung dengan berbagai jenis perangkat keras dan lunak. TCP terdiri beberapa layer atau lapisan yang memiliki fungsi tertentu dalam komunikasi data. Setiap fungsi dari layer selain dapat bekerjasama dengan layer pada tingkat lebih rendah atau lebih tinggi, juga bisa berkomunikasi dengan layer sejenis pada remote host (peering). IP adalah jantung TCP/IP memiki peran sebagai pembawa data yang independen. Semua dokumen TCP/IP dalam bentuk public document IEN dan RFC. IP dibagi atas kelas network A,B, dan C. Sedangkan kelas D untuk keperluan reverse IP yang boleh diabaikan. IP ditulis dalam bilangan desimal dari 0 sampai 255. Data yang mengalir antar layer atau antar host dienkapsulasi dan diberi header agar tiap layer bisa memprosesnya. Sebuah host tidak tahu alamat IP gateway di network lain, tetapi data mengalir ke host tujuan di network lain melalui gateway networknya setelah diberi penentuan ruting alamat IP.

TCP/IP adalah salah satu perangkat lunak jaringan komputer (networking software) yang terdapat dalam sistem UNIX, dan dipergunakan dalam banyak komunikasi data UNIX dalam local area network (LAN) maupun Internet. TCP singkatan dari transfer control protocol dan IP singkatan dari Internet Protocol. TCP/IP menjadi satu nama karena fungsinya selalu bergandengan satu sama lain dalam komunikasi data. TCP/IP saat ini dipergunakan dalam banyak jaringan

5

Page 18: 7203030021

6

komputer lokal (LAN) yang terhubung ke Internet, karena memiliki sifat:

1. Merupakan protokol standar yang terbuka, gratis dan dikembangkan terpisah dari perangkat keras komputer tertentu. Karena itu protokol ini banyak didukung oleh vendor perangkat keras, sehingga TCP/IP merupakan pemersatu perangkat keras komputer yang beragam merk begitu juga sebagai pemersatu berbagai perangkat lunak yang beragam merk sehingga walau anda memakai perangkat keras dan perangkat lunak komputer yang berlainan dengan teman anda pada jaringan komputer berbeda, anda dan teman anda dapat berkomunikasi data melalui Internet.

2. Berdiri sendiri dari perangkat keras jaringan apapun. Sifat ini memungkinkan TCP/IP bergabung dengan banyak jaringan komputer. TCP/IP bisa beroperasi melalui sebuah Ethernet, sebuah token ring, sebuah saluran dial-up, sebuah X-25 dan secara vitrual melalui berbagai media fisik transmisi data.

3. Bisa dijadikan alamat umum sehingga tiap perangkat yang memakai TCP/IP akan memiliki sebuah alamat unik dalam sebuah jaringan komputer lokal, atau dalam jaringan kumputer global seperti Internet.

4. Protokol ini distandarisasi dengan skala tinggi secara konsisten, dan bisa memberikan servis kepada user-user di dunia

TCP/IP sebagai protokol terbuka (umum) memerlukan dokumen standar yang bisa dibaca oleh siapa saja. Semua protokol TCP/IP memiliki dokumen yang dibuat dalam tiga macam publikasi Standar Internet. Salah satunya diadopsi sebagai Military Standard (MIL.STD). Lainnya dipublikasikan dalam Internet Engineering Notes (IEN), saat ini publikasi dari IEN begitu banyak. Namun kebanyakan informasi protokol TCP/IP dipublikasikan dalam Request for Comments (RFC). RFC berisi versi terbaru dari semua spesifikasi standar protokol TCP/IP. RFC amat berguna bagi seorang administrator jaringan komputer dan berisi banyak panduan yang berguna. Isi lain RFC berupa informasi terminologi komunikasi data.

Untuk menyelenggarakan komunikasi berbagai macam vendor komputer diperlukan sebuah aturan baku yang standar dan disetejui

Page 19: 7203030021

7

berbagai fihak. Seperti halnya dua orang yang berlainan bangsa, maka untuk berkomunikasi memerlukan penerjemah/interpreter atau satu bahasa yang dimengerti kedua belah fihak. Dalam dunia komputer dan telekomunikasi interpreter identik dengan protokol. Untuk itu maka badan dunia yang menangani masalah standarisasi ISO (International Standardization Organization) membuat aturan baku yang dikenal dengan nama model referensi OSI (Open System Interconnection). Dengan demikian diharapkan semua vendor perangkat telekomunikasi haruslah berpedoman dengan model referensi ini dalam mengembangkan protokolnya.

Model referensi OSI terdiri dari 7 lapisan, mulai dari lapisan fisik sampai dengan aplikasi. Model referensi ini tidak hanya berguna untuk produk-produk LAN saja, tetapi dalam membangun jaringan Internet sekalipun sangat diperlukan.

• FTP

FTP (File Transfer Protocol) merupakan salah satu aplikasi TCP/IP yang banyak digunakan untuk memindahkan atau untuk mengcopy file dari komputer satu ke computer yang lain. FTP menggunkan 2 jenis hubungan atau connection untuk mentransfer sebuah file yaitu: Control Connection, yang digunakan pada pola hubungan antara client – server yang normal. Server membuka diri secara pasif di suatu port khusus (well-known port) yaitu port 21. selanjutnya server menunggu hubungan yang akan dilakukan oleh client. Client secara aktif membuka port 21 untuk mebangun kontrol cennection, dan akan dipertahankan sepanjang waktu selama client masih berkomunikasi dengan server. Hubungan ini didunakan oleh client untuk megirim perintah – perintah ke server dan menggunakannya untuk memberikan serpon.

Data Connection, yang dibangun pada tiap kali sebuah file di transfer antara clienr – server. Hubungan ini bersifat “memaksimalkan” ukuran data yang ditransfer (throughput), karena hubungan ini untuk transfer file. Data connection ini juga menggunakan port 20.

Gambar di bawah ini merupakan susunan client – server serta dua hubungan diantara mereka.

Page 20: 7203030021

8

Pemakaiandi Terminal User Interface

User ProtocolInterpreter

User dataTransfer

Server ProtocolInterface

Server dataTransfer

File System

File System

ControlConnection

DataConnection

Gambar 2.1 Susunan Client – Sever [5]

2.3 TEKNOLOGI WIRELESS 2.3.1 WIRELESS APPLICATION PROTOKOL (WAP)

Merupakan standard di seluruh dunia dalam menyediakan komunikasi internet dan mengedepan layanan pada digital mobile devices, seperti telepon seluler, pagers, dan alat wireless lainnya. Protokol ini adalah suatu spesifikasi global yang mengijinkan bagi user yang memiliki alat digital maka dengan leluasa user terserbut unutk mengakses dan saling berhubungan dengan layanan aplikasi Internet, intranet, dan extranet.

Menurut para ahli, akan ada lebih dari 530 juta para pelanggan wireless pada akhir 2001. Dan diperkirakan bahwa banyaknya para langganan wireless akan menjadi lebih dari satu milyar pada akhir tahun 2004. Kebanyakan telepon di masa mendatang akan mempunyai kemampuan multimedia yang meliputi :

• Dapat menerima e-mail • Dapat mengakses data dari database perusahaan • Dapat melukukan trading bursa • Membayar rekening • Pembuatan reservasi dalam perjalanan • Menjalankan aplikasi yang lain Berdasarkan perkiraan ini, penyedia layanan wireless, provider

telepon seluler, dan pengembangan perusahaan software melihat suatu pangsa pasar baru yang sangat besar dalam keingintahuan user akan informasi. WAP Forum didirikan pada bulan Juni 1997, oleh Ericsson,

Page 21: 7203030021

9

Motorola, Nokia, dan Phone.Com. WAP forum tersebut telah membuat garis besar dalam spesifikasi wireless secara global untuk semua jaringan wireless. Forum ini mendukung berbagai kelompok industri, seperti penyedia layanan wireless, pabrik telepon seluler, penyedia infrastruktur, dan pengembangan software. Forum ini juga telah menyajikan spesifikasi untuk badan standard seperti ARIB, CDG, ECMA, ETSI, TIA, dan W3C. Hari ini, lebih dari 400 anggota, mencakup IBM.

2.3.1.1 Ruang lingkup WAP

Jaringan wireless memberikan banyak tantangan dalam komunikasi, dibandingkan dengan jaringan wired. Sebagai contoh, dalam komunikasi wireless adalah dibatasi oleh mata rantai wireless yang mempunyai:

• Bandwidth yang kecil • Lebih latency • Stabilitas koneksi yang lebih kecil • predictable availability yang lebih kecil Sebagai hasilnya, protokol wireless yang menyediakan

kapabilitas yang toleran untuk jenis permasalahan ini. Sebagai tambahan, alat yang menggunakan jaringan wireless adalah dalam kaitan dengan yang keterbatas daya proses dan kemampuan lain. Sebagai contoh, alat wireless dengan desktop GUI yang lama seperti web browser. Pembatasan lainnya untuk telepon seluler, alat wireless meliputi:

• Ketahanan baterei • Sedikit menggunakan daya dari CPU • Lebih sedikit memori yang digunakan • Konsumsi kuasa yang terbatas • Tampilan yang lebih kecil • Dapat berasal dari masukkan yang berbeda (sebagai

contoh, keypad dan masukkan suara) • dapat juga dari mouse komputer Pada sekarang ini kebutuhan akan aplikasi dari user hanya

untuk pemeriksaan informasi dibanding dengan proses transaksi. Sebagai contoh, user hanya melihat email yang diterima sebagai pengganti dari e-mail pada layar kecil, atau melukan trading bursa perdagangan. Disamping itu WAP dapat digunakan untuk aplikasi yang lain, seperti melaksanaan transaksi perbankan, yang nantinya diperlukan

Page 22: 7203030021

10

dalam not-so-distant di masa mendatang. Dan akan memerlukan transmisi data yang tepat, pesan pribadi, integritas, dan autentifikasi. Hasilnya, fungsi ini harus dimasukkan sebagai bagian dari spesifikasi WAP.

2.3.1.2 Elemen-Elemen Penting Dari WAP WAP digambarkan suatu arsitektur standard dan protokol untuk menerapkan pengaksesan internet secara wireless. Elemen-elemen penting dari spesifikasi WAP meliputi :

• Definisi dari model pemrograman WAP • Wireless Markup Language (WML) and WMLScript • Suatu spesifikasi untuk microbrowser • Suatu protocol stack yang ringan • Suatu bagian dari kerangka dalam teleponi wireless

Iktisar dari pemrograman WAP Arsitektur WAP terdiri dari : • WAP client( alat handheld atau WAP terminal) • WAP gateway • Web server

Gambar 2.2 Model Pemrograman WAP [6]

Model pemrograman sama dengan model pemrograman Web. Para programmer melihat keunggulan dari model pemrograman ini sebagai keunggulan karena mereka menggunakan interface based yang familiar pada teknologi client/server.

Page 23: 7203030021

11

Untuk memecahkan keterbatasan dari telepon seluler (WAP terminal), dimana protokol gateway antara client dan Web server. Gateway akan merubah web content yang tradisional menjadi format pengkodean yang lebih rapi. Pengurangan ukuran dan nomor dari pengiriman paket melalui jaringan wireless. Terdiri dari 2 koneksi yang tidak dapat dihindari pada gateway atau proxy, dengan perbedaan protokol antara protokol client dan proxy (WSP/WTP) dan antara proxy dengan Web server (TCP/IP HTTP).

2.3.1.3 WAP client Client juga dikenal sebagai Wireless Application Environment (WAE). User agent adalah suatu komponen dari WAP terminal. Dan terdiri dari suatu microbrowser dan stack protokol WAP dalam menangani dari semua tanggapan dan permintaan dari struktur layer WAP. Sebagai contohnya meliputi :

• Penetapan sesi • Pengiriman data yang connection-oriented atau connection-less • Pengaturan atas suatu keamanan jaringan yang mencakup :

o Penggunaan encryption dan autentifikasi o Memecahkan kode yang di-request

• Memecahkan kode masukkan untuk memperkecil bandwidth

Microbrowser adalah alat yang menghubungkan dari user ke WAP-content dari Internet atau intranet. Dua standard utama yang mendukung microbrowser adalah :

• pengkodengan Wireless Markup Language ( WML) • kompilasi dari Wireless Markup Language script (

WMLScript). 2.3.1.4 WAP gateway

Gateway ini bekerja sebagai WAP proxy. WAP proxy menerima permintaan dari client, mengubah bentuk pesan HTTP, dan mengirimkannya (berdasarkan pada Uniform Resource Locator (URL)) ke server jaringan yang dituju. Dimana server dari jaringan mengembalikan permintaan, gateway mengubah bentuknya lagi ke dalam kode bit-bit. Kemudian mengirimkannya ke jaringan, dan mengirimkan kembali ke WAP client. Metoda ini mengijinkan untuk aplikasi dan isi data host pada jaringan Web standard yang menggunakan teknologi jaringan tradisional.

Page 24: 7203030021

12

WAP gateway juga mampu bekerja sebagai suatu server aplikasi dari WAP. Solusi ini tidak memerlukan suatu server jaringan. WAP Gateway ini dapat digunakan untuk mendukung keamanan end-to-end. Untuk aplikasi yang memerlukan akses lebih tinggi dalam mengendalikan suatu layanan, seperti yang digunakan itu untuk Wireless Telephony Application ( WTA).

WAP gateway mengurangi waktu respon ke WAP terminal dan mengumpulkan data dari server jaringan yang berbeda serta menyimpan informasi yang sering digunakan.untuk membagi unit besar HTTP menjadi lebih kecil sebelum di kirimkan ke client.

WAP gateway dapat juga menghubungkan dengan database dan penggunaan informasi yang dinamis dan memilih halaman WML untuk kelompok user tertentu.

WAP gateway menyediakan transisi antara Internet dan mobile service tanpa suara lainnya, seperti Short Massage Service ( SMS), Circuit Switched Data (CSD), atau General Packet Radio Services (GPRS).

2.3.1.5 Origin Server

Client microbrowser meminta halaman Wireless Markup Language (WML). Halaman WML ini disimpan pada server, yang mungkin adalah server jaringan, menghubungkan melalui internet atau intranet. Halaman WML juga dapat disimpan dalam aplikasi server yang sudah di-install pada gatewayi. Sebuah halaman WML terdiri dari WML deck. Satu WML deck terdiri dari satu atau lebih WML card. WML card dapat dibuat dari unit interaksi. User dapat menjalankan card secara bergantian antara card dari satu atau lebih pada halaman WML. WML, khusunya didesign untuk WAP terminal, provider yang lebih kecil markup tag daripada HTML. Berdasarkan pada HTTP 1.1. WML deck boleh juga terdiri dari WMLScript, contoh lain adalah halaman Web

2.3.1.6 Konfigurasi jaringan WAP Jaringan WAP dapat didesign menggunakan 2 konfigurasi antara lain :

• Konfigurasi yang pertama terdiri dari client yang mengakses melalui suatu WAP gateway ke Web server. Konfigurasi ini akan digunakan jika pelayanan Web tradisional dengan koneksi HTTP yang digunakan.

• Konfigurasi yang ke dua mengijinkan bagi client dalam mengakses suatu aplikasi server WAP secara langsung tanpa transfer ke jaringan IP. Dalam permasalahan ini WAP gateway tidak digunakan. Solusi ini sebagian besar akan digunakan

Page 25: 7203030021

13

untuk aplikasi telepon wireless. Aplikasi ini, seperti phone book, informasi broadcast tentang cuaca atau kondisi traffic dan stock quotes.

Agar keamanan hardware, semua fungsi dari aplikasi WAP server juga diimplementasikan pada WAP gateway. 2.3.1.7 Penggunaan WAP gateway

Tipe konfigurasi ini, terdiri dari 2 koneksi : • Yang pertama antara client dengan WAP gateway • Yang kedua antara WAP gateway dengan Web server

Koneksi yang pertama menggunakan Wireless Session Protocol

(WSP) dan Wireless Transaction Protocol (WTP), koneksi yang kedua menggunakan tradisional Hipertext Transfer Protocol (HTTP), yang dapat berjalan dibawah TCP. Proxy gateway menggunakan dua koneksi dimana yang pertama koneksi logika antara client dengan web server

Gambar 2.3 Penggunaan dari WAP gateway [6]

• Alur dari client-server

Jalur dari client-server meliputi : 1. Client memerintah untuk layanan khusus dari origin server

menyampaikan request ke server yang menggunakan WML user agent.

Page 26: 7203030021

14

2. WML user agent menggunakan pola operasi URL addressing untuk menemukan sebuah origin server. URL menggunakan aplikasi pengalamatan pada Web server, seperti contohnya : Common Gateway Interface (CGI).

3. Client me-request dan memancarkan ke gateway menggunakan WSP/WTP.

4. Gateway mengkodekan bit, merubah menjadi pesan HTTP dan mengirimkannya ke Web server (pengalamatan dengan URL)

5. Origin server menjawab permintaan dikembalikan menjadi single deck, jika ada format yang berhubungan dengan origin server.

6. Desk akan mengirimkan ke gateway. 7. Setelah dikirimkan ke gateway, format dari setiap deck akan

dikonvert menjadi format yang lebih baik untuk over-the-air transmission ke WAP terminal. Konversi pada gateway ini menggunakan WML encoder untuk menkonvert format text menjadi format biner

8. Gateway mengirimkan hasil pengkodean ke client melalui WAP protokol stack layer dari jaringan.

9. Pada sisi client WAP terminal, data akan diterima dan akan ditampilkan dan diterjemahkan Aseperti pada microbrowser Ada juga beberapa prosedur optimisasi tambahan berdasarkan

pada negosiasi antara gateway dan client. Client boleh menyampaikan satu atau lebih permintaan tambahan dengan WML user agent. Permintaan ini boleh juga pada WMLScript, yang dapat diterima dari orgin server di WMLScript user agent.

Prosedur dalam gateway berbeda dengan prosedur WML. Dimana gateway menerima suatu WMLScript, kemudian :

• penyusun WMLScript mengambil catatan sebagai masukan • menyusunnya ke dalam suatu kode byte • mengirimkannya kepada WAP terminal, menggunakan stack

layer WAP protokol via jaringan wireless 2.3.1.8 Penggunaan aplikasi WAP server

Penggunaan dari WAP gateway adalah tidak wajib. Mengkodekan dan menyusun text data tidak perlu dilakukan dalam gateway. Hal ini dapat dikayalkan dari beberapa origin server yang sudah menerapkan WML encoders dan WMLScript compiler. Hal ini dapat juga dilakukan dalam aplikasi WAP server,

Page 27: 7203030021

15

Gambar 2.4 Penggunaan dari aplikasi server WAP [6]

2.3.1.9 Markup Language (WML) dan WMLScript

Client saling berhubungan dengan origin server melalui kesatuan aplikasi WAP (WAE) layer. WAE terdiri dari pelayanan dan user agent. WML user agent memberikan dua layanan yang berbeda untuk komunikasi antara client dan server itu :

• WML • WMLScript

1) WML

WML adalah suatu bahasa dokumen tag-based. Yang dioptimalkan untuk menetapkan interaksi dan presentasi user pada peralatan seperti telepon dan mobile wireless lainnya terutama dirancang untuk transmisi narrow-band. WML diimplementasikan ke suatu struktur card dan deck. Hal ini mengijinkan aplikasi untuk menetapkan dokumen (biasanya dikenal sebagai deck) yang terdiri dari berbagai card. User saling berinteraksi dengan WML card dalam hal itu :

• menjalankan dan memutar kembali • meninjau ulang content tersebut. • emungkinkan dalam memasuk request informasi • menentukan suatu pilihan • pindah ke card yang lain

Hal ini memungkin adanya instruksi dimana service meminta pada origin server di dalam card. Deck WML disimpan sebagai file pada

Page 28: 7203030021

16

origin server. Yang diambil dari server manakala diperlukan. Deck dapat juga dynamically generated dari content yang dijalankan pada origin server. Masing-Masing card didalam sebuah deck berisikan suatu spesifikasi untuk user tertentu. WML menyediakan berbagai fasilitas, sebagai contoh :

• Mendukung gambar dan teks Hal ini meliputi presentasi keluaran dengan unsur-unsur penekanan (sebagai contoh, huruf tebal, huruf miring, huruf besar dan seterusnya), dengan model line break ( sebagai contoh line wrapping dan line wrapping suppression), dan tab kolom yang mendukung deretan simple tabbing tabbing kelurusan.

• Mendukung untuk user input Beberapa unsur-unsur untuk memohon masukan user yang mendukung. Unsur-Unsur tersebut dapat dikombinasikan ke dalam satu atau lebih card. WML meliputi masukan teks untuk mengendalikan teks dan password yang dimasukkan. Masukan teks tersebut mungkin disembunyikan, untuk mencegah user dari memasukkan jenis karakter yang salah. WML ini menyediakan pilihan, seperti selection control, yang mengijinkan user untuk menyajikan daftar pilihan yang mana data dapat diatur, menjalankan antar card, atau script. Dan juga, kontrol inisiasi mungkin telah disediakan.

• Navigation dan History stack WML mengijinkan beberapa mekanisme navigasi yang menggunakan URL. Navigasi ini meliputi HTML-style hyperlinks, unsur-unsur navigasi intercard, dan unsur-unsur history navigation.

• International support WML menggunakan Universal Character dalam ISO/IEC-1046. Yang sekarang ini, karakter diatur serupa dengan Unicode 2.0.

• Optimasi Narrow-Band Ada berbagai teknologi untuk mengoptimalkan komunikasi pada terminal narrow-band. Sebagai contoh, berbagai interaksi user (card) adalah yang dieksekusi dalam satu data yang dipiindahkan (suatu deck).

• State dan context managemen WML menjabarkan suatu kontrol konteks, dimana hal ini berarti bahwa masing-masing teks WML masukan dapat memperkenalkan variabel. Status dari variabel itu dapat

Page 29: 7203030021

17

digunakan untuk memodifikasi indeks dari suatu parameter card tanpa harus berkomunikasi dengan server.

• Contoh WML

Penunjukan WML terdiri dari satu deck, mulai dari <WML> dan berakhir dengan </WML>. Deck berisi dua card. Card yang pertama mulai dengan <CARD> dan berakhir dengan </CARD>. Card yang pertama mengendalikan panel awal. Card yang kedua menyediakan masukkan fungsi yang mencakup variabel. Hal itu dapat juga memberi user dalam pilihan untuk memilih antara dua pengolahan pilihan.

Navigasi user melalui panel awal. Dua variabel, N dan S, ditawarkan untuk masukkan berikutnya. Untuk variable S, pemakai boleh masuk 0 atau 1.

Gambar 2.5 Contoh WML [6]

2) WMLScript WMLScript adalah procedur bahasa ringan. Hal itu untuk

meningkatkan standard browsing dan fasilitas presentasi WML. Sebagai contoh:

• untuk menambahkan intelligence kepada client tersebut. • mengijinkan dalam menciptakan program pengulangan. • menjalankan conditionals.

Page 30: 7203030021

18

WMLScript diperoleh dari JavaScript bahasa WWW script. Jadi, prosedur logika dapat dibawa ke WML deck. WMLScript menyediakan aplikasi programmer dengan berbagai kemampuan yang menarik :

• kemampuan untuk memeriksa kebenaran user input sebelum dikirim kepada server

• kemampuan untuk mengakses fasilitas device dan peripherals

• kemampuan untuk saling berhubungan tanpa memperkenalkan round-trips kepada origin server (sebagai contoh, menampilkan pesan kesalahan).

Wireless Application Protocol atau WAP adalah suatu protocol

aplikasi nirkabel yang mampu mengakses internet melalui telepon seluler maupun perangkat wireless lainnya. WAP membawa informasi secara online melewati internet seperti mobile banking, e-mail dan masih banyak lagi yang disediakan oleh provider yaitu informasi secara langsung menuju telepon seluler. Cara kerja WAP hampir sama dengan cara kerja internet saat ini. Meskipun WAP mempunyai bahasa pemrograman sendiri, yaitu Wireless Markup Language, hal ini tidak membuat perubahan dengan internet saat ini. Seperti halnya menampilkan internet dari web browser, juga dibutuhkan WAP browser untuk menampilkan aplikasi WAP. Di dalam ketentuan telepon seluler, ini disebut Micro Browser. Seperti halnya saat mengetikkan URL untuk mengakses website, dilakukan hal yang sama untuk mengakses WAPsite di telepon seluler. Dengan mengakses web server melalui ISPdan login ke internet, dengan WAP juga melakukan hal yang sama pula, maka page akan dikirimkan dan dimunculkan di berbagai system operasi termasuk Windows, Linux, Java, PalmOS, SymbianOS dan lain-lain.

Sebuah telepon seluler WAP mungkin memiliki tombol tambahan yang membantu dalam menjelajah sebuah halaman web, tetapi tombol numeriknya tetap memegang peranan dalam mengirimkan permintaan saat mengakses.

Page 31: 7203030021

19

Gambar 2.6 Arsitektur WAP [6]

2.4 PHP

PHP merupakan bahasa berbentuk skrip yang ditempatkan dalam server dan diproses di server. Hasilnya yang dikirimkan ke klien, tempat pemakai menggunakan web browser.

Secara khusus, PHP dirancang untuk membentuk web dinamis. Artinya, ia dapat membuat suatu tampilan berdasarkan permintaan terkini. Misalnya, menampilkan isi database ke halaman web. Bermacam-macam database yang dapat dikoneksikan dengan PHP, seperti halnya database SQL server, MySQL, ORACLE.

2.4.1 Skrip PHP

Skrip PHP berkedudukan sebagai tag dalam bahasa HTML. Sebagaimana diketahui, HTML(Hypertext Markup Language) adalah bahasa standar untuk membuat halaman-halaman Web. Kode PHP diawali dengan <?PHP dan diakhiri dengan ?>. Pasangan kedua kode inilah yang berfungsi sebagai tag kode PHP. Berdasarkan tag inilah, pihak server dapat memahami kode PHP dan kemudian memprosesnya. Hasilnya dikirim ke browser.

2.4.2 Konsep Kerja PHP

Model kerja HTML, diawali dengan permintaan suatu halaman web oleh browser. Berdasarkan URL atau dikenal dengan alamat internet, browser mendapatkan alamat dari web server, mengidentifikasi halaman yang dikehendaki, dan menyampaikan segala informasi yang dibutuhkan oleh web server.

Selanjutnya, web server akan mencarikan berkas yang diminta dan memberikan isinya ke browser. Browser yang mendapatkan isinya segera melakukan penerjemahan kode HTML dan menampilkan isinya ke layar pemakai. [4]

Page 32: 7203030021

20

2.5 APACHE Apache merupakan web server open-source dan tersedia di berbagai platform, termasuk linux dan windows. Web server ini terkenal cukup handal dan banyak digunakan oleh sebagaian besar website yang ada di internet. Selain kuat dan tanggu, apache juga dapat diperolah dengan gratis. Namun kekurangan di bagian tampilan grafis mgnharuskan untuk memahami dasar-dasar konfigurasi dan instalasi secara teks. Apache biasanya telah disertakan dalam setiap instalasi operasi berbasis Linux. Source program terbaru untuk apache webserver dapat diperolah di: http://httpd.apache.org. [8] 2.6 DATABASE MYSQL

MySQL merupakan Relational Database Management Sistem (RDBMS) yang didistribusikan secara gratis di bawah lisensi GPL (General Public License). Di mana setiap orang bebas untuk menggunakan MySQL, namun tidak boleh dijadikan produk turunan yang bersifat closed source atau komersial. MySQL sebenarnya merupakan turunan salah satu konsep utama dalam database sejak lama, yaitu SQL (Structure Query Language). SQL adalah sebuah konsep pengoperasian database, terutama untuk pemilihan/seleksi dan pemasukan data, yang memungkinkan pengoperasian data dikerjakan dengan mudah secara otomatis. Keandalan suatu system database (DBMS) dapat diketahui dari cara kerja optimizer-nya dalam melakukan proses perintah-perintah SQL, yang dibuat oleh user maupun program-program aplikasinya. Sebagai database server, MySQL dapat dikatakan lebih unggul dibandingkan dengan database server yang lainnya dalam query data. 2.6.1 Keistimewaan MySQL Sebagai database yang memiliki konsep database modern, MySQL memiliki banyak sekali keistimewaan. Berikut ini beberapa keistimewaan yang dimiliki oleh MySQL 1. Portability

MySQL dapat berjalan stabil pada berbagai sitem operasi di antaranya adalah seperti Windows, Linux, FreeBSD, Mac OS X server, Solaris, Amiga, HP-UX dan masih banyak lagi.

2. Open Source MySQL didistribusikan secara open source (gratis), di bawah lisensi GPL.

Page 33: 7203030021

21

3. Multiuser MySQL dapat digunakan oleh beberapa user dalam waktu yang bersamaan tanpa mengalami masalah atau konflik. Hal ini memungkinkan sebuah database server MySQL dapat diakses client secara bersamaan.

4. Performance Tuning MySQL memiliki kecepatan yang menakjubkan dalam menangani query sederhana, dengan kata lain dapat memproses lebih banyak SQL per satuan waktu.

5. Column Types MySQL memiliki tipe kolom yang sangat kompleks, seperti signed/unsigned integer, float, double, char, varchar, text, blob, date, time, datetime, year, set serta enum.

6. Command dan Function MySQL memiliki operator dan fungsi secara penuh yang mendukung perintah SELECT dan WHERE dalam query.

7. Security MySQL memiliki beberapa lapisan sekuritas seperti level subnetmask, nama host, dan user dengan system perizinan yang mendetail serta password terencripsi.

8. Stability dan Limits MySQL mampu menangani database dalam skala besar, dengan jumlah records lebih dari 50 juta dan 60 ribu table serta 5 miliar baris. Selain itu, batas indeks yang dapat di tampung mencapai 32 indeks pada tiap tabelnya.

9. Connectivity MySQL dapat melakukan koneksi dengan client menggunakan protocol TCP/IP, Unix soket (Unix), atau Named Pipes (NT).

10. Localisation MySQL dapat mendeteksi pesan kesalahan (error code) pada clent dengan menggunakan lebih dari dua puluh bahasa. Meski demikian, bahasa Indonesia belum termasuk di dalamnya.

11. Interface MySQL memiliki interface (antar muka) terhadap berbagai aplikasi dan bahasa pemrograman dengan menggunakan fungsi API (Application Programming Interface).

12. Client dan Tools MySQL dilengkapi dengan berbagai tool yang dapat digunakan untuk administrasi database, dan pada setiap tool yang ada disertai petunjuk online.

Page 34: 7203030021

22

13. Struktur Tabel MySQL memiliki struktur table yang lebih fleksibel dalam menangani ALTER TABLE, dibandingkan databse lainnya semacam PostgreSQL ataupun Oracle. [2]

2.7 DISTRIBUTED DATABASE ● DDBMS

Distributed Database Management System( DDBMS ) merupakan salah satu pengembangan dari system basisdata. Distributed Database adalah kumpulan data yang digunakan bersama yang saling terhubung secara logik tapi tersebar secara fisik pada jaringan komputer. DDBMS berisi basisdata tunggal yang dipecah menjadi sejumlah fragmen. Masing-masing fragmen disimpan di satu komputer atau lebih di bawah kendali DBMS-DBMS yang terpisah. Komputer-komputer tersebut dihubungkan pada jaringan komunikasi. Masing-masing situs mampu memproses permintaan pemakai secara independent yang memerlukan data lokal di tempatnya (yaitu mempunyai satu derajat otonomi lokal) dan juga mampu memproses data yang disimpan di komputer lain di jaringan itu. DDBMS mempunyai karakteristik sebagai berikut :

• Kumpulan data yang digunakan bersama yang secara logik saling terhubung yang tersebar pada sejumlah komputer yang berbeda.

• Komputer-komputer yang saling dihubungkan menggunakan jaringan komunikasi.

• Data pada masing-masing situs di bawah kendali satu DBMS. • DBMS di masing-masing situs dapat menangani aplikasi-

aplikasi lokal secara otonom. • Masing-masing DBMS berpartisipasi dalam sedikitnya satu

aplikasi global.

Tabel 2.1 Keunggulan dan Kelemahan DDBMS [1]

Keunggulan DDBMS Kelemahan DDBMS Secara alami mengikuti struktur organisasi

Biaya

Adanya otonom lokal Kelemahan dalam Keamanan

Sifatnya dapat dipakai bersama

Sulitnya menjaga keutuhan data

Page 35: 7203030021

23

Peningkatan ketersediaan Kurangnya standar Peningkatan kehandalan Kurangnya pengalaman Peningkatan kinerja Perancangan basis data

lebih kompleks Ekonomis - Pertumbuhan yang modular

-

Kompleksitas -

• Sistem distribusi database Sebuah database yang di distribusi/replikasi berarti bahwa

database dari sebuah mesin sumber/master - diduplikasi ke satu atau lebih mesin yang lain – biasa disebut sebagai mesin-mesin slave. Dengan tersedianya sejumlah server yang memiliki isi database yang persis sama, maka ketersediaan dan kinerja sistem dapat ditingkatkan dengan membuat backup online yang senantiasa up-to-date dengan database master. Kinerja ditingkatkan dengan memultipleksi query sehingga beban tidak lagi terpusat pada satu mesin, tapi terbagi diantara master dan mesin-mesin slave. [7]

2.8 SISTEM OPERASI LINUX Pengenalan LINUX Yang membedakan Linux terhadap sistem operasi lainnya adalah harga. Linux ini lebih murah dan dapat diperbanyak serta didistribusikan kembali tanpa harus membayar fee atau royalti kepada seseorang. Tetapi ada hal lain yang lebih utama selain pertimbangan harga yaitu mengenai source code. Source code Linux tersedia bagi semua orang sehingga setiap orang dapat terlibat langsung dalam pengembangannya.

Kebebasan ini telah memungkinkan para vendor perangkat keras membuat driver ntuk device tertentu tanpa harus mendapatkan lisensi source code yang mahal atau menandatangani Non Disclosure Agreement (NDA). Dan itu juga telah menyediakan kemungkinan bagi setiap orang untuk melihat ke dalam suatu sistem operasi yang nyata dan berkualitas komersial.Karena Linux itu tersedia secara bebas di internet, berbagai vendor telah membuat suatu paket distrbusi yang dapat dianggap sebagai versi kemasan Linux. Paket ini termasuk lingkungan Linux lengkap, penagkat lunak untuk instalasi dan mungkin termasuk perangkat lunak khusus dan dukungan khusus.

Page 36: 7203030021

24

2.8.1 Kelebihan Linux dengan OS lain Linux disusun berdasarkan standar sistem operasi POSIX yang

sebenarnya diturunkan berdasarkan fungsi kerja UNIX.UNIX kompatibel dengan Linux pada level system call, ini berarti sebagian besar program yang ditulis untuk UNIX atau Linux dapat direkompilasi dan dijalankan pada sistem lain dengan perubahan yang minimal. Secara umum dapatdikatakan Linux berjalan lebih cepat dibanding UNIX lain pada hardware yang sama. Dan lagi UNIX memiliki kelemahan yaitu tidak bersifat free. MS-DOS memiliki kemiripan dengan Linux yaitu file sistem yang bersifat hirarkis. Tetapi MS-DOS hanya dapat dijalankan pada prosesor x86 dan tidak mendukung multi user dan multi tasking, serta tidak bersifat free. Juga MSDOS tidak memiliki dukungan yang baik agar dapat berinteroperasi dengan sistem operasi lainnya, termasuk tidak tersedianya perangkat lunak network, program pengembang dan program utilitas yang ada dalam Linux.

MS Windows menawarkan kemampuan grafis yang ada pada Linux termasuk kemampuan networking tetapi tetap memiliki kekurangan yang ada pada MS-DOS. Windows NT yang juga tersedia untuk Digital Alpha selain prosesor x86. Namun Windows NT ini masih juga memiliki beberapa kekurangan yang telah ada pada MS-DOS.Waktu untuk menemukan suatu bug dalam suatu sistem operasi ini tak sebanding dengan harga yang harus dibayar. Sistem operasi Apple untuk Macintosh hanya dapat berjalan di sistem Mac. Juga memiliki kekurangan dari sisi.

Ketersediaan perangkat bantu pengembang (development tool) dan juga kurang dapat secara mudah untuk berintoperasi dengan sistem operasi lainnya. Apple juga telah memungkinkan Linux dapat dijalankan pada Power.

2.8.2 DEBIAN GNU LINUX

Debian Linux adalah hasil dari usaha para sukarelawan untuk membuat distribusi Linux dengan kualitas tinggi dan non-komersial. Keuntungan dari Debian Linux adalah upgradability, ketergantungan antar paket didefinisikan dengan baik, dan pengembangan secara terbuka.

Debian merupakan satu-satunya distribusi Linux yang dikembangkan secara bersama-sama dan bekerja sama oleh banyak orang melalui internet, dalam semangat Linux dan ‘opensource’. Lebih dari 400 maintainer paket mengerjakan lebih dari 1500 paket dan mengembangkan Debian Linux. Sistem bug tracking yang canggih mengijinkan pengguna dengan mudah melaporkan bug dan masalah keamanan secara cepat yang berhubungan dengan komunitas Debian.

Page 37: 7203030021

25

Tool command-line, ‘apt-get’, dapat digunakan secara dinamis untuk meng-upgrade sistem dari jaringan archieve Debian yang luas. Debian Linux adalah distribusi yang sangat dinamis. Rilis snap-shot dibuat setiap 3 bulan, ftp archieve-nya diupdate setiap hari. [7]

2.8.3 PERINTAH DASAR LINUX Perintah dasar yang sering digunakan dalam linux adalah sebagai berikut :

1. ls : melihat isi direktori yang aktif contoh : debian:/root# ls

menampilkan isi direktori root 2. cat : melihat isi file secara keseluruhan

contoh : debian:/# cat [nama_file] 3. more : menampilkan isi file per layer

contoh : debian:/#more [nama_file] 4. tail : menampilkan sepuluh baris terakhir

contoh: debian:/#tail [nama_file] 5. less : melihat isi file tetapi yang bisa discroll

contoh: debian:/#less [nama_file] 6. cp : mengkopi file

contoh: debian:/#cp file1 /home mengkopi file1 dari root ke direktori home

7. mv : memindahkan file contoh: debian:/#mv file1 /home

8. rm : menghapus file contoh: debian:/#rm [nama_file]

9. mkdir : membuat direktori contoh: debian:/#mkdir [nama_direktori]

10. rmdir : menghapus direktori contoh: debian:/#rmdir [nama_direktori]

11. cd : pindah direktori contoh: debian:/#cd root

2.8.4 Filesystem Hierarchy Standard

Filesystem Hierarchy Standard (FHS) adalah standar yang digunakan oleh perangkat lunak dan pengguna untuk mengetahui lokasi dari file atau direktori yang berada pada komputer. Hal ini dilakukan dengan cara menetapkan prinsip-prinsip dasar pada setiap daerah pada sistem file, menetapkan file dan direktori minimum yang dibutuhkan, mengatur banyaknya pengecualian dan mengatur kasus yang sebelumnya pernah mengalami konflik secara spesifik.

Page 38: 7203030021

26

Tabel 2.2 Filesystem Hierarchy Standard

Direktori Deskripsi

/etc Berisi file administrative (konfigurasi dll) dan file executable atau script yang berguna untuk administrasi system.

/dev Berisi file khusus yang merepresentasikan peralatan hardware seperti memori, disk, printer, tape, floppy, jaringan dll.

/bin Berisi program standar Linux (binary).

/sbin Berisi perintah-perintah yang berhubungan dengan dengan system (hanya super user).

/lib

Berisi program library yang diperlukan untuk kompilasi program (misalnya C). Berisi instruksi (command) misalnya untuk Print Spooler (lpadmin) dll.

/tmp Berisi file sementara, yang pada saat Bootstrap akan dihapus

/boot Berisi file yang sangat penting untuk proses bootstrap. Kernel vmlinuz disimpan di direktori ini.

/proc Berisi informasi tentang kernel Linux, proses dan virtual system file.

/var

Direktori variable, artinya tempan penyimpanan LOG (catatan hasil output program), file ini dapat membengkak dan perlu dimonitor perkembangannya.

/home Berisi direktori untuk pemakai Linux (pada SCO diletakkan pada /usr)

/mnt Direktori untuk mounting system file /root Home direktori untuk superuser (root)

/usr/bin/X11 Symbolic link ke /usr/X11R6/bin, program untuk X-Window

/usr/src Source code untuk Linux

/opt Option, direktori ini biasanya berisi aplikasi tambahan (“add-on”) seperti Netscape Navigator, kde, gnome, applix dll.

/usr Berisi subdirectory yang bisa di execute oleh semua user

/sys Berisi system, driver-driver yang aktif dan lebih tertata

lost+found Berisi informasi jika kita melakukan command fsck

Page 39: 7203030021

27

Direktori /dev Konsep Unix dan Linux adalah memperlakukan peralatan

hardware sama seperti penanganan file. Setiap alat mempunyai nama file yang disimpan pada direktori /dev.

Tabel 2.3 Isi dari directory /dev

Peralatan Direktori Floppy /dev/fd0 Harddisk IDE : /dev/had, /dev/hdb, /dev/hdc, /dev/hdd

SCSI : /dev/sda, /dev/sdb, /dev/sdc CDROM SCSI : /dev/scd0, /dev/scd1

IDE : /dev/cdrom Universal : /dev/cdrom (link dari actual cdrom ide atau scsi)

Mouse PS2 : /dev/psaux Universal : /dev/mouse

Parallel Port

LPT1 : /dev/lp0 LPT2 : /dev/lp1

Serial Port COM1 : /dev/ttyS0 COM2 : /dev/ttyS1 Universal : /dev/modem (link dari S0 atau S1)

Direktori /proc

Direktori /proc adalah direktori yang dibuat diatas RAM (Random Access Memory) dengan system file yang diatur oleh kernel. /proc berisi nomor proses dari system dan nama driver yang aktif di system. Semua direktori berukuran 0 (kosong) kecuali file kcore dan self. Setiap nomor yang ada pada direktori tsb merepresentasikan PID (Process ID).

Debian Command

• apt-cache search [packet] Digunakan untuk mencari paket-paket yang dibutuhkan.

• apt-get install [packet] Digunakan untuk menginstall paket-paket yang diperlukan.

• apt-get remove [packet] Digunakan untuk uninstall paket.

• dpkg Digunakan untuk menginstall paket-paket dari dalam.

Page 40: 7203030021

28

• dselect Digunakan untuk add/remove program/paket-paket.

2.9 FUNGSI MD5 Fungsi md5() merupakan fungsi string yang akan menghasilkan hash string yang berdasar pada "RFC 1321 - The MD5 Message-Digest Algorithm" (www.faqs.org/rfcs/rfc1321). Fungsi ini sering digunakan pada pengecekan data password dikarenakan fungsi ini dapat mengubah bentuk string ke bentuk hash string yang unik. Ini dapat digunakan sebagai data security yang tidak mudah untuk ditebak. Bentuk unik ini terdiri dari 32-karakter bilangan heksadesimal. [3]

Page 41: 7203030021

BAB 3 PERANCANGAN DAN PEMBUATAN SISTEM

Pada Bab ini akan dijelaskan mengenai perancangan perangkat

lunak pelayanan dan pemesanan tiket maskapai penerbangan yang meliputi perancangan sistem, perancangan perangkat lunak (sotware), integrasi sistem, dan proses upload data ke server.

3.1 PERANCANGAN SISTEM

Gambar 3.1 Blok Diagram Sistem Dari blok diagram diatas dapat dijelaskan bahwa : 1. Pada mobile phone (client)

• Melakukan setting GPRS dan meletakkan alamat url http://student.eepis-its.edu/~siti/wap pada bookmarks.

• Melakukan koneksi dengan server. 2. Pada PC (server)

• Menginstall semua komponen yang mendukung seperti linux, mysql, php, dan deckit.

• Membuat program PHP dan wml yang mungkin terjadi dua arah antara personal computer server dengan mobile phone.

• Membuat program PHP yang mengkoneksikan database MySQL.

3.1.1 Persiapan Instalasi OS (Operating System)

Untuk mengerjakan tugas akhir ini perlu mempersiapkan

29

Page 42: 7203030021

30

seperangkat komputer dan software operating system yang akan di install. Adapun operating system yang digunakan dalam tugas akhir ini adalah OS Linux Debian serge dengan kernel 2.6. Dan paket-paket yang lain dapat diambil dari http://mirror.eepis-its.edu yang terletak di server EEPIS ITS. Proses pengambilan data dilakukan lewat FTP. Pada tugas akhir ini memerlukan beberapa komponen pendukung yang harus sudah terinstall pada OS Linux, adapun komponen-komponen pendukung yang diperlukan adalah Apache, Web Browser, PHP4, PHPmyadmin, MySQL, WAP Emulator yaitu Deckit. 3.1.2 Installasi Apache

Web server apache (http://www.apache.org) pada Linux dapat di install dengan cara #apt-get install apache2. Web server ini bekerja pada direktori /var/www sehingga aplikasi web harus ditaruh pada direktori tersebut. Agar dapat diakses oleh WAP browser, maka content-nya harus dipadukan dengan bahasa WML (Wireless Markup Language).

Gambar 3.2 installasi apache

3.1.3 Installasi Web Browser

Web browser digunakan untuk melihat tampilan web. Ada beberapa macam web browser yang dapat digunakan pada Linux, misalnya Opera, Mozilla-Firefox, dll. Adapun Installasi dapat digunakan dengan cara

• Untuk Opera download opera pada fileserver dengan alamat ftp://fileserver.eepis-

Page 43: 7203030021

31

its.edu/software/networking/opera/ftp://fileserver/software/networking/opera/opera-8.51-20051114.5-shared-qt.i386-en.tar.gz Setalah itu lakukan proses install dengan langkah-langkah sebagai berikut : siti:~#tar zxvf opera-8.51-20051114.5-shared-qt.i386-en.tar.gz siti:~#apt-get install opera

• Untuk Mozilla-Firefox download mozilla-firefox pada fileserver dengan alamat ftp://fileserver/software/networking/opera/ftp://fileserver/software/networking/firefox/firefox-1.0.7.installer.tar.gz. Setelah itu lakukan proses install dengan langkah-langkah seperti di bawah ini :

siti:~#tar zxvf firefox-1.0.7.installer.tar.gz siti:~#apt-get install mozilla-firefox

3.1.4 Installasi PHP

PHP digunakan untuk contoh aplikasi web dinamis, pada proyek akhir ini digunakan PHP4 yang di install dengan cara

siti:~# apt-get install php4 libapache2-mod-php4 kemudian restart apache2 dengan perintah

siti:~# /etc/init.d/apache2 restart buatlah file dengan nama phpinfo.php pada direktori /var/www dengan perintah

siti:~#vim /var/www/phpinfo.php Berikut ini merupakan script dari phpinfo.php

<? phpinfo(); ?> Kemudian jalankan dengan alamat http://localhost/phpinfo.php

pada web browser (misalnya : mozilla-firefox atau opera). Jika installannya berhasil maka akan tampak seperti Gambar 3.3.

Page 44: 7203030021

32

Gambar 3.3 Tampilan localhost/phpinfo.php

3.1.5 Installasi MySQL

Untuk memperoleh file distribusi yang cocok untuk Linux maka dapat di download di http://www.mysql.com. Kemudian install mysql tersebut dengan langkah-langkah sebagai berikut : siti:~#apt-get install mysql-server siti:~# /etc/init.d/mysql start Untuk mempermudah penggunaan mysql maka perlu menginstall phpmyadmin dengan perintah siti:~#apt-get install phpmyadmin Kemudian setelah berhasil di install maka jalankan alamat berikut ini :

http://localhost/phpmyadmin Jika alamat tersebut berhasil dijalankan maka akan tampak seperti Gambar 3.4.

Page 45: 7203030021

33

Gambar 3.4 Tampilan localhost/phpmyadmin

3.1.6 stallasi Deckit unakan wap emulator maka kita perlu

mendow

InUntuk dapat menggnload deckit pada fileserver dengan alamat

http://fileserver.eepis-its.edu/software/developtment/wap/deckit-1.4.2.tar.gz. Setelah itu dilakukan proses installasi seperti berikut :

# tar zxvf deckit-1.4.2.tar.gz # cd deckit ~/deckit/ # ./install.sh

g telah terinstall

Gambar 3.5 Ta (wap emulator)

Jalankan aplikasi deckit yan~/deckit/ # ./deckit

mpilan deckit

Page 46: 7203030021

34

3.1.7 Flowchart Sistem rja perangkat lunak pada proyek akhir ini

dapat dilpada sisi client

an pembatalan tiket hanya dapat di

Flowchart sistem keihat di bawah ini :

3.1.7.1 Flowchart Sistem Pada proyek akhir ini pemesanan dakses oleh user yang telah terdaftar pada database maskapai

penerbangan PENS AIRLINES. Oleh sebab itu, perlu adanya pendaftaran bagi user baru agar dapat melakukan transaksi pemesanan dan pembatalan tiket pesawat. Adapun flowchartnya adalah sebagai berikut :

Gambar 3.6 Flowchart sistem registrasi

Penjelasan Flowchart diatas adalah seba kut :

rapa inputan. dan disimpan pada

4. ta berhasil disimpan maka mobile phone akan menerima

Untuk user yang telah terdaftar, apabila ingin melakukan

transaksi

gai beri

1. User memilih menu registrasi. 2. Mobile phone memberikan bebe3. Data yang telah diinputkan akan diproses

database. Setelah dakonfirmasi bahwa data telah berhasil disimpan.

pemesanan dan pembatalan tiket diharuskan melakukan login

Page 47: 7203030021

35

terlebih dahulu. Flowchart dari login dapat dilihat di bawah ini :

Gambar 3.7 Flowchart sistem Login, transaksi

enjelasan Flowchart di atas adalah sebagai berikut :

password. tkan ke

3. enu, yaitu

menu pemesanan tiket rapa inputan

4) n pada

pemesanan dan pembatalan tiket pesawat

P1. User mulai login dengan memasukkan id user dan 2. Authentifikasi id user dan password, jika benar akan dilanju

menu sedangkan jika salah akan mengulang ke masukan. Jika login berhasil akan terdapat beberapa pilihan mpemesanan tiket, pembatalan tiket, dan bantuan. Adapun penjelasan proses dari ketiga menu tersebut dapat dilihat di bawah ini : a. Pemesanan Tiket

1) User memilih2) Mobile phone akan memberikan bebe3) Kemudian inputan akan diproses, jika benar maka akan

dilanjutkan pada proses penyimpanan data sedangkan apabila gagal maka inputan akan diulang kembali. Adanya konfirmasi bahwa data telah tersimpa

Page 48: 7203030021

36

database, kemudian data akan ditampilkan pada mobile phone.

batalan Tb. Pem iket menu pembatalan tiket.

tan berupa kode

3). a konfirmasi pembatalan tiket. kan

c. Bantenu ini digunakan untuk memberikan bantuan kepada

.7.1.2 Flowchart Sistem pada sisi server

1). User memilih2). Mobile phone akan memberi inpu

transaksi yang telah user dapatkan saat transaksi pemesanan tiket. User akan menerim

4) Pembatalan akan diproses kemudian datanya adisimpan di database. uan

Pilihan muser tentang bagaimana cara memesan dan membatalkan tiket pesawat.

3

Gambar 3.8 Flowchar m pada sisi server

Penjelasan rt di atas adalah sebagai berikut : eksi ke PHP.

terhubung dengan database mencari data pada database.

t siste

Flowcha1. Saat memulai aplikasi web browser melakukan kon2. Web browser memberikan inputan dan diterima oleh PHP 3. Setelah menerima data dari web browser, PHP yang telah

Page 49: 7203030021

37

4. PHP menerima data dari database kemudian diproses di PHP dan hasilnya diambil oleh web browser.

3.2 PEMBUATAN SISTEM Untuk mengetahui apakah pa ket komponen yang diperlukan

an pemeriksaan dengan cara

ka perlu ilakukan penginstallan dengan cara

.2.1 WAP server yang digunakan adalah Apache web server.

e uatu WAP server bergantung oleh type M

lah dilakukan konfigurasi, kemudian dilakukan restart untuk enjalankannya dengan cara :

e ux sebagai alam

telah terinstall semua, maka perlu dilakuk # dpkg –l | grep apache2

# dpkg –l | grep MySQL # dpkg –l | grep phpmyadmin

Apabila paket-paket tersebut belum terinstall , mad # apt-get install (option ) 3 Konfigurasi http.conf

Servic yang dapat dilayani oleh sIME, yang dapat ditanganinya. Untuk WAP Server perlu

ditambahkan Aplication-Type untuk php pada file httpd.conf. ( /etc/apache/httpd.conf )

AddType text/vnd.wap.wml wml AddType text/vnd.wap.wmlscript wmls AddType application/vnd.wap.wmlc wmlc AddType application/vnd.wap.wmlscriptc wmlsc AddType image/vnd.wap.wbmp wbmp ---------------------------------------- rectoryIndex index.wml index.html index.htm dex.php

Diin

Setem

Command :

# /etc/init.d/apache restart

K mudian buatlah direktori web site di /var/www/linat website.

Page 50: 7203030021

38

3.2.2 Pembuatan Database Setelah semua paket komponen pada OS Linux telah terinstall

la lah merancang database yang akan ka

maka ngkah selanjutnya adadiguna n dengan asumsi bahwa instalasi database MySQL dan PHP telah terinstall dengan benar. Pada proyek akhir ini penulis menggunakan Apache2 (versi Linux Debian), MySQL dan PHP4 PHPMyadmin. Konfigurasi database MySQL diasumsikan menggunakan localhost dengan user root dan password siti. Jalankan http://localhost/phpmyadmin untuk membuat database baru atau dengan script seperti dibawah ini :

Create database siti;

Gambar 3.9 Membuat d abase maskapai dengan menggunakan phpmyadmin

Selanj ari

atabase maskapai. Pada p l yang harus di reate p

alamat, hp pelanggan yang telah terdaftar sebagai LINES. Pada tabel ini juga terdapat deposit atau

at

utnya penulis merancang dan membuat relasi tabel droyek akhir ini terdapat 9 tabed

c ada database maskapai, adapun penjelasan tabel-tabelnya dapat dilihat di bawah ini : 1. Tabel acc_reg

Tabel di bawah ini berisikan id_user, password yang terenkripsi a, dengan MD5, nam

member PENS AIR

Page 51: 7203030021

39

saldo pel

default '',

c_reg

anggan yang telah tersimpan di database PENS AIRLINES. CREATE TABLE `acc_reg` ( `id_user` varchar(20) NOT NULL default '', `password` varchar(60) NOT NULL default '', `nama` varchar(20) NOT NULL `alamat` varchar(60) NOT NULL default '', `hp` varchar(12) NOT NULL default '', `deposit` varchar(15) NOT NULL default”, PRIMARY KEY (`id_user`) ) TYPE=MyISAM;

Tabel 3.1 ac

2. Tabel tujuan Tabel di bawah ini berisi id tujuan, asal, tujuan, dan kap sitas.

Id_t uan ini digunakan sebagai identitas dari kota tujuan yang di pilih n asal keberangkatan dari Surabaya.

`asal` varchar(15) NOT NULL default '', fault '',

an

auj

oleh pelanggan denga

CREATE TABLE `tujuan` ( `id_tujuan` int(2) NOT NULL auto_increment,

`ke` varchar(15) NOT NULL de `kapasitas` int(4) NOT NULL default '0', PRIMARY KEY (`id_tujuan`) ) TYPE=MyISAM;

Tabel 3.2 tuju

Page 52: 7203030021

40

3. Tabel jadwal

Tabel ini berisi id jadwal, tanggal keberangkatan, jam keberangkatan, jam kedatangan dan flight number pesawat. Semua jadwal keberangkatan dan kedatangan pesawat terbang tersimpan dalam tabel jadwal.

CREATE TABLE `jadwal` ( `id_jdwl` int(3) NOT NULL auto_increment, `tgl_brgkt` date NOT NULL default '0000-00-00', `jam_brgkt` time NOT NULL default '00:00:00', `jam_tiba` time NOT NULL default '00:00:00', `fn` varchar(15) NOT NULL default '', PRIMARY KEY (`id_jdwl`) ) TYPE=MyISAM;

Tabel 3.3 jadwal

4. Tabel det_jdwl Tabel ini berisi id detail jadwal, id tujuan, id jadwal, dan rute

pesawat.. Tabel ini tehubung dengan tabel jadwal dan tujuan untuk mengetahui transit pesawat yang telah dipilih oleh pelanggan.

CREATE TABLE `det_jdwl` ( `id_djdwl` int(3) NOT NULL auto_increment, `id_tujuan` char(2) NOT NULL default '',

Page 53: 7203030021

41

`id_jdwl` char(3) NOT NULL default '', `rute_pswt` varchar(15) NOT NULL default '', PRIMARY KEY (`id_djdwl`) ) TYPE=MyISAM;

Tabel 3.4 det_jdwl

5. Tabel tiket Tabel ini berisi id tiket, id tujuan, jenis perjalanan (oneway atau

return), jenis tiket (executive atau economy), harga masing-masing tiket, dan tiket yang masih belum terjual. Tabel ini berhubungan dengan tabel tujuan yang digunakan untuk mengatahui harga tiket yang harus dibayar dengan tujuan tertentu.

CREATE TABLE `tiket` ( `id_tiket` int(5) NOT NULL auto_increment, `id_tujuan` char(2) NOT NULL default '', `jns_rute` varchar(15) NOT NULL default '', `jns_tiket` varchar(15) NOT NULL default '', `harga` varchar(15) NOT NULL default '0', `potongan` varchar(10) NOT NULL default '0', `sisa_tiket` int(3) NOT NULL default '0', PRIMARY KEY (`id_tiket`) ) TYPE=MyISAM;

Tabel 3.5 tiket

Page 54: 7203030021

42

6. Tabel psn_smtr Tabel ini menyimpan kode transaksi, jam pemesanan, tanggal

pemesanan, jumlah tiket pesawat yang telah dilakukan oleh pelanggan, serta harga total tiket yang harus dibayar.

CREATE TABLE `psn_smtr` ( `no` tinyint(5) NOT NULL auto_increment, `kd_psn` varchar(5) NOT NULL default '', `id_user` varchar(15) NOT NULL default '', `tgl_psn` date NOT NULL default '0000-00-00', `jam_psn` time NOT NULL default '00:00:00', `id_tiket` varchar(5) NOT NULL default '', `id_tujuan` char(2) NOT NULL default '', `jml_tiket` int(5) NOT NULL default '0', `harga_tot` varchar(15) NOT NULL default '', PRIMARY KEY (`no`) ) TYPE=MyISAM;

Tabel 3.6 psn_smtr

Page 55: 7203030021

43

7. Tabel pembayaran Tabel ini menyimpan hasil pembayaran yang dilakukan

pelanggan dengan mengurangi saldo pelanggan yang jumlah sesuai dengan banyaknya tiket yang telah dibeli.

CREATE TABLE `pembayaran` ( `kd_byr` int(5) NOT NULL auto_increment, `tgl_byr` date NOT NULL default '0000-00-00', `kd_psn` char(5) NOT NULL default '', `tot_byr` int(8) NOT NULL default '0', PRIMARY KEY (`kd_byr`) ) TYPE=MyISAM;

Tabel 3.7 pembayaran

8. Tabel psn_btl Tabel di bawah ini menyimpan proses pembatalan pemesanan

tiket pesawat sesuai dengan kode transaksi yang diperoleh dan jumlah tiket yang dibatalkan.

CREATE TABLE `psn_batal` ( `no` tinyint(5) NOT NULL auto_increment, `kd_psn` varchar(5) NOT NULL default '', `id_user` varchar(15) NOT NULL default '', `id_tiket` varchar(5) NOT NULL default '', `id_tujuan` char(2) NOT NULL default '', `jml_tiket_btl` int(5) NOT NULL default '0', `tgl_btl` date NOT NULL default '0000-00-00', PRIMARY KEY (`no`) ) TYPE=MyISAM;

Page 56: 7203030021

44

Tabel 3.8 psn_btl

9. Tabel admin Tabel di bawah ini berisi data admin bserta password yang

telah terencripsi. Tabel ini digunakan admin untuk jembatan proses delete, update, dan laporan penjualan tiket.

CREATE TABLE `admin` ( `admin` varchar(15) NOT NULL default '', `psswrd` varchar(15) NOT NULL default '', PRIMARY KEY (`admin`) ) TYPE=MyISAM;

Tabel 3.9 admin

Untuk dapat melakukan pengkoneksian antara database MySQL dengan PHP, maka pada PHP akan dituliskan syntax seperti berikut :

<?php localhostroot

siti$host","$user $password

maskapai"?>

$host=” ”; $user=” ”; $password=” ”; $conn = mysql_connect(" "," "); mysql_select_db(" ,$conn);

Keterangan : nama user dan password disesuaikan dengan settingan saat menginstall database MySQL dan untuk nama database tergantung pengguna..

Page 57: 7203030021

45

Untuk dapat masuk ke halaman pemesanan, pembatalan tiket

lewat WAP, maka perlu membatasi hak akses tentang pemesanan dan pembatalan tiket yang telah dibuat. Dalam hal ini yang dapat mengakses pemesanan dan pembatalan tiket adalah user yang telah menjadi anggota atau pelanggan. Sedangkan untuk mengakses halaman menu utama WAP tidak dibatasi hak aksesnya. Sehingga semua user dapat masuk. Header sangat diperlukan agar tiap halaman yang dibuat dapat ditampilkan pada mobile phone ataupun wap emulator. Berikut contoh header yang ada di WML (Wireless Markup Language). Dalam hal ini form dan script login hanya ada satu file dimana card di bentuk oleh pasangan yang di awali <card> dan diakhiri dengan </card>. Sebuah script WML dapat memuat beberapa card. Adapun contoh script WML yang mempunyai beberapa card adalah 3.2.3 Integrasi Sistem 3.2.3.1 Index.php

Langkah pertama untuk membuka halaman WAP adalah membuat script programming dengan nama file index.php yang disimpan di /var/www/linux/tugasakhir.

<?php header("Content-type: text/vnd.wap.wml"); echo "<?xml version=\"1.0\"?>"; echo "<!DOCTYPE wml PUBLIC \"-//WAPFORUM//DTD WML 1.1//EN\"" ."\"http://www.wapforum.org/DTD/wml_1.1.xml\">"; ?>

<wml> <card id=”card1”> <go href=”#card2”> </card>

�<card id=”#card2”> </card> </wml>

<card title="===PENS AIRLINES==="ontimer="splash.php" newcontext="true"> <timer value="20"/>

<p align="center"> <b><small>WELCOME</small></b><br/> ******************<br/> <b><small> .::E-Commerce Aplikasi::.<br/> Pemesanan Tiket Online Berbasis WAP </small></b><br/> ***************** </p>

Page 58: 7203030021

46

Dari script diatas ada satu tag card, jika file tersebut dijalankan di http://localhost/linux/tugasakhir/index.php maka index.php tersebut akan dijalankan pada deckit dengan timer 20 detik dan halaman ini akan dilanjutkan ke splash.php yang ditunjukkan dengan perintah ontimer=”splash.php”. Adapun srcipt untuk splash.php dapat dilihat dibawah ini.

Untuk script splash.php akan dijalankan dengan ontimer 5 detik dan halaman ini akan dilanjutkan ke halaman menu_utama.php. 3.2.3.2 Script Programming Pendaftaran User Baru

Pada proyek akhir ini, jika user ingin melakukan transaksi pemesanan tiket maka user harus menjadi anggota dari PENS AIRLINES. Untuk itu, jika user bukan sebagai anggota maka user tersebut harus melakukan pendaftaran terlebih dahulu. Pada halaman pendaftaran seorang user harus memasukkan id user, password, nama, alamat, nomor HP, dan deposito yang akan digunakan untuk transaksi pemesanan tiket. Semua kolom harus diberi inputan karena jika salah satu dari kolom tersebut kosong maka akan muncul pesan kesalahan pada layar mobile phone anda. Kesalahan yang lain akan terjadi apabila anda masukkan id user yang sama dengan id user yang telah terdaftar

<card id="index2" title=".::LOADING::." ontimer="menu_utama.php" newcontext="true"> <timer value="5"/> <p align="center"> <small> <br/> loading.....</small> </p> </card>

Page 59: 7203030021

47

atau tersimpan di database PENS AIRLINES. Berikut ini adalah script programming jika terjadi kesalahan pada masukkan :

Apabila program tersebut dijalankan pada wap emulator akan

tampak seperti dibawah ini :

$sql_cek="select * from acc_reg where id_user='$id_user'"; $qr_cek=mysql_query($sql_cek); $cek_ada=mysql_num_rows($qr_cek); if ($cek_ada >= 1) { echo "<br/><big><b>ERROR</b></big><br/>"; echo "User telah terdaftar<br/>"; echo "Anda dapat menggunakan id_user yang lain<br/>"; echo "[<a href=\"daftar.php?id_user=$id_user&amp;password='$password'&amp; nama=$nama&amp;alamat=$alamat&amp;hp=$hp&amp;deposit=$deposit\">Ulangi</a>]<br/>"; } else { if(($id_user=="") || ($password=="") || ($nama=="") || ($alamat=="") || ($hp=="") || ($deposit=="") ) { echo "<br/><b> ERROR </b><br/>"; echo "<br/>Data Anda kurang lengkap<br/>"; echo "<br/>[<a href=\"daftar.php\">Ulangi</a>]"; } }

Page 60: 7203030021

48

(a)halaman input (b)daftar sukses

(c)pesan error (d)pesan error

Gambar 3.10 Proses Pendaftaran User Baru

3.2.3.3 Login User

Pada saat pertama kali user mengakses layanan wap ini, user akan mendapatkan pilihan menu utama dari PENS AIRLINES. Kemudian jika user memilih option “Login”, maka user diminta memasukkan id user dan password dengan batasan 15 karakter. Masukkan id user dan password harus benar karena setelah user memasukkan id user dan password akan ada pengecekan apakah id user dan password sesuai dengan data yang ada di database. Jika masukkan salah maka akan muncul pesan error. Tampilan pesan error dapat terjadi jika id user salah atau jika id user dan password tidak diinputkan. Di bawah ini dalah contoh script programming jika login error :

if (($id_user=="") || ($password=="")) { echo "<br/><b> ERROR </b><br/>"; echo "<br/>username atau password belum dimasukkan<br/>"; echo "<br/>[<a href=\"login.wml\">Ulangi</a>]"; }

Page 61: 7203030021

49

Pada program ini dibuat id user tidak case sensitive, sedangkan

untuk password bersifat case sensitive karena passwordnya dienkripsi dengan MD5. Berikut ini adalah script program untuk mengenali id user dan password :

Untuk menampilkan program di atas maka digunakan wap emulator yaitu deckit, adapun tampilan dari program tersebut adalah

(a)halaman utama (b)menu login

(c)status login (d)login error

$hsl1=mysql_query("select password,nama,deposit,id_user from acc_reg where id_user='$id_user'",$conn); $hsl2=mysql_query("select md5('$password')",$conn); $row1=mysql_fetch_array($hsl1); $row2=mysql_fetch_array($hsl2); if ($row1[password]==$row2[0]) { echo “login berhasil”; }

Page 62: 7203030021

50

Gambar 3.11 Proses Login User

3.2.3.4 Pemesanan Tiket

Sebelum masuk ke halaman pemesanan tiket, user harus login terlebih dahulu. Jika login berhasil maka akan muncul beberapa menu pilihan. Apabila user memilih option pemesanan tiket maka kolom pilihan pemesanan yang berupa kota tujuan. Untuk proyek akhir kali ini keberangkatan pesawat default dari Surabaya. Kemudian user diberikan beberapa pilihan jam keberangkatan. Setiap kali user melakukan transaksi pemesanan tiket maka user akan memperolah kode transaksi atau kode pesan. Kode ini digunakan user untuk pengambilan tiket.

(a)menu pilihan (b) pilihan kota tujuan (c)pilihan jam berangkat (d)pilihan rute dan tiket (e)pilihan pesan tiket (f)pilihan jumlah tiket

Page 63: 7203030021

51

(g)halaman persetujuan (h)pemesanan oke

Gambar 3.12 Proses Pemesanan Tiket 3.2.3.5 Pembatalan Tiket

Proses pembatalan tiket dapat dilakukan jika waktu pembatalan belum melebihi batas jam keberangkatan pesawat. Pembatalan dlakukan dengan cara memasukkan kode pesan yang telah didapatkan saat transaksi pemesanan tiket. Jika user salah memasukkan kode pesan maka akan muncul pesan kesalahan. Adapun tampilan proses pembatalan tiket dapat dilihat di bawah ini :

(a)halaman input (b)pesan kesalahan kode

(c)pilihan pembatalan (d)proses berhasil

Gambar 3.13 Proses Pembatalan Tiket 3.2.3.6 Info Transaksi

Selain pembatalan tiket user juga dapat melihat transaksi yang telah dilakukan, akan tetapi info transaksi ini hanya dapat dilakukan setelah proses pemesanan tiket saja. Berikut ini adalah tampilan programnya pada deckit :

Page 64: 7203030021

52

(a)pilihan menu (b)halaman input

(c)hasil pencarian (d)pesan kesalahan kode

Gambar 3.14 Proses Info Transaksi 3.2.3.7 Info Umum

Info umum merupakan salah satu option pilihan menu utama, jika user memilih option ini maka user tidak perlu melakukan login terlebih dahulu, karena isi dari menu ini bisa dilihat oleh siapa saja termasuk user yang belum terdaftar maupun yang sudah terdaftar. Di dalam info umum ini ada 2 pilihan menu lagi yaitu informasi harga tiket atau informasi keberangkatan pesawat. Untuk lebih jelasnya dapat dilihat pada tampilan wap emulator (deckit) di bawah ini :

(a)menu utama (b)pilihan menu

Page 65: 7203030021

53

(c)input data pilihan (d)hasil pencarian

Gambar 3.15 Proses Informasi Harga Tiket

(a)pilihan menu (b)input kota tujuan

(c)pilihan jam berangkat (d)hasil pencarian

Gambar 3.16 Proses Informasi Keberangkatan pesawat

3.3 PROSES UPLOAD DATA KE SERVER Setelah semua program maupun database berhasil dibuat, maka lakukan upload program maupun database tersebut pada servernya eepis-its dengan alamat http://student.eepis-its.edu/phpmyadmin dan http://student.eepis-its.edu/~siti. Proses upload database mysql dan program wap maupun program web ke server dapat dilihat dibawah ini : a). Cara mengupload database mysql

1. Eksport database yang telah dibuat dari phpmyadmin simpan dengan nama database.doc

2. Buka alamat http://student.eepis-its.edu/phpmyadmin,

Page 66: 7203030021

54

kemudian masukkan id user dan password sesuai dengan account database yang telah tersedia di server.

3. Import file database.doc ke database siti, kemudian cek apakah semua tabel telah tersimpan di database tersebut.

b). Cara mengupload program wap ke server

1. Buka alamat \\server-auth pada explorer. 2. Masukkan user dan password student yang telah

terdaftar di server eepis. 3. Copy-kan folder wap dan web ke folder public_html. 4. Setelah semua berhasil di upload, maka lakukan akses

folder tersebut dengan alamat http://student.eepis-its.edu/~siti/wap/index.php untuk program wap pada handphone ataupun deckit yang telah dikonfigurasikan dengan proxy student. Sedangkan untuk program web dapat diakses melalui alamat http://student.eepis-its.edu/~siti/web pada web browser, misal opera, mozilla firefox ataupun internet explorer.

3.4 PROSES INSTALLASI DISTRIBUTED DATABASE Pembuatan replikasi ini dimaksudkan untuk membuat salinan atau back-up data asli. Proses replikasi pada proyek akhir ini dijalankan pada sistem operasi Linux Debian. Dan database yang digunakan adalah MySQL 4.0.24-10sergel. Sistem replikasi pada proyek akhir ini menggunakan dua buah PC sebagai Master Server dan Slave Server. Agar kedua PC tersebut dapat digunakan untuk sistem replikasi maka perlu adanya konfigurasi pada masing-masing PC. Adapun proses konfigurasinya dapat dilihat dibawah ini : 3.4.1 Konfigurasi Komputer Master

1. Edit file /etc/mysql/my.cnf , beri comment (#) pada bagian berikut dalam baris file yang ada di etc/mysql/my.cnf.

# Instead of skip-networking the default is now to listen only on # localhost which is more compatible and is not less secure. #bind-address = 127.0.0.1

2. Aktifkan baris berikut ini yang ada dalam file /etc/mysql/my.cnf. Server-id = 1 Log-bin = /var/log/mysql/mysql-bin.log

Page 67: 7203030021

55

Binlog-do-db = maskapai 3. Buka http://localhost/phpmyadmin, buat database dengan nama

latdb dan tabel dengan nama pens. Masukkan data pada tabel pens.

4. Restart service MySQL dengan perintah # /etc/init.d/mysql restart 5. Login sebagai root dan buatlah user yang memiliki replication

privilleges # mysql –u root –p Enter password :

Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 43 to server version: 4.0.24_Debian-10sarge2-log

Type 'help;' or '\h' for help. Type '\c' to clear the buffer. 6. Setelah masuk ke MySQL shell, masuk ke database mysql dan

ketikkan perintah berikut : mysql > use mysql; mysql > GRANT REPLICATION SLAVE ON *.* TO ‘slave_user ‘@’%’ IDENTIFIED BY ‘slveaje’; FLUSH PREVILLEGES; mysql > use labdb; mysql > FLUSH TABLES WITH READ LOCK; mysql > SHOW MASTER STATUS;

mysql > show processlist\G; ****************** 1. row *************************

Id: 62 User: slave_user Host: 10.252.101.180:32782 db: NULL

Command: Binlog Dump Time: 1704

+-----------------+-----------+------------------+----------------------+ | File | Position | Binlog_do_db | Binlog_ignore_db | +-----------------+-----------+------------------+----------------------+ | mysql-bin.193 | 483 | maskapai | | +-----------------+-----------+-------------------+---------------------+ 1 row in set (0.00 sec)

Page 68: 7203030021

56

State: Has sent all binlog to slave; waiting for binlog to be updated

Info: NULL ******************* 2. row ************************

Id: 112 User: root Host: localhost db: NULL

Command: Query Time: 0 State: NULL Info: show processlist

2 rows in set (0.00 sec)

3.4.2 Konfigurasi Komputer Slave 1. Buka http://localhost/phpmyadmin, buat database dengan nama

yang sama dengan nama database yang telah di buat di master yaitu maskapai dan nama tabelnya acc_reg.

2. Tambahkan baris berikut ke /etc/mysql/my.cnf. server-id = 2 master-host = '10.252.101.166' master-user = 'slave_user' master-password = 'slaveaje' master-connect-retry = 60 replicate-do-db = 'maskapai'

3. Restart servis MySQL dengan perintah # /etc/init.d/mysql restart

4. Login sebagai root dan buatlah user yang memiliki replication privilleges

# mysql –u root –p Enter password : 5. Setelah masuk ke MySQL shell, masuk ke database mysql dan

ketikkan perintah berikut : mysql > show slave status; ---------------------+---------------+-------------------- ---+------------------+-------------------+-----------------+------------------- --+------------+------------+--------------+---------------------+---------------+ | Master_Host | Master_User | Master_Port | Connect_retry | Master_Log_File | Read_Master_Log_Pos | Relay_Log_File | Relay_Log_Pos | Relay_Master_Log_Fi le |

Page 69: 7203030021

57

Slave_IO_Running | Slave_SQL_Running | Replicate_do_db | Replicate_ignore_d b | Last_errno | Last_error | Skip_counter | Exec_master_log_pos | Relay_log_spa ce | +----------------+-------------+-------------+---------------+-----------------+ ---------------------+---------------------+---------------+-------------------- ---+------------------+-------------------+-----------------+------------------- --+------------+------------+--------------+------+ | 10.252.101.166 | slave_user | 3306 | 60 | mysql-bin.193 | 483 | edhen-relay-bin.001 | 250 | mysql-bin.193 | Yes | Yes | latdb | | 0 | | 0 | 483 | 250 | +----------------+-------------+-------------+---------------+-----------------+ ---------------------+---------------------+---------------+-------------------- ---+------------------+-------------------+-----------------+------------------- --+------------+------------+--------------+------+ 1 row in set (0.01 sec)

mysql> show processlist\G; ******************** 1. row ************************

Id: 10 User: system user Host: db: NULL

Command: Connect Time: 1843 State: Waiting for master to send event Info: NULL

********************** 2. row ********************** Id: 11 User: system user Host: db: NULL

Command: Connect Time: 26177

State: Has read all relay log; waiting for the I/O slave thread to update it

Info: NULL ********************** 3. row **********************

Id: 43 User: root

Page 70: 7203030021

58

Host: localhost db: NULL

Command: Query Time: 0 State: NULL Info: show processlist

3 rows in set (0.00 sec)

**Halaman ini sengaja dikosongkan**

Page 71: 7203030021

BAB 4 PENGUJIAN DAN ANALISA

Pada bab ini akan dibahas mengenai pengujian sistem dan analisa perangkat lunak pelayanan dan pemesanan tiket maskapai penerbangan. 4.1 TUJUAN PENGUJIAN Pengujian merupakan salah satu langkah penting yang harus dilakukan untuk mengetahui apakah sistem yang dibuat telah sesuai dengan apa yang direncanakan, hal itu dapat dilihat dari hasil-hasil yang dicapai selama pengujian sistem. Selain untuk mengetahui apakah sistem sudah bekerja secara efektif sesuai dengan yang diharapkan. Pengujian juga bertujuan untuk mengetahui kelebihan dan kekurangan dari sistem yang dibuat. Hasil-hasil pengujian tersebut akan dianalisa mengapa terjadi kekurangan. 4.2 METODE PENGUJIAN Script WML, PHP dan database MySQL yang telah dibuat akan dikompilasi dan dijalankan pada handphone dan emulator sebagai pembanding. Dan pengujian lama akses untuk mengetahui lama akses pada alamat url http://student.eepis-its.edu/~siti/wap/index.php. 4.3 PENGUJIAN SISTEM Adapun langkah-langkah pengujian sistem tentang pelayanan dan pemesanan tiket adlah sebagai berikut :

1. Pastikan bahwa semua database maupun program yang telah dibuat sudah diupload di server student. Untuk proses upload dapat dilihat pada bab 3 (Proses Upload data ke Server).

2. Coba jalankan program tersebut dengan menggunakan WAP emulator deckit-1.2.4 ataupun langsung menggunakan handphone yang support dengan GPRS, untuk wap. Dan untuk admin/web dapat dijalankan dengan opera, firefox, maupun interner explorer.

3. Ketikkan alamat url : http://student.eepis-its.edu/~siti/wap pada handphone(sisi client) dan http://student.eepis-its.edu/~siti/web pada opera(sisi server), untuk melakukan uji coba atas program yang telah kita buat.

4. Pada saat mengetikkan URL tersebut, WAP emulator atau handphone akan melakukan request ke WAP server dan WAP server akan merespon, ketika terjadi error, maka

59

Page 72: 7203030021

60

periksalah program anda, karena di wml programing sangat sensitif dalam hal sintak. Sehingga gateway tidak bisa menerjemahkan dari program yang ditulis.

5. Setelah diperiksa maka lakukan refresh pada WAP emulator atau handphone. Ketika masuk pada url tersebut maka yang muncul pertama adalah halaman index.php, karena pada halaman ini merupakan default dari alamat www yang ada pada WAP server.

6. Ketika alamat url diatas dipanggil maka baik pada handphone maupun wap emulator akan mempunyai hasil yang sama. Akan tetapi saat alamat url tersebut dipanggil terkadang terjadi kegagalan dalam melakukan request ke WAP server karena koneksi GPRS mengalami kegagalan. Apabila itu terjadi maka lakukan pengecekan dan perbaikan pada program tersebut.

4.4 ANALISA HASIL Setelah dilakukan pengujian sistem maka dapat dilakukan analisa untuk mengetahui kelebihan dan kekurangan dari sistem yang telah dibuat. 4.4.1 Pengujian Akses Wap 4.4.1.1 Pengaksesan Dengan Menggunakan Satu User Untuk pengujian akses wap pada alamat url http://student.eepis-its.edu/~siti/wap selama 24 jam yang bertujuan untuk melihat lama akses saat pertama kali masuk alamat index.php dari handphone ke server. Pengujian akses wap pada satu user menggunakan handphone nokia tipe 6600 dan servis providernya menggunakan kartu IM3.

Tabel 4.1 Pengujian Lama Akses satu User

NoJam

Akses Lama Akses

(detik) 1 0:00 7.82 0:15 8.53 0:30 6.84 0:45 8.15 1:00 6.76 1:15 5.6

Page 73: 7203030021

61

7 1:30 5.48 1:45 6.39 2:00 7.9

10 2:15 5.611 2:30 5.812 2:45 6.413 3:00 6.114 3:15 8.715 3:30 7.916 3:45 6.817 4:00 6.818 4:15 7.319 4:30 5.820 4:45 6.121 5:00 8.922 5:15 5.523 5:30 6.724 5:45 4.725 6:00 4.226 6:15 4.227 6:30 5.428 6:45 5.129 7:00 3.930 7:15 11.631 7:30 15.232 7:45 13.333 8:00 9.734 8:15 5.635 8:30 5.636 8:45 16.837 9:00 18.338 9:15 13.439 9:30 14.740 9:45 7.441 10:00 8.4

Page 74: 7203030021

62

42 10:15 6.143 10:30 744 10:45 10.445 11:00 10.446 11:15 9.447 11:30 15.848 11:45 749 12:00 8.650 12:15 8.251 12:30 1552 12:45 10.253 13:00 1254 13:15 1155 13:30 8.356 13:45 9.157 14:00 7.458 14:15 10.459 14:30 23.960 14:45 9.161 15:00 8.862 15:15 10.763 15:30 12.464 15:45 16.765 16:00 8.866 16:15 9.367 16:30 11.368 16:45 11.169 17:00 14.970 17:15 5.271 17:30 9.972 17:45 8.973 18:00 9.674 18:15 7.875 18:30 10.876 18:45 7.2

Page 75: 7203030021

63

77 19:00 17.778 19:15 10.579 19:30 10.680 19:45 13.681 20:00 25.2682 20:15 13.883 20:30 11.984 20:45 9.685 21:00 17.286 21:15 1587 21:30 1388 21:45 27.689 22:00 34.690 22:15 11.191 22:30 17.592 22:45 19.893 23:00 9.994 23:15 12.895 23:30 8.996 23:45 6.997 24:00:00 6.5

0

5

10

15

20

25

30

35

Lama Akses (detik)

0:00 2:30 5:00 7:30 10:00 12:30 15:00 17:30 20:00 22:30

Jam Akses

Lama Akses Satu User

Lama Akses (detik)

Gambar 4.1 Grafik Lama Akses WAP Satu User Dari Gambar 4.1 maka dapat dianalisa bahwa pada jam 22:30 WIB membutuhkan waktu akses paling lama. Sedangkan untuk jam

Page 76: 7203030021

64

00:00 WIB – 07:30 WIB waktu aksesnya tidak terlalu lama. Pada gambar diatas dapat dilihat bahwa waktu akses pada malam hari lebih lama dibandingkan dengan siang hari. 4.4.1.2 Pengaksesan Dengan Menggunakan Dua User 4.4.1.2.a Pengujian Lama Akses pada User 1

Tabel 4.2 Pengujian Lama Akses User 1

0

5

10

15

20

25

30

35

40

Lama Akses (detik)

1 2 3 4 5 6 7 8 9 10

Pengaksesan ke-

Lama Akses User 1

00.00-06.0006.00-12.0012.00-18.0018.00-00.00

Gambar 4.2 Grafik Lama Akses WAP User 1

Dari gambar grafik 4.2 diatas dapat diketahui bahwa pada pengaksesan ke-4 untuk range waktu 18:00 WIB - 00:00 WIB merupakan waktu pengaksesan yang paling lama. Untuk user 1 pengaksesan wap menggunakan fasilitas GPRS yang ada pada handphone 6600 sedangkan simcard yang digunakan adalah IM3.

Page 77: 7203030021

65

4.4.2.1.b Pengujian Lama Akses pada User 2

Tabel 4.3 Pengujian Lama Akses User 2

0

5

10

15

20

25

30

Lama Akses (detik)

1 2 3 4 5 6 7 8 9 10

Pengaksesan ke-

Lama akses User 2

00.00-06.0006.00-12.0012.00-18.0018.00-00.00

Gambar 4.3 Grafik Lama Akses WAP User 2 Dari gambar grafik 4.3 dapat diamati bahwa waktu akses paling lama terjadi pada range waktu 18:00 WIB – 00:00 WIB untuk pengaksesan ke-3. Untuk user 2 pengaksesan wap menggunakan fasilitas GPRS yang ada pada handphone 7610 sedangkan simcardnya menggunakan IM3. Pengaksesan wap dari kedua data pada user 1 dan user 2 dilakukan pada saat yang bersamaan. Dan dilakukan selama 10 kali pengaksesan. Hasil data yang diperoleh digunakan untuk mengetahui lama akses yang terjadi jika alamat url http://student.eepis-its.edu/~siti/wap/index.php diakses secara bersamaan. Dari hasil data kedua user tersebut dapat diketahui bahwa pengaksesan wap user 1 lebih cepat daripada user 2. Dengan jenis handphone yang berbeda yaitu nokia 6600 untuk user 1 dan nokia 7610 untuk user 2, dan kedua user tersebut menggunakan service provider yang sama yaitu IM3.

Page 78: 7203030021

66

4.4.2 Pengecekan Id User dan Password Untuk pengecekan id user dan password telah dilakukan berbagai percobaan yang berbeda-beda untuk mengetahui kemungkinan-kemungkinan saat user melakukan login.

Tabel 4.4 Pengujian ID user dan Password

Database Keterangan No

ID user

Password IDuser Password Berhasil Gagal

1 siti siti v - 2 Siti siti v - 3 SITI siti v - 4 siti Siti - v 5 siti SITI - v 6 SITI siTi - v 7 siti (Kosong) - v 8 (koso

ng) siti - v

9 (Kosong)

(kosong)

siti siti

- v

Dari tabel 4.3 diatas telah dilakukan beberapa pengujian untuk menginputkan id user dan password user. Pada beberapa pengujian diatas dapat disimpulkan bahwa

1. Id user tidak mempunyai case sensitif, karena pada saat id user diinputkan menggunakan huruf kapital maupun huruf kecil semuanya bisa dibaca.

2. Seorang user harus memasukkan password sesuai data yang ada di database. Karena password tersebut menggunakan keamanan enkripsi MD5. Sehingga password bersifat case sensitive.

3. Login akan gagal jika salah satu dari id user atau password tidak diisi atau kosong. Proses ini akan terjadi lagi jika id user maupun password kosong atau tidak diisi.

4.4.3 Pengujian Pemesanan

Proses pemesanan tiket pesawat ini akan melalui proses validasi dengan variabel :

• Batas Waktu Pesan • Sisa Tiket • Harga Tiket

Page 79: 7203030021

67

• Jumlah tiket yang dipesan • Deposit

Untuk lebih jelasnya dapat dilihat pada tabel proses validasi pada kondisi yang mungkin muncul.

Tabel 4.5 Percobaan Pemesanan

Batas Waktu

pesan Sisa

Tiket* Deposit* Hasil Keterangan

Tidak lewat Ada Cukup Sukses - Tidak lewat Habis Cukup Gagal Tiket habis Tidak lewat Ada Kurang Gagal Deposit

kurang Lewat Ada Cukup Gagal Lewat batas

waktu Lewat Habis Cukup Gagal Lewat batas

waktu Lewat Ada Kurang Gagal Lewat batas

waktu *Keterangan : Sisa tiket yang ditampilkan harus sesuai dengan jumlah tiket yang ada pada data yang ada di database server. Sedangkan untuk deposit harus sesusai dengan total biaya pemesanan sesuai dengan tiket yang telah dipesan. Dari tabel 4.5 dapat dianalisa bahwa pertama kali saat user melakukan pemesanan maka dilihat waktu pemesanan tiket. Apakah sudah melebihi batas waktu pesan atau tidak. Setelah itu, server memeriksa data sisa tiket pesawat yang ada pada server. Jika deposit dari user kurang dari total biaya pemesanan maka proses gagal. Bila tiket sudah habis terjual maka proses juga akan gagal dilakukan. Untuk setiap kegagalan pemesanan akan diberikan keterangan mengenai kegagalan proses pemesanan, sehingga user dapat mengetahui apakah proses pemesanan yang dilakukan berhasil atau gagal. 4.4.4 Pengujian Distributed Database / Replikasi Database

Setelah konfigurasi disributed database telah berhasil dilakukan. Maka dilakukan uji coba dengan proses seperti dibawah ini : 4.4.4.1 Pengujian Tambah Data

Pada komputer Master. Tambahkan beberapa data pada tabel

Page 80: 7203030021

68

acc_reg yang ada di database maskapai dengan menggunakan PHPMyadmin. Atau dapat juga diketikkan pada MySQl konsole perintah di bawah ini :

mysql > Insert into acc_reg > values (‘taufan’,md5(‘taufan’),’taufan hidayat’,’keputih 1’,’081331568496’,’12000000’);

Jika insert data pada komputer Master berhasil dilakukan, maka dilakukan perintah select di PHPMyadmin ataupun MySQL konsole, di komputer Master dan komputer Slave untuk melihat apakah isi tabel acc_reg sudah sama isinya dengan perintah seperti dibawah ini :

Select * from acc_reg; Setelah dilakukan pengujian seperti di atas maka dihasilkan

data seperti di bawah ini :

Gambar 4.4 Hasil Insert tabel acc_reg

Dari gambar 4.4 dapat dianalisa bahwa jika master melakukan proses inputan data pada table acc_reg maka secara otomatis data tabel acc_reg pada slave juga akan berubah sama seperti tabel acc_reg pada master.

4.4.4.2 Pengujian Update data

Pada komputer Master server. Mengupdate data pada database maskapai dengan menggunakan PHPMyadmin ataupun MySQL konsole. Adapun perintah untuk update tabelnya adalah sebagai berikut :

Page 81: 7203030021

69

mysql > update acc_reg set deposit=’125000000’ > where id_user=’siti’; Jika update data telah berhasil dilakukan maka lakukan perintah

di bawah ini untuk memastikan bahwa data tabel acc_reg telah berhasil diupdate.

mysql > select * from acc_reg; Jika perintah di atas dijalankan maka akan menampilkan isi

tabel acc_reg yang ada pada database maskapai. Untuk lebih jelasnya dapat dilihat seperti di bawah ini :

Gambar 4.5 Hasil update data pada tabel acc_reg

Dari gambar 4.5 di atas dapat dianalisa bahwa jika komputer master melakukan proses update data pada tabel maskapai maka secara otomatis akan terjadi update data pada komputer slave. 4.4.4.3 Pengujian delete data

Pada komputer Master server. Mendelete data pada database maskapai dengan menggunakan PHPMyadmin ataupun MySQL konsole. Adapun perintah untuk update tabelnya adalah sebagai berikut :

mysql > delete from acc_reg > where id_user=’nanik’; Jika update data telah berhasil dilakukan maka lakukan perintah

di bawah ini untuk memastikan bahwa data tabel acc_reg telah berhasil

Page 82: 7203030021

70

didelete. mysql > select * from acc_reg;

Jika perintah di atas dijalankan maka akan menampilkan isi tabel acc_reg yang ada pada database maskapai. Untuk lebih jelasnya dapat dilihat seperti di bawah ini :

Gambar 4.6 Hasil delete data pada tabel acc_reg Dari gambar 4.6 di atas dapat dianalisa bahwa jika komputer master melakukan proses delete data pada tabel acc_reg maka secara otomatis akan terjadi proses delete data pada komputer slave.

Page 83: 7203030021

BAB 5 PENUTUP

5.1 KESIMPULAN

Dari hasil analisa, maka dapat diambil kesimpulan bahwa 1. Authentifikasi password harus sesuai dengan

database. Dimana proses authentifikasi password dibuat case sensitive. Dan menggunakan encripsi MD5.

2. Proses pemesanan tiket akan melalui proses validasi dengan variabel :

• Deposit Dimana deposit user tidak kurang dari total biaya pemesanan yang berasal dari jumlah pemesanan tiket pesawat.

• Sisa Tiket Dimana sisa tiket yang tersedia masih mencukupi untuk dipesan.

• Jumlah Tiket yang di pesan • Harga tiket

3. Pemesanan tiket hanya dapat dilakukan pada hari yang sama.

4. Jika proses pemesanan tiket pesawat berhasil dilakukan maka deposit pelanggan akan berkurang. Dan user tersebut akan memperolah kode transaksi atau kode pesan yang digunakan saat pengambilan tiket.

5. Akses ke server wap, waktu akses paling lama terjadi pada malam hari antara pukul 21.00-22.45 WIB. Sedangkan untuk pukul 00.00-07.15 WIB waktu aksesnya tidak terlalu lama.

6. Pada distributed atau replication database, Jika Komputer Master Server datanya berubah maka data pada komputer Slave Server juga berubah.

71

Page 84: 7203030021

72

5.2 SARAN Proyek Akhir yang dibuat masih memiliki beberapa

kekurangan. Adapun kekurangan yang harus diperbaiki dimasa mendatang yaitu aplikasi pemesanan dapat dilakukan pada hari sebelum keberangkatan pesawat.

Page 85: 7203030021

DAFTAR PUSTAKA

[1] Hariyanto Bambang, Ir, MT. “ Sistem Manajemen Basisdata”,

Informatika, Bandung, 2004.

[2] Yahya Kurniawan, ST, ”Aplikasi Web Database dengan PHP

dan MySQL”, PT. Elex Media Komputindo, Jakarta, 2002.

[3] http://www.sony-ak.com/articles/4/php_md5_function.php

[4] http://www.ilmukomputer.com/berseri/ivan-php/php-mudah-

01.php

[5] Riza Taufan dan Onno W. Purbo, Manajemen Jaringan TCP/IP

[6] Ben Forta with Keith Lauver, WAP Development with WML and WML Script, SAMS, www.samspublishing.com

[7] http://www.infolinux.com.

[8] Ardyansyah dan Akhmadi, “AplikasiPemrograman WAP”, PT. Elek Media Komputindo, Jakarta, 2003.

[9] www.garuda-indonesia.com

73

Page 86: 7203030021

74

**Halaman ini sengaja dikosongkan**

Page 87: 7203030021

LAMPIRAN 1

Listing Program PHP • Koneksi (koneksi.php)

<?php $conn=mysql_connect("localhost","siti","siti") or die ("tidak terhubung dengan database"); mysql_select_db("siti",$conn); ?>

• Login User (ceklogin.php) <? header("Content-Type: text/vnd.wap.wml"); echo "<?xml version=\"1.0\"?>"; echo "<!DOCTYPE wml PUBLIC \"-//WAPFORUM//DTD WML 1.1//EN\" \"http://www.wapforum.org/DTD/wml_1.1.xml\">"; ?> <wml> <card title="KONFIRMASI" newcontext="true"> <p align="center"> <small> <? $id_user=$_POST["id_user"]; $password=$_POST["password"]; if (($id_user=='')||($password=='')) { echo "Password/Username Anda kosong<br/>"; echo "[<a href=\"login.wml\">kembali</a>]<br/>"; } else { include "koneksi.php"; $hsl1=mysql_query("select password,nama,deposit,id_user from acc_reg where id_user='$id_user'",$conn); $hsl2=mysql_query("select md5('$password')",$conn); $row1=mysql_fetch_array($hsl1); $row2=mysql_fetch_array($hsl2); if ($row1[password]==$row2[0])

75

Page 88: 7203030021

76

{ //apabila berhasil login echo "<br/><b>SELAMAT DATANG</b><br/> Sistem Pemesanan Tiket Pesawat Online<br/>"; echo "== $row1[nama] ==<br/>"; echo "Saldo : Rp. $row1[deposit]<br/>"; $date=date("d-m-Y"); $now=getdate(); $jam=date('H:i:s'); echo "Anda Login ke WAP server PENS-AIRLINES Online<br/>"; echo "Pukul : $jam<br/>"; echo "Tanggal : $date<br/>"; echo "===================<br/>"; echo "[<a href=\"psn.php?id_user=$row1[id_user]\">Pemesanan</a>]<br/>"; echo "[<a href=\"batal.php?id_user=$row1[id_user]\">Pembatalan</a>]<br/>"; echo "[<a href=\"help.php?id_user=$row1[id_user]\">Bantuan</a>]<br/>"; echo "[<a href=\"logout.php\">logout</a>]"; } else { //apabila gagal echo "<b>Login admin/Password Anda Salah!! Silahkan login kembali</b><br/>"; echo "[<a href=\"login.php\">ulangi</a>]"; }

• Simpan Daftar (sim_daftar.php) <? header("Content-Type: text/vnd.wap.wml"); echo "<?xml version=\"1.0\"?>"; echo "<!DOCTYPE wml PUBLIC \"-//WAPFORUM//DTD WML 1.1//EN\" \"http://www.wapforum.org/DTD/wml_1.1.xml\">"; ?>

Page 89: 7203030021

77

<wml> <card id="simpan" title="::Konfirmasi::" newcontext="true"> <p align="left"> <small> <? $id_user=$_POST["id_user"]; $password=$_POST["password"]; $nama=$_POST["nama"]; $alamat=$_POST["alamat"]; $hp=$_POST["hp"]; $deposit=$_POST["deposit"]; //connect db include "koneksi.php"; $sql_cek="select * from acc_reg where id_user='$id_user'"; $qr_cek=mysql_query($sql_cek); $cek_ada=mysql_num_rows($qr_cek); if ($cek_ada >= 1) { echo "<br/><big><b>ERROR</b></big><br/>"; echo "User telah terdaftar<br/>"; echo "Anda dapat menggunakan id_user yang lain<br/>"; echo "[<a href=\"daftar.php?id_user=$id_user&amp;password='$password'&amp; nama=$nama&amp;alamat=$alamat&amp;hp=$hp&amp;deposit=$deposit\">Ulangi</a>]<br/>"; } else { if(($id_user=="") || ($password=="") || ($nama=="") || ($alamat=="") || ($hp=="") || ($deposit=="") ) { echo "<br/><b> ERROR </b><br/>"; echo "<br/>Data Anda kurang lengkap<br/>"; echo "<br/>[<a href=\"daftar.php\">Ulangi</a>]"; } else {

Page 90: 7203030021

78

echo "<br/><b>Welcome!! join with us</b><br/>"; echo "<b>=$nama=</b><br/>"; echo "<small>Sekarang Anda dapat melakukan Transaksi Pemesanan dan Pembatalan Tiket</small><br/>"; echo "[<a href=\"menu_utama.php\">Kembali</a>]<br/>"; echo "[<a href=\"login.php\">Login</a>]<br/>"; echo "[<a href=\"logout.php\">logout</a>]<br/>"; //simpan data masukan $query="insert into acc_reg (id_user,password,nama,alamat,hp,deposit) values ('$id_user',md5('$password'),'$nama','$alamat','$hp','$deposit')"; $hasil=mysql_query($query,$conn); } } ?> </small> </p> </card> </wml>

Page 91: 7203030021

LAMPIRAN 2 File : /etc/mysql/my.cnf pada komputer MASTER # # The MySQL database server configuration file. # # You can copy this to one of: # - "/etc/mysql/my.cnf" to set global options, # - "/var/lib/mysql/my.cnf" to set server-specific options or # - "~/.my.cnf" to set user-specific options. # # One can use all long options that the program supports. # Run program with --help to get a list of available options and with # --print-defaults to see which it would actually understand and use. # # For explanations see # http://dev.mysql.com/doc/mysql/en/server-system-variables.html # This will be passed to all mysql clients # It has been reported that passwords should be enclosed with ticks/quotes # escpecially if they contain "#" chars... # Remember to edit /etc/mysql/debian.cnf when changing the socket location. [client] port = 3306 socket = /var/run/mysqld/mysqld.sock # Here is entries for some specific programs # The following values assume you have at least 32M ram # This was formally known as [safe_mysqld]. Both versions are currently parsed. [mysqld_safe] socket = /var/run/mysqld/mysqld.sock nice = 0 [mysqld] #

79

Page 92: 7203030021

80

# * Basic Settings # user = mysql pid-file = /var/run/mysqld/mysqld.pid socket = /var/run/mysqld/mysqld.sock port = 3306 basedir = /usr datadir = /var/lib/mysql tmpdir = /tmp language = /usr/share/mysql/english skip-external-locking # # Instead of skip-networking the default is now to listen only on # localhost which is more compatible and is not less secure. #bind-address = 127.0.0.1 # # * Fine Tuning # key_buffer = 16M max_allowed_packet = 16M thread_stack = 128K # # * Query Cache Configuration # query_cache_limit = 1048576 query_cache_size = 16777216 query_cache_type = 1 # # * Logging and Replication # # Both location gets rotated by the cronjob. # Be aware that this log type is a performance killer. #log = /var/log/mysql.log #log = /var/log/mysql/mysql.log # # Error logging goes to syslog. This is a Debian improvement :) # # Here you can see queries with especially long duration #log-slow-queries = /var/log/mysql/mysql-slow.log #

Page 93: 7203030021

81

# The following can be used as easy to replay backup logs or for replication. server-id = 1 log-bin = /var/log/mysql/mysql-bin.log # See /etc/mysql/debian-log-rotate.conf for the number of files kept. max_binlog_size = 104857600 binlog-do-db = maskapai #binlog-do-db = include_database_name #binlog-ignore-db = include_database_name # # * BerkeleyDB # # The use of BerkeleyDB is now discouraged and support for it will probably # cease in the next versions. skip-bdb # # * InnoDB # # InnoDB is enabled by default with a 10MB datafile in /var/lib/mysql/. # Read the manual for more InnoDB related options. There are many! # # * Security Feature # # Read the manual, too, if you want chroot! # chroot = /var/lib/mysql/ # # If you want to enable SSL support (recommended) read the manual or my # HOWTO in /usr/share/doc/mysql-server/SSL-MINI-HOWTO.txt.gz # ssl-ca=/etc/mysql/cacert.pem # ssl-cert=/etc/mysql/server-cert.pem # ssl-key=/etc/mysql/server-key.pem [mysqldump] quick quote-names max_allowed_packet = 16M [mysql]

Page 94: 7203030021

82

#no-auto-rehash # faster start of mysql but no tab completition [isamchk] key_buffer = 16M

Page 95: 7203030021

LAMPIRAN 3 Setting file : /etc/mysql/my.cnf pada komputer SLAVE # # The MySQL database server configuration file. # # You can copy this to one of: # - "/etc/mysql/my.cnf" to set global options, # - "/var/lib/mysql/my.cnf" to set server-specific options or # - "~/.my.cnf" to set user-specific options. # # One can use all long options that the program supports. # Run program with --help to get a list of available options and with # --print-defaults to see which it would actually understand and use. # # For explanations see # http://dev.mysql.com/doc/mysql/en/server-system-variables.html # This will be passed to all mysql clients # It has been reported that passwords should be enclosed with ticks/quotes # escpecially if they contain "#" chars... # Remember to edit /etc/mysql/debian.cnf when changing the socket location. [client] port = 3306 socket = /var/run/mysqld/mysqld.sock # Here is entries for some specific programs # The following values assume you have at least 32M ram # This was formally known as [safe_mysqld]. Both versions are currently parsed. [mysqld_safe] socket = /var/run/mysqld/mysqld.sock nice = 0 [mysqld] #

83

Page 96: 7203030021

84

# * Basic Settings # user = mysql pid-file = /var/run/mysqld/mysqld.pid socket = /var/run/mysqld/mysqld.sock port = 3306 basedir = /usr datadir = /var/lib/mysql tmpdir = /tmp language = /usr/share/mysql/english skip-external-locking # # Instead of skip-networking the default is now to listen only on # localhost which is more compatible and is not less secure. bind-address = 127.0.0.1 #bind-address = 10.252.101.180 # # * Fine Tuning # key_buffer = 16M max_allowed_packet = 16M thread_stack = 128K # # * Query Cache Configuration # query_cache_limit = 1048576 query_cache_size = 16777216 query_cache_type = 1 # # * Logging and Replication # # Both location gets rotated by the cronjob. # Be aware that this log type is a performance killer. log = /var/log/mysql.log log = /var/log/mysql/mysql.log # # Error logging goes to syslog. This is a Debian improvement :) # # Here you can see queries with especially long duration #log-slow-queries = /var/log/mysql/mysql-slow.log

Page 97: 7203030021

85

# # The following can be used as easy to replay backup logs or for replication. server-id = 2 master-host = '10.252.101.166' master-user = 'slave_user' master-password = 'slaveaje' master-connect-retry = 60 replicate-do-db = 'maskapai' #master-log-file = 'mysql-bin.188' #master-log-pos = 221 log-bin = /var/log/mysql/mysql-bin.log # See /etc/mysql/debian-log-rotate.conf for the number of files kept. max_binlog_size = 104857600 #binlog-do-db = include_database_name #binlog-ignore-db = include_database_name # # * BerkeleyDB # # The use of BerkeleyDB is now discouraged and support for it will probably # cease in the next versions. skip-bdb # # * InnoDB # # InnoDB is enabled by default with a 10MB datafile in /var/lib/mysql/. # Read the manual for more InnoDB related options. There are many! # # * Security Feature # # Read the manual, too, if you want chroot! # chroot = /var/lib/mysql/ # # If you want to enable SSL support (recommended) read the manual or my # HOWTO in /usr/share/doc/mysql-server/SSL-MINI-HOWTO.txt.gz # ssl-ca=/etc/mysql/cacert.pem # ssl-cert=/etc/mysql/server-cert.pem # ssl-key=/etc/mysql/server-key.pem

Page 98: 7203030021

86

[mysqldump] quick quote-names max_allowed_packet = 16M [mysql] #no-auto-rehash # faster start of mysql but no tab completition [isamchk] key_buffer = 16M

Page 99: 7203030021

RIWAYAT HIDUP

Siti Mubarokah Lahir di Kediri, 16 Oktober 1985 Anak ke empat dari ibunda Arofah dan Ayahanda Suyono. Sekarang masih bertempat tinggal di Jl. Tanjung RT/RW 01/1 Wonorejo Ngadiluwih Kediri. Contact person : [email protected] 081 335 611 770

Daftar Riwayat Pendidikan :

1. Politeknik Elektronika Negeri Surabaya – ITS 2003 - 2006 2. SMU Negeri 4 Kediri 2000 – 2003 3. SLTP Negeri 2 Ngadiluwih 1997 – 2000 4. MI Roudlatut Tholabah 1991 – 1997

“Sabar memiliki dua sisi, sisi yang satu adalah sabar, sisi yang lain

adalah bersyukur kepada Allah.” Ibnu Mas'ud

“Ilmu pengetahuan tanpa agama adalah pincang.”

Einstein

87