189
Diktat Mata Kuliah Aplikasi Teknologi Online i DAFTAR ISI DAFTAR ISI ....................................................................................................................................... i BAB I PENDAHULUAN .................................................................................................................. 1 Latar Belakang ............................................................................................................................. 1 Contoh Kasus............................................................................................................................... 1 Cara Kerja PHP ........................................................................................................................... 3 BAB II MEMULAI PHP..................................................................................................................... 4 Persyaratan.................................................................................................................................. 4 Program Pertama......................................................................................................................... 6 Mengirim Nilai Ke Variable........................................................................................................... 8 Latihan ....................................................................................................................................... 12 Validasi Data .............................................................................................................................. 23 Tugas ......................................................................................................................................... 31 BAB III ARRAY ............................................................................................................................. 32 Deskripsi .................................................................................................................................... 32 Membuat Array........................................................................................................................... 33 Array Biasa ............................................................................................................................. 33 Associative Array.................................................................................................................... 33 Menambah Elemen Array .......................................................................................................... 34 Mengakses Elemen Array .......................................................................................................... 34 Mengakses array biasa .......................................................................................................... 34 Mengakses associative array ................................................................................................. 35 Pengurutan Array ....................................................................................................................... 35 Pengurutan Array Biasa ......................................................................................................... 35 Pengurutan Array Biasa ......................................................................................................... 36 Contoh-Contoh........................................................................................................................... 37 BAB IV WEB DINAMIS BERBASIS DATABASE .......................................................................... 42 Deskripsi .................................................................................................................................... 42 View Data Dari Database........................................................................................................... 43 Menambah Data Melalui Web.................................................................................................... 47 Pencarian Data .......................................................................................................................... 54 Penghapusan Data .................................................................................................................... 58

Modul Aplikasi Teknologi Online 2007

Embed Size (px)

Citation preview

Page 1: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

i

DAFTAR ISI

DAFTAR ISI .......................................................................................................................................i BAB I PENDAHULUAN .................................................................................................................. 1

Latar Belakang............................................................................................................................. 1 Contoh Kasus............................................................................................................................... 1 Cara Kerja PHP ........................................................................................................................... 3

BAB II MEMULAI PHP..................................................................................................................... 4 Persyaratan.................................................................................................................................. 4 Program Pertama......................................................................................................................... 6 Mengirim Nilai Ke Variable........................................................................................................... 8 Latihan ....................................................................................................................................... 12 Validasi Data.............................................................................................................................. 23 Tugas ......................................................................................................................................... 31

BAB III ARRAY ............................................................................................................................. 32 Deskripsi .................................................................................................................................... 32 Membuat Array........................................................................................................................... 33

Array Biasa............................................................................................................................. 33 Associative Array.................................................................................................................... 33

Menambah Elemen Array .......................................................................................................... 34 Mengakses Elemen Array.......................................................................................................... 34

Mengakses array biasa .......................................................................................................... 34 Mengakses associative array ................................................................................................. 35

Pengurutan Array....................................................................................................................... 35 Pengurutan Array Biasa ......................................................................................................... 35 Pengurutan Array Biasa ......................................................................................................... 36

Contoh-Contoh........................................................................................................................... 37 BAB IV WEB DINAMIS BERBASIS DATABASE .......................................................................... 42

Deskripsi .................................................................................................................................... 42 View Data Dari Database........................................................................................................... 43 Menambah Data Melalui Web.................................................................................................... 47 Pencarian Data .......................................................................................................................... 54 Penghapusan Data .................................................................................................................... 58

Page 2: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

ii

Pengeditan Data ........................................................................................................................ 63 BAB V FORM DAN URL (Uniform Resource Locator) ................................................................. 74

Deskripsi .................................................................................................................................... 74 Form Dan URL........................................................................................................................... 75 Contoh Penggunaan URL Sebagai Pengganti Form................................................................ 76

Membuat link pengeditan dan penghapusan ......................................................................... 76 Menampilkan data per halaman............................................................................................. 80

BAB VI SESSION DAN APLIKASINYA......................................................................................... 86 Deskripsi .................................................................................................................................... 86 Pembuatan Session................................................................................................................... 87 Penggunaan Session................................................................................................................. 88 Penghapusan Session ............................................................................................................... 89 Contoh Aplikasi Session ............................................................................................................ 90

BAB VII PENGENALAN WAP ..................................................................................................... 100 Deskripsi .................................................................................................................................. 100 Browser Micro WAP................................................................................................................. 100 WML (Wireless Mark-up Language) ........................................................................................ 102 WMLScript................................................................................................................................ 102 Contoh Penggunaan WAP....................................................................................................... 102 Persiapan Membuat Situs WAP............................................................................................... 103 Instalasi M3Gate dan UP. Simulator........................................................................................ 103 Menjalankan M3Gate............................................................................................................... 104 Dasar-Dasar WAP ................................................................................................................... 106

Homepage WAP................................................................................................................... 106 Tag-Tag WML....................................................................................................................... 106 Deck dan Card WML............................................................................................................ 106 Menjalankan/Test dokumen WML........................................................................................ 109

Tag-Tag Pengaturan WML ...................................................................................................... 110 Pengaturan Paragraf dan Pindah Baris ............................................................................... 110 Pengaturan Teks .................................................................................................................. 111 Pengaturan Tabel................................................................................................................. 112

Tag-Tag Link............................................................................................................................ 113 Tag <a> ................................................................................................................................ 113 Tag <anchor> ....................................................................................................................... 114

Tag Gambar............................................................................................................................. 115 Tag Gambar <img> .............................................................................................................. 115

Page 3: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

iii

Timer WML............................................................................................................................... 116 Tag Timer ............................................................................................................................. 116

BAB VIII UPLOAD DATA KE SERVER....................................................................................... 118 Upload Data Ke Server Mahasiswa Unikom............................................................................ 118 Upload Data Ke Server Di Internet .......................................................................................... 132

Pengaturan Web Hosting ..................................................................................................... 132 Pengaturan Database .......................................................................................................... 140

LAMPIRAN 1 PENGENALAN HTML........................................................................................... 144 LAMPIRAN 2 PENGENALAN PHP ............................................................................................. 160

Page 4: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 1

BAB I PENDAHULUAN

LATAR BELAKANG World Wide Web (WWW) telah berubah dengan cepat dalam berbagai cara. Bahasa standar

yang dipakai dalam WWW adalah bahasa HTML (Hyper Text Markup Language). Dengan

adanya teknologi ini, kita dapat melihat dokumen yang kadang-kadang berada di bagian lain di

dunia ini dengan hanya sebuah program sederhana dan kita akan banyak mendapatkan

informasi yang dengan cepat dapat kita terima sesuai dengan yang kita perlukan.

Sekarang kita mengharapkan lebih dari internet. Kita mengharapkan sebuah situs web yang

berisi dengan informasi yang banyak dan dalam tampilan yang menarik serta kita dapat mencari

dokumen yang diperlukan dengan mudah. Untuk untuk mencapai hal tersebut kita memerlukan

suatu situs web yang dinamis. Karena jika hanya mengandalkan situs web yang statis maka akan

memerlukan pemeliharaan yang susah, sebagai contoh jika sebuah perusahaan ingin membuat

suatu situs web yang berisi promosi produk sebanyak 1000 jenis produk maka dalam situs

tersebut minimal kita harus membuat 1000 web statis yang berbeda (itu pasti merepotkan).

Dengan memanfaatkan teknologi situs dinamis maka dalam situs tersebut hanya memerlukan

halaman web yang lebih sedikit karena data produk disimpan dalam database.

Sebuah situs web yang modern sekarang bukan hanya sebuah web server, juga harus dapat

menyertakan suatu jalan untuk menyimpan data dan melayani permintaan (seperti SQL query).

CONTOH KASUS UNIKOM memiliki situs http://nilaionline.unikom.ac.id. Dalam situs tersebut seorang mahasiswa

dapat melihat nilai yang didapatnya di semester sekarang. Seorang mahasiswa hanya perlu

mengisikan NIM di form yang telah disediakan kemudian klik tombol pencarian nilai yang akan

menampilkan data nilai mahasiswa tersebut. Data yang tersedia di situs tersebut akan selalu

berubah tiap semesternya, oleh karena itu merupakan hal yang merepotkan jika kita membuat

halaman web sebanyak banyak mahasiswa yang terdaftar (1 halaman web berisi nilai seorang

Page 5: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 2

mahasiswa). Oleh karena itu data nilai mahasiswa di simpan dalam server database yang akan

diupdate setelah nilai dihitung.

Akan tetapi jika kita menggunakan halaman web yang menggunakan HTML saja, akan sulit jika

kita ingin mengakses suatu database, sehingga kita memerlukan suatu script yang dapat

mengakses suatu database (dimana kita menyimpan data), tetapi harus dapat menghasilkan

sebuah halaman HTML (karena kita memanfaatkan web).

Karena alasan diataslah PHP diciptakan. PHP memiliki fungsi-fungsi yang banyak yang dapat

mengakses database.

Page 6: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 3

CARA KERJA PHP Adapun cara kerja PHP adalah :

Data General

PHPInterpreter

Web Server

Database Server

1

2

3

4

5

Client

Display

Gambar 1. Alur kerja PHP

Proses-proses yang terjadi adalah :

1. Client me-request halaman web yang berisi script PHP.

2. Jika file yang di-request ditemukan, maka server akan meneruskannya ke PHP Interpreter

(Penterjemah PHP) yang akan bekerja menghasilkan dokumen/halaman HTML berdasarkan

script PHP. Jika dalam script tersebut terdapat permintaan terhadap database, maka akan

terjadi proses query data ke database server.

3. Dokumen HTML hasil interpretasi oleh PHP Interpreter dikembalikan ke web server

4. Web Server mengirim dokumen HTML (Response) ke Client

5. Web Browser akan menterjemahkan dokumen HTML ke Display/Monitor.

Dari gambar di atas, dapat diambil kesimpulan bahwa untuk membangun sebuah situs yang

dinamis dan interaktif, maka ada beberapa hal yang diperlukan yaitu Web Server, Database

Server dan sebuah Script Interpreter (dalam hal ini PHP Interpreter).

Page 7: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 4

BAB II MEMULAI PHP

PERSYARATAN Seperti yang diterangkan di bab sebelumnya, jika ingin membangun sebuah situs dinamis maka

ada 3 hal yang diperlukan yaitu Web Server, Database Server dan PHP Interpreter.

Web Server yang dapat digunakan diantaranya adalah Apache, Internet Information Services

(IIS), Personal Web Server (PWS) dan lain-lain.

Databas Server yang dapat digunakan diantaranya adalah MySQL, Oracle, Interbase, Informix,

SQL Server, PostgreSQL dan lain-lain.

Setiap aplikasi tersebut dapat diinstall secara terpisah. Akan tetapi ada sebuah paket yang

didalamnya sudah menyatukan ketiga aplikasi tersebut yaitu PHPTriad (Dapat ditemukan di CD

Penunjang Perkuliahan).

Oleh karena itu dalam komputer yang dimiliki harus terinstall minimal PHPTriad.

Untuk membuat suatu file PHP, program yang diperlukan adalah sebuah editor teks seperti

Notepad, Ultra Edit, PHP Coder, PHP Editor atau Macromedia Dreamweaver.

Sekarang diasumsikan bahwa anda menggunakan PHPTriad. Untuk memulai pembuatan situs

dinamis berbasis PHP, ada beberapa hal yang harus dikerjakan yaitu :

1. Web server harus dalam keadaan aktif caranya dengan mengklik Start Programs PHPTriad Apache Console Start Apache.

2. Untuk mengetes apakah web server sedang aktif, maka buka sebuah browser (Internet

Explorer, Opera atau FireFox) kemudian ketik di toolbar address alamat berikut :

http://localhost yang akan menampilkan halaman seperti di bawah ini.

Page 8: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 5

3. Web site yang muncul di web browser sebenarnya berada di folder C:\apache\htdocs.

Sehingga jika anda membuat file php dan ingin dapat dieksekusi, maka harus disimpan di

folder tersebut. Anda dapat memindahkan folder web ke lokasi lain dengan syarat mengatur

konfigurasi apache (yang ada pada file httpd.conf). 4. Untuk menjalankan suatu file php yang ada dalam c:\apache\htdocs adalah dengan menulis

alamat file tersebut seperti http://localhost/namafile.php.

Page 9: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 6

PROGRAM PERTAMA Contoh kasus : Buatlah suatu halaman web yang dapat menampilkan bilangan 1 sampai 1000.

Solusi 1 : Dengan menggunakan HTML <html> <head> <title>Deret Angka</title> </head> <body> 1<br> 2<br> ... ... ... 999<br> 1000<br> </body> </html>

Jika solusi dikerjakan, maka kita membutuhkan banyak baris. Tentunya akan merepotkan jika

bilangan yang diinginkan adalah dari 1 sampai 100000. Jika kita mengandalkan bahasa HTML

murni maka akan sulit.

Solusi 2 : Dengan menggunakan PHP 1 2 3 4 5 6 7 8 9

10 11

<html> <head> <title>Deret Angka</title> </head> <body> <? for($i=1;$i<=1000;$i++) echo "$i<br>"; ?> </body> </html>

Script PHP disisipkan dalam sebuah file HTML.

Keterangan program :

- Baris 1 – 5 : Awal dari HTML

- Baris 6 : Awal dari script php dimulai dengan tag <?.

- Baris 7 – 8 : Perulangan dari 1 sampai 1000 untuk menghasilkan deret angka 1 sampai 1000.

- Baris 9 : Akhir dari script php diakhiri dengan tab ?>.

- Baris 10 – 11 : Akhir dari HTML

Page 10: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 7

Simpan fiel tersebut di dalam folder htdocs dengan nama file test1.php. Kemudian eksekusi file

tersebut di web browser dengan alamat : http://localhost/test1.php yang akan menampilkan deret

angka dari 1 sampai 1000 seperti gambar di bawah ini.

Hasil Eksekusi file Test1.php

Untuk membuktikan bahwa sebuah script php menghasilkan dokumen html, maka pada web

browser (contoh Internet Explorer) klik menu View Source yang akan menampilkan sumber

HTML dokumen tersebut seperti di bawah ini.

Page 11: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 8

Kode sumber HTML hasil Interpreter PHP.

Sekarang kita modifikasi program di atas agar dapat menampilkan deret angka yang berwarna

dengan ketentuan jika bilangan ganjil maka akan ditampilkan dengan warna merah dan jika

bilangan tersebut genap maka akan ditampilkan dengan warna biru.

Untuk kasus diatas maka kita benar-benar memerlukan suatu percabangan (statement if),

sehingga file test1.php akan berubah menjadi : 1 2 3 4 5 6 7 8 9

10 11 12 13 14 15 16

<html> <head> <title>Title here!</title> </head> <body> <? for($i=1;$i<=1000;$i++) { if($i % 2 ==0) echo "<font color=red>$i</font><br>"; else echo "<font color=blue>$i</font><br>"; } ?> </body> </html>

Jika file telah diedit, maka sebelum dieksekusi, file tersebut harus disimpan dulu. Kemudian tekan

tombol Refresh di web browser agar mengeksekusi kembali file tersebut.

MENGIRIM NILAI KE VARIABLE Contoh kasus : File test1.php yang telah ditulis ingin diubah dimana awal perulangannya tidak

selalu 1 dan akhir perulanggnya pun tidak ingin selalu 1000 tetapi bisa berapa saja. Oleh karena

itu, angka 1000 pada perulangannya harus diganti dengan sesuatu yang bisa berubah yaitu

variable sebut saja variable $akhir juga angka 1 diubah menjadi variable $awal. Sehingga file

test1.php akan seperti di bawah ini. 1 2 3 4 5 6 7 8 9

10 11

<html> <head> <title>Title here!</title> </head> <body> <? for($i=$awal;$i<=$akhir;$i++) { if($i % 2 ==0) echo "<font color=red>$i</font><br>"; else

Page 12: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 9

12 13 14 15 16

echo "<font color=blue>$i</font><br>"; } ?> </body> </html>

Ada 2 cara yang dipakai untuk mengirimkan sebuah nilai ke sebuah variable dalam bahasa PHP

yaitu :

1. Melalui alamat URL

Contoh : jika ingin mengisi nilai variable yang ada di file test1.php dengan nilai awal=5 dan

akhir=15 adalah dengan menulis alamat URL di toolbar alamat browser sebagai berikut :

http://localhost/test1.php?awal=5&akhir=15

Keterangan :

o Karakter ? digunakan sebagai pemisah antara nama file dan variable

o Karakter & digunakan sebagai pemisah antar variable

o Nama variable harus sama persis dengan nama variable yang tertulis di test1.php (case

sensitive).

Jika dijalankan, maka akan menghasilkan tampilan HTML seperti di bawah ini.

Page 13: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 10

2. Melalui form

Jika ingin mengirim variable dari suatu form, maka langkah yang harus dilakukan adalah

dengan membuat form HTML yang berisi textbox tempat mengisi variable awal dan akhir

serta sebuah tombol Submit.

Contoh form HTML. 1 2 3 4 5 6 7 8 9

10 11 12 13

<html> <head> <title>FORM</title> </head> <body> <form method=post action="test1.php"> Awal : <input type=text name=awal><br> Akhir : <input type=text name=akhir><br> <input type=submit value="Go..!!!"> <input type=reset value="Hapus"> </form> </body> </html>

Simpan file ini dengan nama form1.php. Keterangan program :

o Baris 6 : Definisi karakter dengan method=post dan jika tombol Submitnya diklik akan

mengeksekusi file test1.php (property action).

o Baris 7 : Pembuatan objek textbox dengan nama objek awal. Nama objek harus sama

dengan nama variable dalam file phpnya.

o Baris 8 : Pembuatan objek textbox dengan nama objek akhir.

o Baris 9 : Pembuatan tombol submit dengan tulisan pada tombolnya adalah Go..!!!. o Baris 10 : Pembuatan tombol reset dengan tulisan Hapus.

Eksekusi file tersebut dengan alamat : http://localhost/form1.php

Page 14: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 11

Jika textbox awal diisi dengan 4 dan textbox akhir diisi dengan 9 kemudian tombol Go..!!! diklik maka akan menampilkan hasil seperti gambar di bawah ini.

Page 15: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 12

LATIHAN 1. Buatlah suatu halaman web yang dapat melakukan perhitungan penjualan.

Form2.php Hitungjual.php

Hitunglah Subtotal, Diskon dan Total dengan

ketentuan diskon diberikan sebesar 10% dari

Subtotal kalau berstatus pelanggan. Jika

tombol Hitung diklik akan menghasilkan

perhitungan seperti di bagian kanan.

Solusi :

Form1.php 1 2 3 4 5 6 7 8 9

10 11 12 13 14 15 16

<html> <head> <title>FORM</title> </head> <body> <form method=post action="hitungjual.php"> Nama Barang : <input type=text name=namabrg><br> Harga : <input type=text name=harga><br> Quantity : <input type=text name=qty><Br> Pelanggan : <input type=radio name=pelanggan value="Y">Ya <input type=radio name=pelanggan value="T">Tidak<br> <input type=submit value="Hitung"> <input type=reset value="Reset"> </form> </body> </html>

Page 16: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 13

Hitungjual.php 1 2 3 4 5 6 7 8 9

10 11 12 13 14 15 16 17 18 19 20 21 22 23

<html> <head> <title>FORM</title> </head> <body> Hasil Perhitungan<hr> Nama Barang : <b><? echo $namabrg;?></b><br> <? echo "Harga Satuan : Rp. $harga<br>"; echo "Banyak : $qty buah<br>"; echo "Pelanggan : $pelanggan<br>"; $subtotal=$harga*$qty; echo "Sub Total : Rp. $subtotal<br>"; if($pelanggan=="Y") $diskon=0.1*$subtotal; else $diskon=0; echo "Diskon : Rp. $diskon<br>"; $total=$subtotal-$diskon; echo "Total : Rp. $total<br>"; ?> </body> </html>

Page 17: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 14

2. Buatlah suatu halaman web yang berguna untuk menghitung saldo tabungan berdasarkan

saldo awal, bunga dan jangka waktunya.

Formnya berbentuk :

Form2.php

Jika tombol hitung di klik, maka akan menghasilkan tampilan seperti di bawah ini.

HitungTabungan.php

Setelah berhasil, anda rombak agar action dari file form2.php tidak ke hitungtabungan.php

tetapi ke form2.php (action ke diri sendiri). Juga dibuat script agar ketika menampilkan hasil

perhitungan form tempat mengisi data ditampilkan kembali dengan data sesuai data yang

diisikan sebelumnya.

Solusi bisa ditemukan di halaman berikutnya.

Page 18: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 15

Solusi :

a. File form2.php <html> <head><title>Perhitungan Tabungan</title></title></head> <body> <form method="post" action="hitungtabungan.php"> <table width="248" border="1" align="center"> <tr> <td colspan="2" align="center"><b>PERHITUNGAN TABUNGAN</b></td> </tr> <tr> <td>Saldo Awal </td> <td><input name=saldoawal type=text size="15"></td> </tr> <tr> <td>Bunga (%) </td> <td><input name=bunga type=text size="4"></td> </tr> <tr> <td>Jangka Waktu </td> <td><input name=waktu type=text size="10"></td> </tr> <tr> <td>&nbsp;</td> <td><input type=submit name=tbl_hitung value="Hitung"> <input type=reset value="Reset"></td> </tr> </table> </form> </body> </html>

b. File hitungtabungan.php <html> <head><title>Perhitungan Tabungan</title></head> <body> <center>DETAIL TABUNGAN</center> <table border=1 width=300 align=center> <tr bgcolor=silver align=center> <td>BULAN</td><td>SALDO</td></tr> <? $saldo=$saldoawal; for($i=1;$i<=$waktu;$i++) { $saldo+=$bunga/100*$saldo; echo "<tr><td>$i</td><td>Rp. $saldo</td></tr>"; } ?> </table> </form> </body> </html>

c. Action ke diri sendiri

Page 19: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 16

Jika action dari sebuah form ada dalam file yang sama, maka isi dari file action yang dulu

(file hitungtabungan.php) harus dipindahkan ke file pertama (file form2.php). Juga

property action formnya harus diganti ke file sendiri (form2.php). Sehingga isi form2.php

adalah sebagai berikut : <html> <head><title>Perhitungan Tabungan</title></title></head> <body> <form method="post" action="hitungtabungan.php"> <table width="248" border="1" align="center"> <tr> <td colspan="2" align="center"><b>PERHITUNGAN TABUNGAN</b></td> </tr> <tr> <td>Saldo Awal </td> <td><input name=saldoawal type=text size="15"></td> </tr> <tr> <td>Bunga (%) </td> <td><input name=bunga type=text size="4"></td> </tr> <tr> <td>Jangka Waktu </td> <td><input name=waktu type=text size="10"></td> </tr> <tr> <td>&nbsp;</td> <td><input type=submit name=tbl_hitung value="Hitung"> <input type=reset value="Reset"></td> </tr> </table> </form> <? if($tbl_hitung == “Hitung”) // Jika tbl_hitung di klik/submit { ?> <center>DETAIL TABUNGAN</center> <table border=1 width=300 align=center> <tr bgcolor=silver align=center> <td>BULAN</td> <td>SALDO</td></tr> <? $saldo=$saldoawal; for($i=1;$i<=$waktu;$i++) { $saldo+=$bunga/100*$saldo; echo "<tr><td>$i</td><td>Rp. $saldo</td></tr>"; } ?> </table>

<? } ?> </body></html>

d. Menampilkan kembali isian form

Page 20: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 17

Untuk menampilkan kembali isian form sebelumnya, maka property value dari textbox

harus terisi dengan isian textbox sebelumnya.

Oleh karena itu, file form2.php akan menjadi seperti di bawah ini : <html> <head><title>Perhitungan Tabungan</title></title></head> <body> <form method="post" action="hitungtabungan.php"> <table width="248" border="1" align="center"> <tr> <td colspan="2" align="center"><b>PERHITUNGAN TABUNGAN</b></td> </tr> <tr> <td>Saldo Awal </td> <td><input name=saldoawal type=text value=”<? echo $saldoawal;?>”></td> </tr> <tr> <td>Bunga (%) </td> <td><input name=bunga type=text value=”<? echo $bunga;?>”></td> </tr> <tr> <td>Jangka Waktu </td> <td><input name=waktu type=text value=”<? echo $waktu;?>”></td> </tr>

<tr> <td>&nbsp;</td> <td><input type=submit name=tbl_hitung value="Hitung"> <input type=reset value="Reset"></td> </tr> </table> </form> <? if($tbl_hitung == “Hitung”) // Jika tbl_hitung di klik/submit { ?> <center>DETAIL TABUNGAN</center> <table border=1 width=300 align=center> <tr bgcolor=silver align=center> <td>BULAN</td> <td>SALDO</td></tr> <? $saldo=$saldoawal; for($i=1;$i<=$waktu;$i++) { $saldo+=$bunga/100*$saldo; echo "<tr><td>$i</td><td>Rp. $saldo</td></tr>"; } ?> </table>

<? } ?> </body></html>

3. Buatlah suatu halaman web yang berguna untuk menghitung biaya kost. Tampilan awalnya

adalah :

Page 21: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 18

Form Pengisian Data Hasil Perhitungan

Input : Tipe Kamar, Air, dan Fasilitas yang terdiri dari Telepon, Televisi, Komputer dan Rice

Cooker.

Ketentuan :

Tipe Kamar Luas Biaya Sewa

A 2 x 3 m Rp. 200.000

B 3 x 3 m Rp. 250.000

C 4 x 3 m Rp. 300.000

Biaya Bulanan :

o Air PDAM : Rp. 20.000

o Air Tanah : Rp. 15.000

o Telepon : Rp. 20.000

o Televisi : Rp. 30.000

o Komputer : Rp. 60.000

o Rice Cooker : Rp. 5.000

Hitunglah biaya bulanan berdasarkan jenis kamar, jenis air dan fasilitas yang dipilihnya saja.

Page 22: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 19

Solusi : 1 2 3 4 5 6 7 8 9

10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58

<html> <head><title>Perhitungan Biaya Kost</title></head> <body> <form method="post" action="<? echo $PHP_SELF;?>"> <table border="1"> <tr> <td colspan="2" align="center"><b>PERHITUNGAN HARGA KOST </b></td> </tr> <tr> <td width="116">Tipe Kamar </td> <td width="174"><select name="tipe"> <option value="A">A. [2 x 3 m]</option> <option value="B">B. [3 x 3 m]</option> <option value="C">C. [4 x 3 m]</option> </select> </td> </tr> <tr> <td>Air</td> <td><input name="rb_air" type="radio" value="PDAM">Air PDAM <br> <input name="rb_air" type="radio" value="Tanah">Air Tanah </td> </tr> <tr> <td>Fasilitas</td> <td><input name="cb_telepon" type="checkbox" value="Y">Telepon<br> <input name="cb_televisi" type="checkbox" value="Y">Televisi<br> <input name="cb_komputer" type="checkbox" value="Y">Komputer<br> <input name="cb_rice" type="checkbox" value="Y">Rice Cooker</td> </tr> <tr> <td>&nbsp;</td> <td><input type="submit" name="Submit" value="Hitung"> <input type="reset" name="Submit2" value="Reset"></td> </tr> </table> </form> <? if($Submit)// Jika Tombol Submit (Hitung) Di Klik { ?> <hr> <table border=1> <tr><td colspan=2 align=center>HASIL PERHITUNGAN</td></tr> <tr bgcolor=silver><td colspan=2 align=center>Kamar</td></tr> <tr><td> <? if($tipe=="A") { $luas="2 x 3 m"; $harga=200000; } else if($tipe=="B") { $luas="3 x 3 m"; $harga=250000; } else

Page 23: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 20

59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99

100 101 102 103 104 105 106 107 108 109 110 111 112 113 114

if($tipe=="C") { $luas="4 x 3 m"; $harga=300000; } echo $luas;//menuliskan luas ?></td><td align=right>Rp. <? echo number_format($harga,0,",",".");?></td></tr> <tr bgcolor=silver><td align=center colspan=2>Jenis Air</td></tr> <tr><td>Air <? echo $rb_air;?></td><td align=right>Rp. <? if($rb_air=="PDAM") $air=20000; else if($rb_air=="Tanah") $air=15000; echo number_format($air,0,",",".");//menuliskan $air ?></td></tr> <? if(($cb_telepon=="Y")or($cb_televisi=="Y")or($cb_komputer=="Y")or($cb_rice=="Y")) echo "<tr bgcolor=silver> <td align=center colspan=2>Fasilitas-Fasilitas</td></tr>"; if($cb_telepon=="Y") { $telepon=20000; echo "<tr><td>Telepon</td><td align=right>Rp. ". number_format($telepon,0,",",".")."</td></tr>"; } if($cb_televisi=="Y") { $televisi=30000; echo "<tr><td>Televisi</td><td align=right>Rp. ". number_format($televisi,0,",",".")."</td></tr>"; } if($cb_komputer=="Y") { $komputer=60000; echo "<tr><td>Komputer</td><td align=right>Rp. ". number_format($komputer,0,",",".")."</td></tr>"; } if($cb_rice=="Y") { $rice=5000; echo "<tr><td>Rice Cooker</td><td align=right>Rp. ". number_format($rice,0,",",".")."</td></tr>"; } $total=$harga+$air+$telepon+$televisi+$komputer+$rice; echo "<tr bgcolor=silver><td>TOTAL</td><td align=right><b>Rp. ". number_format($total,0,",",".")."</b></td></tr>"; ?> </table> <? } ?> </body> </html>

Keterangan :

Page 24: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 21

BARIS PENJELASAN

3 $PHP_SELF adalah suatu konstanta yang berisi nama file tersebut. Sehingga

jika perintah tersebut dipanggil dalam file form.php, maka $PHP_SELF berisi

nama file form.php. [Buktikan dengan view source di browser].

action=”<? echo $PHP_SELF;?>” berarti action-nya ada di file sendiri.

9 - 17 Pembuatan objek pemilihan (select) dengan 3 option dengan nama objek tipe.

Jika memilih “A. [2 x 3 m]”, maka tipe bernilai “A”, dan seterusnya.

18 - 22 Pembuatan objek radio button dengan 2 pilihan dengan nama objek rb_air. Jika

memilih “Air PDAM”, maka rb_air bernilai “PDAM” dan jika memilih “Air Tanah”,

maka rb_air bernilai “Tanah”.

23 - 29 Pembuatan objek-objek pilihan fasilitas. Jenis objek yang dipakai adalah

checkbox. Ada 4 checkbox yaitu cb_telepon, cb_televisi, cb_komputer, dan

cb_rice. Setiap objek tersebut akan bernilai “Y” jika dipilih oleh user.

30 - 34 Pembuatan tombol submit dan reset. Tombol submit diberi nama Submit dengan tulisan “Hitung”, sedangkan tombol reset diberi tulisan “”Reset”.

37 - 40 Script PHP yang memeriksa apakah telah ada penekanan tombol Submit. Jika

tombol Submit telah diklik, maka komputer akan mengeksekusi perintah yang

ada di antara { [baris 40] dan } [baris 111] (tabel hasil perhitungan).

42 Pembuatan Tabel hasil perhitungan

43 Pembuatan judul tabel hasil perhitungan

44 Pembuatan baris yang berisi tulisan “Kamar”. (baris 2 di tabel hasil).

47 - 63 Percabangan mencari luas kamar dan harga sewanya.

64 Penulisan luas kamar di cell sebelah kiri pada baris 3 dari tabel hasil.

65 - 66 Penulisan harga sewa di cell sebelah kanan pada baris 3 dan diformat seperti

format penulisan uang dalam format Indonesia.

67 Pembuatan baris yang berisi tulisan “Jenis Air” (baris 3).

68 Penulisan jenis air di cell sebelah kiri.

69 - 76 Percabangan untuk menentukan biaya penggunaan air berdasarkan jenis

airnya kemudian menuliskan hasilnya dalam format uang Indonesia (baris 75).

78 - 80 Percabangan yang berguna untuk menampilkan baris yang bertuliskan

“Fasilitas-Fasilitas” pada tabel hasil perhitungan yang hanya akan muncul kalau

salah satu atau lebih dari 4 pilihan fasilitas ada yang dipilih, sehingga operator

logika yang dipakai adalah or ( || ).

BARIS PENJELASAN

81 - 86 Percabangan yang memeriksa apakah checkbox cb_telepon dipilih oleh user.

Page 25: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 22

Jika objek cb_telepon bernilai “Y” (dipilih oleh user), maka biaya telepon

adalah 20000 dan kemudian menampilkannya dalam format uang Indonesia

(baris 84 - 85).

87 - 92 Percabangan yang memeriksa apakah checkbox cb_televisi dipilih oleh user.

Jika objek cb_televisi bernilai “Y” (dipilih oleh user), maka biaya televisi adalah 30000 dan kemudian menampilkannya dalam format uang Indonesia

(baris 90 - 91).

93 - 98 Percabangan yang memeriksa apakah checkbox cb_komputer dipilih oleh

user. Jika objek cb_komputer bernilai “Y” (dipilih oleh user), maka biaya

komputer adalah 60000 dan kemudian menampilkannya dalam format uang

Indonesia (baris 96 - 97).

99 - 104 Percabangan yang memeriksa apakah checkbox cb_rice dipilih oleh user. Jika

objek cb_rice bernilai “Y” (dipilih oleh user), maka biaya rice adalah 5000 dan

kemudian menampilkannya dalam format uang Indonesia (baris 102 - 103).

105 Perhitungan total yang didapat dari penjumlahan dari variable harga sewa, air, telepon, televisi, komputer dan rice cooker.

106 - 107 Penulisan total dalam format uang Indonesia.

109 Tutup tabel hasil perhitungan

110 - 112 Tutup statement if ($submit).

Page 26: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 23

VALIDASI DATA Validasi data merupakan suatu proses yang sangat dilakukan untuk menjaga konsistensi data.

Contoh Kasus :

Buatlah suatu halaman web yang berguna untuk menghitung nilai seorang mahasiswa. Data

yang diinputkan adalah : NIM, Nama, Tanggal Lahir, Nilai Tugas, Nilai UTS, dan Nilai UAS. Dari

data-data tersebut dihasilkan Nilai Akhir dengan ketentuan 20% Tugas + 30% UTS + 50% UAS.

Perhatikan gambar di bawah ini.

Form Pengisian Data Valid Hasil Perhitungan Jika Data Valid

Form Pengisian Data Invalid Hasil Jika Data Invalid

Proses perhitungan dibatalkan. Data yang anda isikan tidak valid. Kesalahan yang terjadi : - 3 Huruf Pertama untuk IF harus 101 [S1], 107 [D3], 122 [D1] - Tanggal Lahir harus diisi dengan lengkap - Tanggal Lahir tidak sah - Nilai UTS Hanya boleh angka Kembali

Aturan-aturan :

Page 27: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 24

Perhitungan hanya dapat dilakukan jika semua data telah valid.

Field Ketentuan

NIM NIM harus 8 huruf

NIM harus angka

3 huruf awal harus “101” untuk S1, “107” untuk D3 dan “122” untuk D1.

NAMA Awal dan akhir Nama tidak boleh ada spasi

Nama minimal 2 huruf.

TANGGAL LAHIR Semua isian Tanggal Lahir (tanggal, bulan, dan tahun) harus diisi.

Tanggal Lahir harus sesuai dengan ketentuan (valid).

TUGAS, UTS, UAS Data harus berupa angka maksimal 3 digit

Semua digit harus berupa angka

Nilai Data harus dalam range 0 sampai 100.

Solusi :

FormNilai.php 1 2 3 4 5 6 7 8 9

10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34

<html> <head> <title>Perhitungan Nilai</title> </head> <body> <form method=post action="hitungnilai.php"> <table border=1> <tr><td colspan=2 align=center bgcolor=silver>Perhitungan Nilai</td></tr> <tr><td>NIM</td> <td><input type=text name=nim size=9 maxlength=8></td></tr> <tr><td>Nama</td> <td><input type=text name=nama size=25 maxlength=30></td></tr> <tr><td>Tanggal Lahir</td> <td> <select name=tanggal> <option value=0>Pilih</option> <? for($tgl=1;$tgl<=31;$tgl++) echo "<option value=$tgl>$tgl</option>"; ?> </select> - <select name=bulan> <option value=0>Pilih</option> <option value=1>Januari</option> <option value=2>Februari</option> <option value=3>Maret</option> <option value=4>April</option> <option value=5>Mei</option> <option value=6>Juni</option> <option value=7>Juli</option> <option value=8>Agustus</option> <option value=9>September</option> <option value=10>Oktober</option>

Page 28: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 25

35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 56 57 58 59

<option value=11>November</option> <option value=12>Desember</option> </select> - <select name=tahun> <option value=0>Pilih</option> <? for($thn=2000;$thn>=1950;$thn--) echo "<option>$thn</option>"; ?> </select> </td></tr> <tr><td colspan=2 align=center bgcolor=silver>Nilai</td></tr> <tr><td>Tugas </td> <td><input type=text name=tugas size=4 maxlength=3></td></tr> <tr><td>UTS </td> <td><input type=text name=uts size=4 maxlength=3></td></tr> <tr><td>UAS </td> <td><input type=text name=uas size=4 maxlength=3></td></tr> <tr bgcolor=silver><td>&nbsp;</td> <td><input type=submit name=submit value="Hitung"></td></tr> </table> </form> </body> </html>

Keterangan Program :

BARIS PENJELASAN

6 Pembuatan form yang akan melakukan action ke file hitungnilai.php.

11 Pembuatan objek textbox dengan nama nim dengan ukuran lebar 9 huruf dan

maksimal isi adalah 8 huruf.

13 Pembuatan objek textbox dengan nama nama dengan ukuran lebar 25 huruf dengan

maksimal isi adalah 30 huruf.

16 – 22 Pembuatan objek combobox (select) dengan nama tanggal dengan isi pilihan dari 0

sampai 31. Isian 0 digunakan untuk pemeriksaan apakah user memilih tanggal atau

tidak. Jika objek ini bernilai 0 berarti user belum memilih tanggal.

23 - 37 Pembuatan objek combobox (select) dengan nama bulan dengan isian pilihan dari 0

sampai 12 tetapi bentuk pilihannya adalah Januari sampai Desember. Isian 0

digunakan untuk pemeriksaan apakah user memilih bulan atau tidak. Jika objek ini

bernilai 0 berarti user belum memilih bulan.

38 - 44 Pembuatan objek combobox (select) dengan nama tahun dengan isian pilihan 0,

serta tahun 1950 sampai 2000 tetapi terurut descending (dari besar ke kecil). Isian 0

digunakan untuk pemeriksaan apakah user memilih tahun atau tidak. Jika objek ini

bernilai 0 berarti user belum mengisi tahun.

BARIS PENJELASAN

48 Pembuatan objek textbox dengan nama tugas dengan lebar 4 huruf dan maksimal

isian data adalah 3 digit/huruf.

Page 29: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 26

50 Pembuatan objek textbox dengan nama uts dengan lebar 4 huruf dan maksimal isian

data adalah 3 digit/huruf.

52 Pembuatan objek textbox dengan nama uas dengan lebar 4 huruf dan maksimal isian

data adalah 3 digit/huruf.

54 Pembuatan objek tombol submit dengan nama objek submit dengan tulisan pada

tombolnya adalah “Hitung”.

HitungNilai.php 1 2 3 4 5 6 7 8 9

10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46

<html> <head> <title>Perhitungan Nilai</title> </head> <body> <? //AWAL VALIDASI DATA $ada_error=false; $pesan_error="Kesalahan yang terjadi :<br>"; $nim=trim($nim); if(strlen($nim)<8) { $pesan_error=$pesan_error."- Panjang NIM harus 8 Huruf<br>"; $ada_error=true; } if(!ereg("[0-9]{8}",$nim)) { $pesan_error.="- NIM Hanya boleh angka<br>"; $ada_error=true; } $jenjang=substr($nim,0,3); if(($jenjang!="101")and($jenjang!="107")and($jenjang!="122")) { $pesan_error=$pesan_error."- 3 Huruf Pertama untuk IF harus 101 [S1], 107 [D3], 122 [D1]<br>"; $ada_error=true; } $nama=trim($nama); if(strlen($nama)<2) { $pesan_error=$pesan_error."- Nama Minimal 2 Huruf<br>"; $ada_error=true; } if(($tanggal==0)or($bulan==0)or($tahun==0)) { $pesan_error.="- Tanggal Lahir harus diisi lengkap<br>"; $ada_error=true; } if(!checkdate($bulan,$tanggal,$tahun))// if checkdate == false {

Page 30: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 27

47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99

100 101 102 103 104 105 106

$pesan_error.="- Tanggal Lahir tidak sah<br>"; $ada_error=true; } if(!ereg("[0-9]{1,3}",$tugas)) { $pesan_error.="- Nilai Tugas Hanya boleh angka<br>"; $ada_error=true; } if(($tugas<0)||($tugas>100)) { $pesan_error.="- Nilai Tugas harus 0 s/d 100<br>"; $ada_error=true; } if(!ereg("[0-9]{1,3}",$uts)) { $pesan_error.="- Nilai UTS Hanya boleh angka<br>"; $ada_error=true; } if(($uts<0)||($uts>100)) { $pesan_error.="- Nilai UTS harus 0 s/d 100<br>"; $ada_error=true; } if(!ereg("[0-9]{1,3}",$uas)) { $pesan_error.="- Nilai UAS Hanya boleh angka<br>"; $ada_error=true; } if(($uas<0)||($uas>100)) { $pesan_error.="- Nilai UAS harus 0 s/d 100<br>"; $ada_error=true; } if($ada_error)//if($ada_error==true) { echo "Proses perhitungan dibatalkan. Data yang anda isikan tidak valid.<br>$pesan_error<br> <a href='javascript:history.back();'>Kembali</a>"; } else if(!$ada_error)//if($ada_error==false) { ?> <table border=1> <tr><td colspan=2 align=center bgcolor=silver>Perhitungan Nilai</td></tr> <tr><td>NIM</td><td><? echo $nim;?></td></tr> <tr><td>Nama</td><td><? echo $nama;?></td></tr> <tr><td>Tanggal Lahir</td> <td><? echo "$tanggal - $bulan - $tahun"; ?></td></tr> <tr><td colspan=2 align=center bgcolor=silver>Nilai</td></tr> <tr><td>Tugas </td><td><? echo number_format($tugas,2);?></td></tr> <tr><td>UTS </td><td><? echo number_format($uts,2);?></td></tr> <tr><td>UAS </td><td><? echo number_format($uas,2);?></td></tr> <tr><td>Nilai Akhir </td> <td><? $na=0.2*$tugas+0.3*$uts+0.5*$uas;

Page 31: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 28

107 108 109 110 111 112 113 114

echo number_format($na,2); ?></td></tr> </table> <? }//end of if(!$ada_error) ?> </body> </html>

Keterangan Program :

BARIS PENJELASAN

8 Penginisialisasian variable $ada_error dengan nilai false yang berguna untuk

menyatakan bahwa belum ada error. Variable ini akan berubah nilai menjadi true jika

ada sebuah kesalahan terjadi.

9 Penginisialisasian variable $pesan_error. Variable ini berguna untuk menyimpan

pesan error apa saja yang terjadi. Variable ini akan ditampilkan di browser jika terjadi

suatu kesalahan.

11 Variable $nim di-trim agar kalau ada spasi di sebelah kiri dan kanan (spasi yang tidak

berguna) akan dihapus. Contoh jika $nim diisi “ 10197025 “ menjadi “10197025”.

13 - 17 Pemeriksaan apakah panjang string $nim kurang dari 8. Jika NIM kurang dari 8 huruf

maka $pesan_error akan ditambah pesan “- Panjang NIM harus 8 Huruf” dan

variable $ada_error menjadi bernilai true karena telah terjadi kesalahan.

18 - 22 Pemeriksaan apakah $nim berisi hanya angka saja sebanyak 8 huruf. Jika tidak (!)

maka $pesan_error akan ditambah pesan “- NIM hanya boleh angka” dan variable

$ada_error menjadi bernilai true karena telah terjadi kesalahan.

Pemeriksaan string ini menggunakan suatu metode yang disebut Regular Expression. Pola [0-9]{8} mempunyai arti sekumpulan bilangan antara 0,1,2…9 yang

harus terdiri dari 8 digit.

25 - 31 Pemeriksaan apakah $nim yang telah diinputkan merupakan nim yang sah untuk

mahasiswa IF. Caranya pemeriksaannya adalah dengan mengambil 3 digit pertama

dari nim (substr($nim,0,3)) dan dimasukan ke variable $jenjang, kemudian dilakukan

percabangan jika $jenjang tidak sama dengan “101”, dan $jenjang tidak sama dengan

“107” dan $jenjang tidak sama dengan “122” maka nim tersebut dianggap invalid. Jika

nim tersebut invalid (di luar 101,107,122) maka $pesan_error akan ditambah pesan

“- 3 Huruf pertama untuk IF adalah 101, 107 dan 122” dan variable $ada_error menjadi bernilai true karena telah terjadi kesalahan.

33 Variable $nama di-trim untuk menghilangkan spasi pada awal dan akhir nama.

34 - 38 Pemeriksaan apakah panjang dari variable nama kurang dari 2 huruf. Jika $nama

kurang dari dua huruf maka $pesan_error akan ditambah pesan “- Nama Minimal 2

Page 32: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 29

Huruf” dan variable $ada_error menjadi bernilai true karena telah terjadi kesalahan.

40 - 44 Pemeriksaan apakah $tanggal belum dipilih (0), atau $bulan belum dipilih (0) atau

$tahun belum dipilih (0). Jika salah satu (or), masih mempunyai nilai 0 berarti

pengisian tanggal lahir belum lengkap. Oleh karena itu maka $pesan_error akan

ditambah pesan “- Tanggal lahir harus diisi dengan lengkap” dan variable $ada_error menjadi bernilai true karena telah terjadi kesalahan.

45 - 49 Pemeriksaan apakah tanggal lahir valid (sesuai dengan aturan penanggalan).

Pemeriksaannya adalah dengan perintah checkdate. Fungsi ini menghasilkan nilai

true bila tanggal yang dimasukan benar dan akan menghasilkan nilai false jika tanggal

tidak sesuai dengan aturan (contoh tgl : 30 Februari 1999). Jika fungsi checkdate

mempunyai nilai false (if(!checkdate()), maka $pesan_error akan ditambah pesan

“- Tanggal Lahir tidak sah.” dan variable $ada_error menjadi bernilai true karena

telah terjadi kesalahan.

51 - 55 Pemeriksaan apakah isi variable $tugas berupa angka sebanyak 1 sampai 3 digit.

Jika tidak maka $pesan_error akan ditambah pesan “- Nilai tugas hanya boleh

angka. ” dan variable $ada_error menjadi bernilai true karena telah terjadi

kesalahan.

Pemeriksaan ini dilakukan dengan teknik regular expression dengan pola

pemeriksaan adalah [0-9]{1,3} yang artinya deretan 1 sampai 3 buah digit angka 0 –

9.

56 - 60 Pemeriksaan apakah isi $tugas tidak sah ($tugas<0) atau ($tugas>100). Jika nilai

$tugas tidak sah maka $pesan_error akan ditambah pesan “-Nilai tugas hanya boleh

dari 0 s/d 100” dan variable $ada_error menjadi bernilai true karena telah terjadi

kesalahan.

62 - 66 Pemeriksaan nilai $uts. Prosesnya sama dengan baris 51 – 55.

67 - 71 Pemeriksaan range nilai $uts. Prosesnya mirip dengan baris 56 – 60.

73 - 77 Pemeriksaan nilai $uas. Prosesnya mirip dengan baris 51 – 55.

78 - 82 Pemeriksaan range nilai $uas. Prosesnya mirip dengan baris 56 – 60

84 - 89 Pemeriksaan apakah variable $ada_error bernilai true. Jika benar maka itu

menunjukan bahwa minimal ada 1 kesalahan terjadi, sehingga di browser akan

muncul daftar error yang dimaksud dan juga menampilkan link yang bertuliskan

Kembali untuk kembali ke pengisian data di form.

91 – 92 Percabangan jika variable $ada_error bernilai false, maka komputer akan

menampilkan tabel perhitungan nilai yang dimulai dari baris 96 sampai 109.

Percabangan ini dibuka dengan { di baris 92 dan ditutup dengan } di baris 111.

Page 33: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 30

96 Menuliskan kembali data $nim yang diisi di form.

97 Menuliskan kembali data $nama yang diisi di form.

98 - 99 Menuliskan kembali data $tanggal, $bulan dan $tahun yang dipilih di form.

101 Menampilkan data $tugas yang diisi di form dengan format 2 angka desimal.

102 Menampilkan data $uts yang diisi di form dengan format 2 angka desimal.

103 Menampilkan data $uas yang diisi di form dengan format 2 angka desimal.

104 - 108 Menghitung Nilai Akhir ($na), kemudian menampilkannya dengan format 2 angka

desimal.

110 - 112 Akhir dari if (!$ada_error)

Page 34: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 31

TUGAS Di file php sebelumnya, terdapat penggunaan Regular Expression. Tugas kamu adalah :

- Cari dokumentasi mengenai Regular Expression terutama aturan-aturannya.

- Bagaimana penggunaannya dalam PHP

Kemudian buatlah pola Regular Expression untuk pemeriksaan data sebagai berikut :

1. Data alamat e-mail.

2. Data NIM mahasiswa Teknik Informatika, dimana 3 huruf pertama harus 101 atau 107 atau

122.

3. Pemeriksaan apakah dalam suatu string terdapat kata XXX, tetapi tidak deretean X lebih dari

3 buah (XXXX, atau XXXXX).

4. Buatlah pola regular expression untuk pemeriksaan Kode Pos di Bandung, dimana angka

pertama harus 4 dan 4 angka berikutnya harus angka semua.

5. Buat pula pola untuk nomor telepon dimana formatnya adalah Kode Area – No TELEPON.

Dimana Kode area bisa 3 atau 4 gabungan angka dengan angka 0 sebagai angka pertama

(seperti 022, 0265) kemudian diikuti dengan tanda – (minus) kemudian diikuti pula dengan no

telepon yang terdiri dari 6 sampai 8 digit angka dimana angka pertama bukan 0. Contoh 021-

12345667, atau 0265-740198

6. Mirip dengan No. 5 tetapi penulisan kode area boleh tidak dituliskan (penulisan no telepon

local).

7. Pemeriksaan apakah suatu alamat email seseorang merupakan member dari server mail

yahoo.com. Contoh jika email : [email protected] berarti member yahoo dan jika

[email protected] berarti bukan member yahoo.

8. Pemeriksaan alamat apakah mengandung kata “Bali”. Contoh yang benar adalah “Jl. Bali

no.7” atau “Restoran R.Aja Bali” tetapi bukan “Cibaligo Bandung” atau “Jl. Baling 2”.

9. Pemeriksaan NIM mahasiswa unikom yang tahun masuknya tahun 1999.

10. Pemeriksaan apakah dalam suatu string mengandung kata Bandung atau BDG.

Untuk menghindari tugas yang hanya Copy – Paste, maka tugas ini harus ditulis tangan di kertas folio bergaris.

TIPS : Google Keyword : Regular Expression atau RegEx

Page 35: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 32

BAB III ARRAY

DESKRIPSI Array adalah sebuah variabel khusus yang memperbolehkan anda untuk menyimpan banyak

data dalam satu variabel yang sama. Setiap elemen array diindex dengan cara atau string.

Contoh kasus : Jika anda mempunyai 5 nilai yang harus disimpan, anda tentunya membuat 5

buah variabel. Tetapi bagaimana kalau banyaknya tidak selalu 5, bisa 10, 100 atau mungkin 500

buah nilai. Oleh karena itu maka lebih baik anda menggunakan teknik array. Kenapa?, karena

array sangat flexible dimana dapat menyimpan banyak variabel tanpa harus mendefinisikan

variabel lagi, juga sebuah array dapat digunakan dengan mudah karena kita dapat mengakses

elemennya secara berurutan atau bahkan secara acak. Juga dapat pula array diurutkan

berdasarkan nilai angkanya atau secara alpabet.

Setiap item dari sebuah array biasanya disebut dengan elemen. Setiap elemen dapat diakses

secara langsung berdasarkan indexnya. Sebuah index terhadap suatu elemen array dapat

berupa angka atau string.

Secara default, elemen-elemen array diindex berdasarkan dengan nomor, dimulai dengan

elemen ke-0. Sangat penting untuk diingat bahwa “index dari elemen terakhir dari sebuah array yang terurut secara angka selalu 1 lebih kecil dari banyaknya elemen array”.

Sehingga jika kita mempunyai array sebanyak 5 elemen berarti elemen terakhir adalah 4 karena

elemennya dimulai dari 0.

Pengindexan array dengan string dapat sangat berguna dalam kasus dimana anda harus

menyimpan nama elemen dan nilai elemennya. Array yang diindex dengan nama (bukan nomor)

disebut dengan associative array.

Page 36: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 33

MEMBUAT ARRAY

Array Biasa

Secara default, array adalah sekumpulan nilai yang diindex dengan nomor. Nilai dapat diisi dalam

array dengan dua cara yaitu dengan menggunakan constuctor array() atau dengan

menggunakan tanda kurung siku kosong ( [] ).

Cara 1 : menggunakan constructor array() $kampus=array("Universitas","Komputer","Indonesia");

Cara 2 : menggunakan tanda kurung siku kosong $kampus[]="Universitas";

$kampus[]="Komputer"; $kampus[]="Indonesia";

Jika kita menulis perintah echo $kampus[1];, maka yang tampil adalah “Komputer”.

Associative Array

Sama dengan pembuatan array biasa, cara pembuatan associative array memiliki 2 cara yang

sama.

Cara 1 : menggunakan constructor array() $ibukota=array("Jabar"=>"Bandung",

"Jatim"=>"Surabaya", "Jateng"=>"Semarang", "Bali"=>"Denpasar");

Cara 2 : menggunakan tanda kurung siku kosong $ibukota["Jabar"]="Bandung";

$ibukota["Jatim"]="Surabaya"; $ibukota["Jateng"]="Semarang"; $ibukota["Bali"]="Denpasar";

Jika kita menulis perintah echo $ibukota["Jatim"];, maka yang tampil adalah “Surabaya”.

Page 37: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 34

MENAMBAH ELEMEN ARRAY Ada dua cara untuk menambah elemen array, yaitu dengan menggunakan fungsi array_push(),

atau dengan menggunakan tanda kurung siku kosong atau tanda kurung siku dengan key.

Cara 1 : menggunakan fungsi array_push() array_push($kampus,"Universitas");

Cara 2 : menggunakan tanda kurung siku kosong $ibukota["Sumut"]="Medan";

Cara 3 : menggunakan tanda kurung siku dengan key (associative array) $ibukota["Sumut"]="Medan";

MENGAKSES ELEMEN ARRAY Karena kita telah memiliki 2 jenis array yaitu array biasa dan associative array, maka cara

pengaksesannya pun adalah :

Mengakses array biasa

Untuk mengakses array biasa, caranya sangat simple yaitu dengan cara memanggil nama

variabelnya diikuti dengan nomor indexnya.

Contoh 1 : Mengakses 1 elemen echo "elemen ke-2 adalah $kampus[1]";

Contoh 2 : Mengakses semua elemen dengan perulangan for for($i=0;$i<count($kampus);$i++)

echo "Elemen $i : $kampus[$i]<br>"; Fungsi count() digunakan untuk mengambil banyaknya elemen.

Contoh 3 : Mengakses semua elemen dengan perulangan foreach tanpa menampilkan nomor. foreach($kampus as $elemen)

echo "$elemen<br>";

Contoh 4 : Mengakses semua elemen dengan perulangan foreach dengan menampilkan nomor. foreach($kampus as $no => $elemen)

echo "Elemen $no : $elemen<br>";

Page 38: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 35

Mengakses associative array

Untuk mengakses associative array biasa, caranya adalah dengan cara memanggil nama

variabelnya diikuti dengan key indexnya.

Contoh 1 : Mengakses 1 elemen $kota=$ibukota["Jateng"];

echo "Ibukota Jawa Tengah adalah $kota"; echo "Ibukota Jawa Timur adalah $ibukota[Jatim]"; $prov="Bali"; $kota=$ibukota[$prov]; echo "Ibukota $prov adalah $kota"; echo "Ibukota $prov adalah $ibukota[$prov]";//sama dgn baris sebelumnya

Contoh 2 : Mengakses semua elemen dengan perulangan foreach tanpa menampilkan key foreach($ibukota as $kota)

echo "$kota<br>";

Contoh 3 : Mengakses semua elemen dengan perulangan foreach dengan menampilkan key foreach($ibukota as $provinsi => $kota)

echo "Ibukota $provinsi adalah $kota<br>";

PENGURUTAN ARRAY

Pengurutan Array Biasa

Pengurutan terhadap array biasa dapat dilakukan secara ascending atau descending (reverse).

Perintah yang digunakan adalah fungsi sort() dan rsort().

Contoh 1 : Pengurutan secara ascending sort($kampus);

Contoh 2 : Pengurutan secara descending / reverse rsort($kampus)

Page 39: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 36

Pengurutan Array Biasa

Pengurutan terhadap array biasa dapat dilakukan secara ascending atau descending.

Pengurutan bisa berdasarkan isi elemennya atau berdasarkan key elemnnya. Perintah yang

digunakan adalah fungsi asort(), arsort(), ksort(), dan krsort().

Contoh 1 : Pengurutan berdasarkan isi elemen secara ascending asort($ibukota);

Contoh 2 : Pengurutan berdasarkan key elemen secara ascending ksort($ibukota)

Contoh 3 : Pengurutan berdasarkan isi elemen secara descending / reverse arsort($ibukota);

Contoh 4 : Pengurutan berdasarkan key elemen secara descending / reverse krsort($ibukota);

Page 40: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 37

CONTOH-CONTOH 1. Contoh program yang menggunakan array biasa

1 2 3 4 5 6 7 8 9

10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31

<html> <head><title>Array Biasa</title></head> <body> <? $kampus=array("Universitas","Komputer","Indonesia"); /* Perintah di atas sama dengan perintah di bawah ini $kampus[]="Universitas"; $kampus[]="Komputer"; $kampus[]="Indonesia"; */ echo "Kondisi Awal : <br>"; for($i=0;$i<count($kampus);$i++) echo "Elemen $i : $kampus[$i]<br>"; echo "<hr>"; array_push($kampus,"Bandung");//sama dgn: $kampus[]="Bandung"; echo "Setelah ditambah \"Bandung\"<br>"; for($i=0;$i<count($kampus);$i++) echo "Elemen $i : $kampus[$i]<br>"; echo "<hr>"; sort($kampus); echo "Setelah Diurutkan Ascending<br>"; foreach($kampus as $elemen) echo "$elemen<br>"; echo "<hr>"; rsort($kampus); echo "Setelah Diurutkan Descending/Reverse<br>"; foreach($kampus as $no=>$elemen) echo "Elemen $no : $elemen<br>"; ?> </body> </html>

Keterangan :

BARIS PENJELASAN

5 Pembuatan array $kampus dengan elemen pertama : “Universitas”, elemen ke-2

: “Komputer” dan elemen ke-3 “Indonesia”.

7 - 9 Sama dengan baris 5.

12 - 13 Perulangan dengan menggunakan for untuk menampilkan isi elemen dari

variabel $kampus dimulai dari elemen 0 (data pertama) sampai elemen ke

count($kampus)-1. Fungsi count() digunakan untuk mengambil nilai banyak

elemen suatu array.

15 Menambah elemen baru di posisi paling akhir. Proses ini bisa dilakukan dengan

perintah array_push($kampus,”Bandung”); atau $kampus[]=”Bandung”;.

17 - 18 Menampilkan semua elemen $kampus setelah ditambah elemen “Bandung”.

20 Pengurutan array $kampus secara ascending dengan perintah sort().

Page 41: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 38

22 - 23 Menampilkan semua elemen $kampus setelah diurutkan secara ascending.

Perulangan yang dipakai adalah foreach tanpa menampilkan nomor indexnya.

25 Pengurutan array $kampus secara descending / reverse dengan perintah

rsort().

27 - 28 Menampilkan semua elemen $kampus setelah diurutkan secara ascending.

Perulangan yang dipakai adalah foreach tanpa menampilkan nomor indexnya.

Jika dijalankan akan menghasilkan tampilan seperti di bawah ini.

Page 42: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 39

2. Contoh program yang menggunakan array associative 1 2 3 4 5 6 7 8 9

10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48

<html> <head> <title>Array Associative</title> </head> <body> <? $ibukota=array("Jabar"=>"Bandung", "Jatim"=>"Surabaya", "Jateng"=>"Semarang", "Bali"=>"Denpasar"); /* Perintah di atas sama dengan $ibukota["Jabar"]="Bandung"; $ibukota["Jatim"]="Surabaya"; $ibukota["Jateng"]="Semarang"; $ibukota["Bali"]="Denpasar"; */ echo "Kondisi Awal <br>"; foreach($ibukota as $kota) echo "$kota<br>"; $ibukota["Sumut"]="Medan"; echo "<hr>Setelah ditambah dengan Sumut => Medan<br>"; foreach($ibukota as $provinsi => $kota) echo "Ibukota $provinsi adalah $kota<br>"; echo "<hr>Mengakses secara acak<br>"; $kota=$ibukota["Jabar"]; echo "Ibukota Jawa Barat adalah $kota<br>"; echo "Ibukota Jawa Tengah adalah $ibukota[Jateng]<br>"; $prov="Jatim"; echo "Ibukota $prov adalah $ibukota[$prov]<br>"; echo "<hr>Setelah diurutkan ascending berdasarkan isi elemen<br>"; asort($ibukota); foreach($ibukota as $provinsi => $kota) echo "Ibukota $provinsi adalah $kota<br>"; echo "<hr>Setelah diurutkan ascending berdasarkan key<br>"; ksort($ibukota); foreach($ibukota as $provinsi => $kota) echo "Ibukota $provinsi adalah $kota<br>"; echo "<hr>Setelah diurutkan descending berdasarkan isi elemen<br>"; arsort($ibukota); foreach($ibukota as $provinsi => $kota) echo "Ibukota $provinsi adalah $kota<br>"; echo "<hr>Setelah diurutkan descending berdasarkan key<br>"; krsort($ibukota); foreach($ibukota as $provinsi => $kota) echo "Ibukota $provinsi adalah $kota<br>"; ?> </body> </html>

Page 43: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 40

Keterangan :

BARIS PENJELASAN

7 - 10 Pembuatan array $ibukota dengan elemen dengan key “Jabar” berisi

“Bandung”, elemen dengan key “Jatim” berisi “Surabaya” dan seterusnya. Ada

4 elemen yang dibuat pertama kali.

12 - 15 Sama dengan baris 7 – 10.

18 - 19 Menampilkan semua elemen array $ibukota dengan menggunakan foreach

tanpa menampilkan nama key-nya.

20 Menambah elemen di posisi akhir, dengan key “Sumut” dan isi “Medan”.

22 - 23 Menampilkan semua elemen array $ibukota dengan menggunakan foreach

dengan menampilkan nama key-nya

25 - 26 $kota diisi dengan elemen array $ibukota yang mempunyai key “Jabar” yang

berisi “Bandung” sehingga akan menghasilkan “Ibukota Jawa Barat adalah

Bandung”.

27 Menampilkan elemen array secara langsung yang mempunyai key “Jateng”

yang berisi “Semarang”.

28 - 29 Variabel $prov diisi dengan “Jatim”, kemudian menampilkan elemen dari array

$ibukota pada elemen yang mempunyai key sesuai dengan isi variabel $prov

($ibukota[$prov] sama dengan $ibukota[Jatim]).

31 Pengurutan secara ascending berdasarkan isi elemen arraynya.

32 - 33 Menampilkan semua elemen array $ibukota setelah diurutkan ascending

berdasarkan isi elemen arraynya.

35 Pengurutan secara ascending berdasarkan isi elemen nama key-nya.

36 - 37 Menampilkan semua elemen array $ibukota setelah diurutkan ascending

berdasarkan nama key-nya.

39 Pengurutan secara descending berdasarkan isi elemen arraynya.

40 – 41 Menampilkan semua elemen array $ibukota setelah diurutkan descending

berdasarkan isi elemen arraynya.

43 Pengurutan secara descending berdasarkan isi elemen nama key-nya.

44 – 45 Menampilkan semua elemen array $ibukota setelah diurutkan

descending/reverse berdasarkan nama key-nya.

Page 44: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 41

Jika dijalankan akan menghasilkan :

Page 45: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 42

BAB IV WEB DINAMIS BERBASIS DATABASE

DESKRIPSI Agar lebih jelas maksud dari web dinamis, perhatikan kasus berikut : “Sebuah toko ingin

mempromosikan produk dagangannya di internet. Produk yang akan ditawarkan melebihi 1000

produk dengan berbagai tipe, jenis dan harga barang. Diharapkan di web tersebut pengunjung

dapat melakukan proses pencarian barang berdasarkan berbagai criteria seperti jenis atau

harga“.

Jika anda menggunakan web statis, maka akan sangat merepotkan jika untuk setiap produk

dibuat sebuah file web, maka dibutuhkan sebanyak lebih dari 1000 halaman web. Apalagi ketika

seorang pengunjung ingin melakukan pencarian barang, akan sangat merepotkan.

Alternatifnya adalah dengan menyimpan semua data produk ke sebuah database, dan dengan

bantuan PHP, data diambil dari database dan ditampilkan ke bentuk web. Hal yang paling

penting adalah bagaimana membuat sebuah web seperti ketentuan di atas dengan bantuan dari

database MySQL dikombinasikan dengan PHP.

Page 46: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 43

VIEW DATA DARI DATABASE Diasumsikan bahwa anda telah mempunyai database dengan nama penjualan yang didalamnya

terdapat sebuah tabel dengan nama tabel yaitu barang yang mempunyai struktur seperti di

bawah ini :

+--------------+-------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +--------------+-------------+------+-----+---------+-------+ | kode | varchar(5) | | PRI | | | | nama | varchar(20) | | | | | | tanggalmasuk | date | YES | | NULL | | | harga | float | | | 0 | | | stok | int(11) | | | 0 | | +--------------+-------------+------+-----+---------+-------+

Dengan contoh data seperti di bawah ini :

+-------+----------------+--------------+-------+------+ | kode | nama | tanggalmasuk | harga | stok | +-------+----------------+--------------+-------+------+ | BK001 | Buku Tulis | 2005-04-01 | 5000 | 50 | | BK002 | Buku Gambar | 2004-04-10 | 7500 | 5 | | MS001 | Mouse Logitech | NULL | 50000 | 20 | | MS002 | Mouse Zyrex | 2005-01-01 | 40000 | 10 | | BK003 | Buku Grafik | 2004-05-04 | 7500 | 15 | +-------+----------------+--------------+-------+------+

Adapun script php yang dapat dipergunakan untuk menampilkan data dari tabel yang ada di

sebuah database adalah sebagai berikut :

Nama File : viewdata.php 1 2 3 4 5 6 7 8 9

10 11

12 13 14 15 16 17

<html> <head> <title>View Semua Barang</title> </head> <body> <table border=1 width=100%> <tr><td align=center><h1>Toko Online</h1></td></tr> </table> <hr> <? mysql_connect("localhost","","") or die("MySQL Tidak Aktif Atau User Salah"); mysql_select_db("penjualan") or die("Database Tidak Ditemukan"); $sql="select * from barang"; $result=mysql_query($sql) or die("Error : ".mysql_error()); $banyak=mysql_num_rows($result); if($banyak>0) {

Page 47: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 44

18 19 20 21 22

23 24 25 26 27 28 29 30

31 32 33 34 35 36 37 38 39 40

41 42 43 44

echo "Data yang ditemukan : $banyak data<br>"; ?> <table border=1> <tr align=center> <td>KODE</td><td>NAMA BARANG</td><td>TANGGAL MASUK</td> <td>HARGA</td><td>STOK</td> </tr> <? while($data=mysql_fetch_row($result)) { echo "<tr><td>$data[0]</td><td>$data[1]</td> <td>$data[2]</td> <td align=right>Rp. ". number_format($data[3],0,".",",")."</td> <td>$data[4]</td> </tr>"; } ?> </table> <? } else { echo "<font color=red>Tidak ada data barang di dalam database</font>"; } ?> </body> </html>

Jika script ini dijalankan, akan menghasilkan tampilan seperti di bawah ini.

Page 48: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 45

Keterangan Script :

BARIS PENJELASAN

6 - 8 Membuat header dengan tulisan “Toko Online”

11 Fungsi mysql_connect berguna untuk melakukan suatu koneksi ke database mysql.

Fungsi ini membutuhkan 3 parameter yaitu alamat server database, username dan

password.

Perintah mysql_connect("localhost","","") berarti melakukan koneksi ke

server database yang ada di localhost dengan user dan password dikosongkan.

Jika anda ingin melakukan suatu koneksi terhadap server local dengan password

maka perintahnya adalah

mysql_connect("localhost","username","password").

Sedangkan perintah die(), akan memunculkan pesan ketika mysql_connect terjadi

kesalahan/error misalkan ketika server tidak aktif atau username dan password tidak

sesuai.

12 Perintah mysql_select_db("penjualan") berguna untuk memilih/membuka

database yang akan diakses dalam hal ini nama databasenya adalah penjualan.

13 Penyimpanan perintah SQL yang akan dikerjakan ke dalam suatu variable ($sql).

14 Perintah $result=mysql_query($sql) berguna untuk mengeksekusi suatu perintah

SQL yang ada dalam variable $sql yaitu select * from barang. Fungsi ini akan

menghasilkan suatu variabel hasil (result) jika query sukses dieksekusi, dan akan

menghasilkan nilai FALSE jika query ada kesalahan.

Variable hasil akan berguna untuk proses-proses berikutnya seperti pengambilan

data/record.

15 Perintah $banyak=mysql_num_rows($result) berguna untuk menghitung berapa

banyak data (numbers of rows) yang ada di variable hasil $result yang akan diisikan

ke variable $banyak.

16 Pemeriksaan kondisi apakah $banyak yang menunjukan banyaknya record bernilai >

0 (data ditemukan), maka akan mengeksekusi baris 18 sampai baris 36 dan jika

bernilai 0 akan mengeksekusi baris 40.

18 Menampilkan banyak data yang ditemukan

20 - 24 Membuat tabel beserta baris judulnya (header) untuk menampilkan data.

Page 49: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 46

BARIS PENJELASAN

26 Perulangan selama $data tidak bernilai FALSE (tidak ada data), sedangkan isi

variable $data-nya sendiri berasal dari fungsi mysql_fetch_row($result).

Fungsi mysql_fetch_row($result) berfungsi untuk mengambil 1 record data dari

variable $result yang kemudian disimpan dalam sebuah array. Dalam contoh di atas

variable arraynya adalah $data. Oleh karena itu maka field pertama dari hasil query

dapat diakses dengan $data[0], data kedua dengan $data[1] dan seterusnya.

Perulangan ini akan mengeksekuai baris 28 – 32.

28 - 32 Membuat baris baru (<tr>) kemudian cell pertama (<td> pertama) diisi dengan

$data[0] yaitu dari field kode, cell kedua (<td> kedua) diisi dengan $data[1] yaitu dari

field nama dan seterusnya. Pada <td> ke 4, data ditampilkan dengan memanfaatkan

fungsi number_format. Kemudian diakhiri dengan </tr> untuk menutup baris.

35 Menutup table.

40 Baris ini akan dieksekusi jika variable $banyak bernilai 0 (kurang dari 1)

Agar lebih jelas, ubahlah isi variable $sql dengan query di bawah ini.

select * from barang order by tanggalmasuk

select * from barang order by harga desc

select * from barang where harga>=10000

select * from barang where tanggalmasuk is null

select nama,kode,tanggalmasuk, stok, harga from barang

select kode, nama, tanggalmasuk, harga from barang

select * from barang limit 0,2

select * from barang limit 2,2

select * from barang where year(tanggalmasuk)=2005

select kode, nama, date_format(tanggalmasuk,'%d-%M-%Y'),harga,stok from barang

Untuk 2 perintah SQL terakhir menggunakan fungsi-fungsi MySQL. Untuk lebih jelas dan

mempelajari fungsi yang ada di MySQL silahkan baca dokumentasi MySQL.

Coba modifikasi program di atas agar tampilannya bagus misalkan dengan mengatur warna

untuk tiap baris yang ganjil dan baris yang genap atau menuliskan stock dengan warna merah

kalau stok kurang dari 10.

Page 50: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 47

MENAMBAH DATA MELALUI WEB Proses penambahan data memerlukan suatu sarana tempat user/pengunjung untuk mengisikan

data yang akan disimpan di database. Sarana tersebut adalah sebuah form.

Untuk kasus database penjualan, maka form yang diperlukan adalah

Dalam form di atas terdapat beberapa objek sebagai berikut :

Nama Objek Keterangan

kode Objek ini berupa text box untuk pengisian field kode barang

nama Objek ini berupa text box untuk pengisian field nama barang

tanggal Objek ini berupa combo box untuk pengisian tanggal dari field tanggal

masuk.

bulan Objek ini berupa combo box untuk pengisian bulan dari field tanggal

masuk.

tahun Objek ini berupa combo box untuk pengisian tahun dari field tanggal

masuk.

harga Objek ini berupa text box untuk pengisian field harga

stok Objek ini berupa text box untuk pengisian field stok

simpan Objek ini berupa tombol submit untuk tombol simpan

reset Objek ini berupa tombol reset.

Page 51: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 48

Nama File : tambahdata.php 1 2 3 4 5 6 7 8 9

10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58

<html> <head> <title>Penambahan Data Barang</title> </head> <body> <table border=1 width=100%> <tr><td align=center><h1>Toko Online</h1></td></tr> </table> <hr> <form action="prosestambah.php" method="post"> <table border="1" align="center"> <tr> <td colspan=2 align=center><b>PENAMBAHAN DATA BARANG</b></td> </tr> <tr> <td>Kode</td> <td><input name=kode type=text size=6 maxlength=5></td> </tr> <tr> <td>Nama</td> <td><input name=nama type=text size=21 maxlength=20></td> </tr> <tr> <td>Tanggal Masuk </td> <td> <select name=tanggal> <? for($i=1;$i<=31;$i++) echo "<option>$i</option>"; ?> </select> - <select name=bulan> <option value="1">Januari</option> <option value="2">Februari</option> <option value="3">Maret</option> <option value="4">April</option> <option value="5">Mei</option> <option value="6">Juni</option> <option value="7">Juli</option> <option value="8">Agustus</option> <option value="9">September</option> <option value="10">Oktober</option> <option value="11">November</option> <option value="12">Desember</option> </select> - <select name=tahun> <? for($i=2005;$i>=1990;$i--) echo "<option>$i</option>"; ?> </select></td> </tr> <tr> <td>Harga</td> <td><input name=harga type=text size=10 maxlength=9></td> </tr>

Page 52: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 49

59 60 61 62 63 64 65 66 67 68 69 70 71

<tr> <td>Stok</td> <td><input name=stok type=text size=10 maxlength=9></td> </tr> <tr> <td>&nbsp;</td> <td><input name=simpan type=submit value="Simpan"> <input type="reset" value="Reset"></td> </tr> </table> </form> </body> </html>

Keterangan Script :

BARIS PENJELASAN

6 - 8 Pembuatan judul/header halaman

10 Awal pembuatan form yang akan mengeksekusi file prosestambah.php ketika

tombol simpan (submit) di klik.

17 Pembuatan objek text box dengan nama objek kode dengan panjang objek 6 karakter

dengan maksimal panjang text adalah 6 karakter untuk pengisian field kode.

21 Pembuatan objek text box dengan nama objek nama dengan panjang objek 21

karakter dengan maksimal panjang isi adalah 20 karakter untuk pengisian field nama.

26 - 31 Pembuatan objek select dengan nama objek tanggal untuk pengisian tanggal dari

field tanggal masuk. Agar lebih sederhana, pembuatan option-nya dibuat dengan

menggunakan perulangan dari 1 sampai 31.

33 - 46 Pembuatan objek select dengan nama objek bulan untuk pengisian bulan dari field

tanggal masuk. Pilihan yang tampil berupa nama bulan tetapi yang menjadi value-nya

adalah nomor bulannya.

48 - 53 Pembuatan objek select dengan nama objek tahun untuk pengisian tahun dari field

tanggal masuk. Agar lebih sederhana, pembuatan option-nya dibuat dengan

menggunakan perulangan dari 2005 sampai 1990.

57 Pembuatan objek text box dengan nama objek harga dengan panjang objek 10

karakter dengan maksimal panjang isi adalah 9 karakter untuk pengisian field harga.

61 Pembuatan objek text box dengan nama objek stok dengan panjang objek 10

karakter dengan maksimal panjang isi adalah 9 karakter untuk pengisian field harga.

65 Pembuatan tombol submit dengan nama objeknya simpan dengan caption/tulisan

simpan.

66 Pembuatan objek tombol reset.

69 Akhir pembuatan form.

Page 53: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 50

Langkah berikutnya adalah membuat file koneksidb.php yang berguna sebagai file yang isinya

berisi perintah koneksi ke suatu server mysql dan penentuan nama database yang akan dipakai

di aplikasi yang dibuat. Koneksi ke server sengaja dibuat terpisah agar ketika ada perubahan

nama server, user name, password atau nama database maka kita tidak perlu mengedit banyak

file tetapi hanya file koneksidb.php saja. File ini nantinya akan dipanggil/di-include-kan pada file-

file lainnya baik di tambah data, edit data, hapus data, view data, dan file lainnya yang

memerlukan koneksi ke database.

Nama File : koneksidb.php 1 2

3 4

<? mysql_connect("localhost","","") or die("MySQL Tidak Aktif Atau User Salah"); mysql_select_db("penjualan") or die("Database Tidak Ditemukan"); ?>

Langkah berikutnya adalah membuat file yang akan dieksekusi ketika tombol simpan pada form

pengisian data diklik. Nama file ini adalah sesuai action di form tambah data yaitu

prosestambah.php.

Agar konsisten, sebaiknya file viewdata.php diedit dengan menghilangkan perintah

mysql_connect() dan mysql_select_db() kemudian diganti dengan perintah

include("koneksidb.php").

Page 54: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 51

Nama File : prosestambah.php 1 2 3 4 5 6 7 8 9

10 11 12

13

14 15 16

17 18 19 20

21 22 23 24

<html> <head> <title>Proses Penambahan Data Barang</title> </head> <body> <table border=1 width=100%> <tr><td align=center><h1>Toko Online</h1></td></tr> </table> <hr> <? include("koneksidb.php"); $sql="insert into barang values('$kode','$nama','$tahun-$bulan-$tanggal',$harga,$stok)"; $res=mysql_query($sql) or die("Query : <b>$sql</b> dengan Kesalahan : ".mysql_error()); if($res)//jika query berhasil { echo "<center>Data telah disimpan. <br> <a href=viewdata.php>View Data</a> <a href=tambahdata.php>Tambah Lagi</a> </center>"; } else //jika query gagal { echo "<center><font color=red>Data gagal disimpan</font> </center>"; } ?> </body> </html>

Bagian terpenting dari script di atas adalah pada baris 12 yaitu proses penyusunan perintah

query yang akan dikirim/dieksekusi ke server mysql.

Jika form diisi seperti gambar penambahan data di atas (halaman 6), maka tentunya query yang

harus terbentuk adalah : insert into barang values('PG002','Penggaris 50 cm','2005-6-7',5000 ,20)

Dari perintah query di atas ada beberapa bagian yang isinya berasal dari form yaitu bagian

PG002 dari objek kode, Penggaris 50 cm dari objek nama, 2005 dari objek tahun, 6 dari objek

bulan, 7 dari objek tanggal, 5000 dari objek harga dan 20 dari objek stok. Oleh karena itu maka

perintah php yang digunakan untuk menyusun query tersebut adalah : $sql="insert into barang values('$kode','$nama','$tahun-$bulan-$tanggal', $harga, $stok)";

Page 55: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 52

Keterangan script prosestambah.php

BARIS PENJELASAN

6 - 8 Pembuatan judul/header halaman web

11 Memanggil file koneksidb.php untuk melakukan koneksi ke database mysql.

12 Penyusunan query yang akan dikirim ke server mysql. (lebih jelas diterangkan di

halaman sebelumnya).

13 Melakukan eksekusi query yang ada di variable $sql dan menyimpan hasil

eksekusinya di dalam variable $res.

14 - 17 Jika eksekusi berhasil ( if($res) ), maka akan mengeksekusi perintah di baris 16

yang akan menampilkan pesan Data telah disimpan diikuti dengan link ke

viewdata.php untuk melihat data dan juga link ke tambahdata.php jika ingin

melakukan proses penambahan data lagi.

18 - 21 Jika eksekusi query tidak berhasil, maka akan menampilkan pesan Data gagal disimpan dengan warna tulisan merah.

Setelah kita mengisi data di form pengisian data dan disusul dengan mengklik tombol simpan,

maka jika berhasil akan menampilkan tampilan seperti di bawah ini :

Jika data tersimpan Jika data gagal disimpan

Data gagal disimpan karena data adanya

duplikasi data pada kode BK007.

Perintah yang ada di bagian else sebenarnya tidak akan dikerjakan, karena jika terjadi kesalahan

maka perintah die() akan dieksekusi yang akibatnya akan meng-cancel perintah dibawahnya.

Page 56: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 53

Jika ingin perintah yang dibagian else yang dieksekusi ketika terjadi kesalahan pengisian data,

maka perintah die() yang ada di baris 13 dihilangkan sehingga perintah baris 13 menjadi : $res=mysql_query($sql);

dan kemudian pada baris 20 ditambahkan mysql_error() sehingga perintahnya menjadi echo "<center><font color=red>Data gagal disimpan<br>Dengan Kesalahan : <b>". mysql_error()."</b></font></center>";

Maka jika terjadi kesalahan pengisian data, maka di browser akan tampil pesan seperti di bawah

ini :

Latihan : Perbaiki tampilan dengan memberikan warna atau gambar-gambar yang sesuai.

Perbaiki proses penyimpanan data dengan validasi data sehingga jangan sampai user

mengisi data kosong di form, juga validasi tanggal jangan sampai user mengisi tanggal yang

tidak ada seperti tanggal 30-Februari-2005, serta periksa pula isian harga dan stok jangan

sampai mengisikan data yang bukan angka.

Mulailah menggunakan Macromedia Dreamweaver untuk pendesainan web yang lebih baik.

Page 57: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 54

PENCARIAN DATA Fasilitas pencarian data sangat diperlukan untuk melakukan filter terhadap data, sehingga data

yang ditampilkan adalah data yang memenuhi kriteria tertentu.

Oleh karena itu, untuk membuat suatu halaman web untuk pencarian data tentunya kita akan

membutuhkan form untuk pengisian kriterianya. Form yang diperlukan dapat berupa form seperti

di bawah ini.

Di form di atas terdapat 4 objek form yaitu :

Nama Objek Keterangan

field Objek ini berupa select untuk pemilihan field pencarian. Objek ini

mempunyai option Kode, Nama, Tanggalmasuk, Harga dan Stok.

kondisi Objek ini berupa select untuk pemilihan kondisi pencarian. Objek ini

mempunyai option sama dengan (=), lebih besar (>), lebih besar atau

sama dengan (>=), lebih kecil (<), lebih kecil atau sama dengan (<=), tidak

sama dengan (<>), dan mengandung kata (like).

kunci Objek ini berupa text box untuk pengisian kata kunci pencarian.

cari Objek ini berupa tombol submit.

Jika kriteria pencarian telah diisi, kemudian mengklik tombol cari, maka php harus dapat

melakukan pencarian data berdasarkan kriteria yang telah diisi.

Prinsipnya, proses pencarian mirip dengan proses menampilkan data, bedanya hanyalah di

bagian querynya dan adanya form pengisian kriterianya.

Agar lebih simple, open file viewdata.php kemudian di save as menjadi caridata.php dan

kemudian editlah file tersebut dengan menambahkan form pengisian kriteria pencarian dan

perintah penyusun query. Editlah file tersebut seperti script di bawah ini :

Page 58: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 55

Nama File : caridata.php 1 2 3 4 5 6 7 8 9

10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58

<html> <head> <title>Pencarian Data Barang</title> </head> <body> <table border=1 width=100%> <tr><td align=center><h1>Toko Online</h1></td></tr> </table> <hr> <form action="<? echo $php_self;?>" method="post"> <table border="1" align="center"> <tr> <td align="center"><b>PENCARIAN DATA</b></td> </tr> <tr> <td align=center> <select name="field"> <option value="kode">Kode</option> <option value="nama">Nama</option> <option value="tanggalmasuk">Tanggal</option> <option value="harga">Harga</option> <option value="stok">Stok</option> </select> <select name="kondisi"> <option value="=">=</option> <option value=">">&gt;</option> <!-- &gt; => tanda > --> <option value=">=">&gt;=</option> <option value="<">&lt;</option> <!-- &lt; => tanda < --> <option value="<=">&lt;=</option> <option value="<>">Tidak Sama</option> <option value="like">Mengandung Kata</option> </select> <input name="kunci" type="text"> <input name="cari" type="submit" value="Cari"></td> </tr> </table> </form> <? if($cari)// jika tombol cari diklik { include("koneksidb.php"); if($kondisi != "like") $sql="select * from barang where $field $kondisi '$kunci'"; else $sql="select * from barang where $field like '%$kunci%'"; $result=mysql_query($sql) or die("Error : ".mysql_error()); $banyak=mysql_num_rows($result); if($banyak>0) { echo "<center>Data yang ditemukan : $banyak data</center>"; ?> <table border=1 align="center"> <tr align=center> <td>KODE</td><td>NAMA BARANG</td><td>TANGGAL MASUK</td> <td>HARGA</td><td>STOK</td> </tr> <?

1

2

Page 59: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 56

59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80

while($data=mysql_fetch_row($result)) { echo"<tr> <td>$data[0]</td><td>$data[1]</td> <td align=center>$data[2]</td> <td align=right>Rp. ".number_format($data[3])."</td> <td>$data[4]</td> </tr>"; } ?> </table> <? }// end if ($banyak>0) else { echo "<font color=red><center>Tidak ada data barang di dalam database yang sesuai kriteria</center></font>"; } }//end if ($cari) ?> </body> </html>

Ada 2 bagian yang perlu ditambahkan yaitu form pengisian kriteria pencarian (ditandai dengan

blok perintah nomor 1), dan perintah penyusunan query pencarian (ditandai dengan blok perintah

nomor 2).

Pada blok perintah nomor 1, itu hanya perintah html untuk membuat form pengisian kriteria

pencarian. (silahkan pelajari sendiri).

Pada blok perintah nomor 2, itu adalah script penyusunan query. Ada 2 kasus yang harus

diperhatikan, diantaranya :

1. Jika pencarian menggunakan operator perbandingan biasa ( =, >, >=, <, <= atau <>)

Contoh :

Jika pengisian kriteria seperti gambar di atas, maka perintah yang dibutuhkan adalah select * from barang where harga >= '10000'

Dari query di atas, maka ada 3 bagian yang selalu berubah yaitu bagian harga yang diisi dari

objek select field, >= yang isinya berasal dari objek select kondisi, dan 10000 yang isinya

berasal dari objek text box kunci. Oleh karena hal itu, perintah untuk menyusun querynya

adalah :

Page 60: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 57

$sql="select * from barang where $field $kondisi '$kunci' ";

2. Jika pencarian tidak menggunakan operator perbadingan biasa seperti perintah like.

Contoh :

Jika pengisian kriteria seperti gambar di atas, maka perintah yang dibutuhkan adalah

select * from barang where nama like '%Buku%'

Dari query di atas, maka ada 2 bagian yang selalu berubah yaitu bagian nama yang diisi dari

objek select field, dan Buku yang isinya berasal dari objek text box kunci. Oleh karena hal

itu, perintah untuk menyusun querynya adalah :

$sql="select * from barang where $field like '%$kunci%' ";

Oleh karena 2 hal tersebut di atas, maka perintah penyusunan querynya harus memiliki perintah

pengkondisian (if), sehingga perintah penyusunan querynya seperti di bawah ini.

if($kondisi != "like") $sql="select * from barang where $field $kondisi '$kunci'"; else $sql="select * from barang where $field like '%$kunci%'";

Page 61: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 58

PENGHAPUSAN DATA Untuk membuat halaman penghapusan data, form yang diperlukan minimal seperti di bawah ini.

Dalam form di atas, terdapat 2 objek yaitu :

Nama Objek Keterangan

kode Objek ini berupa text box yang digunakan untuk memasukan kode barang

yang akan dihapus.

hapus Objek ini berupa tombol submit

Jika seorang user telah mengisi kode barang, dan kemudian mengklik tombol hapus maka php

akan melakukan proses penghapusan terhadap data dengan kode barang yang telah diisikan

oleh user.

Agar lebih sederhana, action dari form ini adalah ke file ini sendiri. Tetapi proses hanya dapat

dilakukan setelah penekanan tombol hapus.

Nama File : hapusdata.php 1 2 3 4 5 6 7 8 9

10 11 12 13 14 15 16 17 18 19 20 21 22

<html> <head> <title>Penghapusan Data Barang</title> </head> <body> <table border=1 width=100%> <tr><td align=center><h1>Toko Online</h1></td></tr> </table> <hr> <form action="<? echo $php_self;?>" method="post"> <table border="1" align="center"> <tr> <td colspan="2"align="center"><b>PENGHAPUSAN DATA </b></td> </tr> <tr> <td>Kode Barang </td> <td><input name="kode" type="text" size=10 maxlength=6></td> </tr> <tr> <td>&nbsp;</td> <td><input name="hapus" type="submit" value="Hapus"></td> </tr>

Page 62: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 59

23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42

</table> </form> <? if($hapus) // jika tombol hapus diklik { include("koneksidb.php"); $sql="delete from barang where kode='$kode' "; $result=mysql_query($sql) or die("Query <b>$sql</b> memiliki kesalahan ".mysql_error()); if(mysql_affected_rows()>0)// Jika record yang terhapus lebih dari 0 { echo "<center>Data dengan kode <b>$kode</b> telah dihapus<br><a href=viewdata.php>View Data</a></center>"; } else { echo "<center>Tidak ada data dengan kode <b>$kode</b>, data tidak ada yang dihapus</center>"; } } ?> </body> </html>

Keterangan script :

BARIS PENJELASAN

6 - 8 Pembuatan header/judul halaman web dengan tulisan “Toko Online”

10 Awal pembuatan form dengan action ke file yang sama ($php_self)

17 Pembuatan objek dengan nama kode untuk pengisian kode barang yang akan

dihapus.

21 Pembuatan tombol hapus

24 Akhir pembuatan form.

26 Pemeriksaan kondisi apakah tombol hapus telah diklik. Jika tombol hapus tersebut

telah diklik, maka php akan mengeksekusi perintah dari baris 27 s/d 34.

28 Pemanggilan file koneksidb.php yang didalamnya berisi perintah koneksi ke mysql.

29 Penyusunan query penghapusan data. Penghapusan yang dilakukan hanya

berdasarkan pada kode barang yang diisi di form sebelumnya. Sehingga perintah

penyusunannya adalah : $sql="delete from barang where kode='$kode' ";

Jika dalam form pengisian kode barang diisi dengan kode BK001 maka query yang

dihasilkan dari perintah di atas adalah

$sql="delete from barang where kode='BK001' ";

Page 63: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 60

30 Eksekusi query yang ada di dalam variable $sql dan menyimpan hasilnya dalam

variable $result.

31 Pemeriksaan apakah data yang terhapus (affected rows) melebihi 0 (ada yang

dihapus), jika benar maka php akan mengeksekusi perintah baris 33.

33 Menampilkan pesan bahwa data dengan kode yang diisi di form telah dihapus dan

dibawahnya akan menampilkan link ke viewdata.php.

37 Menampilkan pesan bahwa data dengan kode yang diisikan di form gagal dihapus

karena mungkin kode tersebut tidak ada di table barang.

39 Akhir if ( if($hapus) )

Jika dijalankan, maka akan menghasilkan tampilan seperti di bawah ini.

Page 64: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 61

Setelah kode barang diisi, misalkan BK001, dan kemudian diklik tombol Hapus, maka jika data

tersebut memang ada maka akan menghasilkan tampilan seperti di bawah ini.

Jika data dengan kode yang diinputkan tidak ada di dalam database, maka tampilan yang muncul

adalah seperti gambar di bawah ini.

Pesan: Data

Telah Dihapus

Pesan: Data

Tidak Dihapus

Page 65: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 62

Dengan form di atas, kode barang diinputkan secara manual dengan menulis kode yang

diinginkan. Bisa saja pengisian kode berupa pilihan (select), dimana data pilihannya berasal dari

data barang yang ada di database. Oleh karena itu, objek form yang bernama kode (<input

name="kode" type="text" size=10 maxlength=6>) diganti dengan script berikut : 1 2 3 4 5 6 7 8 9

10

<select name=kode> <option value=''>Pilih Kode</option> <? include("koneksidb.php"); $sql="select kode,nama from barang order by nama"; $res=mysql_query($sql); while($data=mysql_fetch_row($res)) echo "<option value='$data[0]'>($data[0])-$data[1]</option>"; ?> </select>

BARIS PENJELASAN

1 Awal pembuatan objek select dengan nama objek kode

2 Membuat pilihan pertama dengan tulisan Pilih Kode dengan value ‘’ (string kosong).

3 Awal script php pembuatan pilihan

4 Memanggil perintah-perintah koneksi database yang ada di file koneksidb.php.

5 Menentukan query yang akan dikirim ke server mysql. Perintah yang digunakan

cukup hanya mengambil field kode dan nama saja dan agar mempermudah mencari

barang, data diurutkan berdasarkan field nama. Query yang akan dieksekusi

disimpan dalam variable $sql.

6 Eksekusi query $sql dan simpan result-nya di variable $res.

7 Lakukan perulangan pengambilan 1 baris data (mysql_fetch_row())dari hasil query

$res selama datanya masih ada dan simpan data tersebut dalam variable $data..

8 Tuliskan option berdasarkan variable $data dimana sebagai property value diisi dari

field kode ($data[0]). Sedangkan yang ditulis sebagai pilihan adalah gabungan

antara field kode dan field nama ($data[0] - $data[1]).

9 Akhir script php

10 Akhir pembuatan objek select.

Jika dijalankan, maka tampilan yang muncul adalah :

Page 66: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 63

Jika tombol panah kebawah diklik maka akan muncul daftar pilihan sesuai dengan yang ada di

dalam table barang. Perhatikan gambar di bawah ini.

Langkah seperti ini (pemilihan kode dibuat dari data di table barang) kurang cocok jika digunakan

untuk data yang banyak, karena untuk membuat pilihannya akan membutuhkan waktu yang lama

pula. Jika data sudah mencapai ratusan atau ribuan data, langkah pertama (menggunakan objek

text) akan lebih cepat dan lebih disarankan.

PENGEDITAN DATA Pengeditan kadang diperlukan jika kita salah dalam mengisi data. Tetapi langkah untuk

pengeditan agak berbeda dengan langkah-langkah proses sebelumnya. Langkah yang

diperlukan untuk melakukan pengeditan memerlukan 3 langkah yaitu :

1. Pemilihan barang yang akan diedit dengan menginputkan kode barangnya.

2. Menampilkan data barang dari kode barang yang tadi diinputkan ke suatu form.

3. Lakukan proses update berdasarkan data baru yang diinputkan di form

Untuk langkah 1, form yang diperlukan mirip dengan penghapusan data. Anda boleh

menggunakan text (kode diinput manual) atau dengan menggunakan select yang pilihannya

berdasarkan data di database.

atau

Page 67: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 64

Nama File : editdata.php 1 2 3 4 5 6 7 8 9

10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27

<html> <head> <title>Pengeditan Data Barang</title> </head> <body> <table border=1 width=100%> <tr><td align=center><h1>Toko Online</h1></td></tr> </table> <hr> <form action="formedit.php" method="post"> <table border="1" align="center"> <tr> <td colspan="2"align="center"><b>PENGEDITAN DATA</b></td> </tr> <tr> <td>Kode Barang </td> <td><input type=text name=kode size=6 maxlength=9> </td> </tr> <tr> <td>&nbsp;</td> <td><input name="edit" type="submit" value="Edit"></td> </tr> </table> </form> </body> </html>

Jika dijalankan, maka akan muncul tampilan seperti di bawah ini

Dari form di atas diketahui bahwa action form-nya adalah ke file formedit.php. Dalam file ini

harus memiliki kemampuan untuk mencari barang sesuai kode barang yang diinputkan dan harus

menampilkannya dalam bentuk form.

Page 68: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 65

Nama File : formedit.php 1 2 3 4 5 6 7 8 9

10 11 12

13

14 15 16

17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47

<html> <head> <title>Pengeditan Data Barang</title> </head> <body> <table border=1 width=100%> <tr><td align=center><h1>Toko Online</h1></td></tr> </table> <hr> <? include("koneksidb.php"); $sql="Select kode,nama,dayofmonth(tanggalmasuk), month(tanggalmasuk), year(tanggalmasuk), harga,stok from barang where kode='$kode' "; $res=mysql_query($sql)or die("Ada Error SQL : <b>$sql</b> di ".mysql_error()); if(mysql_num_rows($res)==0) { echo "<center>Data dengan kode <b>$kode</b> Tidak ditemukan<br><a href=editdata.php>Edit Data Lain</a> <a href=viewdata.php> View Data</a></center>"; } else { $data=mysql_fetch_row($res); ?> <form action="prosesupdate.php" method="post"> <input type=hidden name=kodeasal value="<? echo $data[0];?>"> <table border="1" align="center" bordercolor="#000000"> <tr> <td colspan="2"align="center"><b>PENGEDITAN DATA </b></td> </tr> <tr> <td>Kode</td> <td><input name=kode type=text size=6 maxlength=5 value="<? echo $data[0];?>"></td> </tr> <tr> <td>Nama</td> <td><input name=nama type=text size=21 maxlength=20 value="<? echo $data[1];?>"></td> </tr> <tr> <td>Tanggal Masuk </td> <td> <input type=text name=tanggal maxlength=2 size=5 value="<? echo $data[2];?>">- <input type=text name=bulan maxlength=2 size=5 value="<? echo $data[3];?>">- <input type=text name=tahun maxlength=4 size=5 value="<? echo $data[4];?>"> </td> </tr> <tr> <td>Harga</td> <td><input name=harga type=text size=10 maxlength=9 value="<? echo $data[5];?>"></td> </tr>

Page 69: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 66

48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64

<tr> <td>Stok</td> <td><input name=stok type=text size=10 maxlength=9 value="<? echo $data[6];?>"></td> </tr> <tr> <td>&nbsp;</td> <td><input name="update" type="submit" value="Update"> <input type="reset" value="Data Asal"> </td> </tr> </table> </form> <? }// end if ?> </body> </html>

Keterangan script : formedit.php

BARIS PENJELASAN

6 - 8 Pembuatan header halaman web dengan tulisan “Toko Online”

11 Pemanggilan perintah koneksi database MySQL yang ada di file koneksidb.php.

12 Pembuatan perintah query yang berguna untuk mengambil data field kode, nama,

bagian tanggal ( dayofmonth() ) dari tanggalmasuk, bagian bulan ( month() ) dari

tanggalmasuk, bagian tahun ( year() )dari tanggalmasuk, serta field harga dan

stok yang kodenya sesuai dengan kode yang diisikan di form sebelumnya

(kode=’$kode’). Perintah query ini disimpan dalam variable $sql.

13 Eksekusi query yang ada di $sql dan simpan penunjuk hasilnya di $res.

14 Pemeriksaan apakah banyak data dari hasil query $res sama dengan 0. Jika

pernyataan ini bernilai true maka itu menandakan kode barang yang akan diedit tidak

ditemukan. Jika data tidak ditemukan maka perintah yang akan dieksekusi adalah

perintah dari baris 15 – 17 sedangkan jika data ditemukan, maka perintah yang akan

dieksekusi adalah dari baris 19 – 61.

16 Tampilan pesan bahwa data dengan kode yang diisi di form sebelumnya tidak

ditemukan. Selain pesan itu, juga akan tampil link ke editdata.php jika ingin mengedit

data lain atau mengganti kode, serta link ke viewdata.php untuk melihat data yang

ada di database.

20 Ambil sebuah data (mysql_fetch_row()), dan simpan dalam variable array $data,

dimana $data[0] adalah field kode, $data[1] adalah field nama, $data[2] adalah field

tanggal, $data[3] adalah field bulan, $data[4] adalah field tahun, $data[5] adalah

field harga dan $data[6] adalah field stok.

Page 70: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 67

22 Awal pembuatan form pengeditan data yang mempunyai properti action ke

prosesupdate.php.

23 Pembuatan objek form yang bertipe hidden (tersembunyi) dengan nama objek

kodeasal yang datanya/value berasal dari $data[0] yaitu field kode. Objek ini tidak

akan terlihat di browser karena di-hide sehingga tidak bisa diedit oleh user. Adanya

objek ini dibutuhkan jika field kode barang diedit. Jadi objek ini dibuat untuk

menyimpan kode barang yang sekarang sebelum kode barang diedit.

30 Pembuatan objek form yang bertipe text box untuk pengeditan kode barang dimana

nilai awalnya/value berasal dari $data[0] yaitu field kode.

34 Pembuatan objek form yang bertipe text box untuk pengeditan kode barang dimana

nilai awalnya/value berasal dari $data[1] yaitu field kode.

39 Pembuatan objek form yang bertipe text box untuk pengeditan bagian tanggal dari

field tanggalmasuk dimana nilai awalnya/value berasal dari $data[2].

40 Pembuatan objek form yang bertipe text box untuk pengeditan bagian bulan dari field

tanggalmasuk dimana nilai awalnya/value berasal dari $data[3].

41 Pembuatan objek form yang bertipe text box untuk pengeditan bagian tahu dari field

tanggalmasuk dimana nilai awalnya/value berasal dari $data[4].

46 Pembuatan objek form yang bertipe text box untuk pengeditan harga barang dimana

nilai awalnya/value berasal dari $data[5] yaitu field harga.

50 Pembuatan objek form yang bertipe text box untuk pengeditan stok barang dimana

nilai awalnya/value berasal dari $data[6] yaitu field harga.

54 Pembuatan tombol submit dengan nama update dan memiliki tulisan/caption

“Update”

55 Pembuatan tombol reset dengan tulisan/caption “Data Asal” yang berguna untuk

mengembalikan isi form yang telah berubah isinya ke data sebelum diedit.

61 Akhir dari kondisi jika banyak baris yang ditemukan lebih besar dari 0 (data ada).

Page 71: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 68

Setelah kita memanggil editdata.php dan mengisi suatu kode barang maka jika data ditemukan

anda dapat melihat suatu form yang didalamnya sudah terisi data dari barang dengan kode yang

tadi diinputkan.

Jika data yang diinputkan tidak ditemukan maka akan muncul tampilan seperti di bawah ini.

Page 72: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 69

Nama File : prosesupdate.php 1 2 3 4 5 6 7 8 9

10 11 12

13 14 15 16 17 18

19 20 21 22

23 24 25 26 27 28 29 30 31

<html> <head> <title>Proses Update Data Barang</title> </head> <body> <table border=1 width=100%> <tr><td align=center><h1>Toko Online</h1></td></tr> </table> <hr> <? include("koneksidb.php"); $sql="update barang set kode='$kode',nama='$nama', tanggalmasuk='$tahun-$bulan-$tanggal', harga='$harga', stok='$stok' where kode='$kodeasal' "; $res=mysql_query($sql); if($res)//jika query berhasil { if(mysql_affected_rows()>0) { echo "<center>Data telah disimpan. <br> <a href=viewdata.php>View Data</a> <a href=editdata.php>Edit Lagi</a> </center>"; } else { echo "<center>Update OK, tetapi tidak ada data yang berubah.<br><a href=viewdata.php>View Data</a> <a href=editdata.php>Edit Lagi</a></center>"; } } else { echo "<center><font color=red>Data gagal diupdate<br> Dengan Kesalahan : <b>".mysql_error()."</b> <a href='javascript:history.back();'>Kembali Ke Form</a></font></center>"; } ?> </body> </html>

Keterangan script : prosesupdate.php

BARIS PENJELASAN

6 - 8 Membuat header/judul halaman web dengan tulisan “Toko Online”

11 Lakukan koneksi ke database dengan memanggil isi file koneksidb.php.

12 Penyusunan query untuk mengupdate data, dimana field kode diisi dari $kode, field

nama diisi dari $nama, field tanggalmasuk diisi dari gabungan $tahun-$bulan-

$tanggal, field harga diisi dari $harga dan field stok diisi dari $stok. Untuk filternya

digunakan where kode=’$kodeasal’ bukan where kode=’$kode’, karena kalau

memakai $kode akan memungkinkan kesalahan karena $kode bisa diedit oleh user

sedangkan $kodeasal tidak bisa diedit oleh user karena bertipe hidden. Query ini

Page 73: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 70

disimpan dalam variable $sql.

13 Jalankan query yang ada di variable $sql dan simpan penunjuk hasil eksekusinya di

dalam variable $res.

14 Pemeriksaan apakah query berhasil. Jika eksekusi berhasil, maka perintah yang akan

dieksekusi adalah perintah di baris 17 – 23 tetapi jika eksekusi query tidak berhasil

maka perintah yang akan dieksekusi adalah perintah di baris 26 -28.

16 Pemeriksaan apakah banyak data yang berubah (mysql_affected_rows()) lebih dari

0 record. Jika pernyataan ini benar, maka perintah yang akan dieksekusi adalah

perintah dari baris 17 – 19 dan jika pernyataan ini salah maka perintah yang akan

dieksekusi adalah perintah baris 21 – 23..

18 Menampilkan pesan bahwa data telah disimpan (diupdate), selain itu juga

menampilkan link ke viewdata.php dan ke editdata.php.

22 Menampilkan pesan bahwa update sukses tetapi tidak ada data yang berubah. Ini

terjadi jika kita tidak mengedit satu field pun tetapi menekan tombol update.

27 Menampilkan pesan data gagal diupdate. Ini bisa disebabkan karena kesalahan

penyusunan query. Selain pesan, yang akan ditampilkan juga adalah link ke halaman

sebelumnya ( history.back()) atau kembali ke form.

Jika anda mengupdate dan mengubah salah satu datanya, maka akan muncul tampilan yang

menandakan bahwa data telah diupdate. Lihat gambar di bawah ini :

Page 74: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 71

Jika anda mengklik tombol update tanpa mengubah salah satu pun dari data yang ada di form

maka tampilan yang muncul adalah :

Tetapi jika anda melakukan pengeditan terhadap kode barang, tetapi kode yang baru ternyata

telah ada di dalam database, maka tampilan yang muncul adalah :

Page 75: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 72

Jika tanggal ingin diinputkan sebagai sebuah pilihan (select), maka perintah pembuatan objek

text box yang bernama tanggal, bulan dan tahun yang ada di baris 39 - 41 pada file

formedit.php harus diganti dengan script php seperti di bawah ini. 1 2 3 4 5 6 7 8 9

10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38

<select name=tanggal> <option value='0'>Pilih Tanggal</option> <? for($i=1;$i<=31;$i++) { if($i==$data[2]) echo "<option selected>$i</option>"; else echo "<option>$i</option>"; } ?> </select>- <select name=bulan> <? $bulan=array("Pilih Bulan","Januari","Februari","Maret", "April","Mei","Juni","Juli","Agustus", "September","Oktober","November","Desember"); for($i=0;$i<=12;$i++) { if($i==$data[3]) echo "<option value='$i' selected>$bulan[$i]</option>"; else echo "<option value='$i'>$bulan[$i]</option>"; } ?> </select>- <select name=tahun> <option value='0'>Pilih Tahun</option> <? for($i=2005;$i>=1990;$i--) { if($i==$data[4]) echo "<option selected>$i</option>"; else echo "<option>$i</option>"; } ?> </select>

Keterangan script

BARIS PENJELASAN

1 Awal pembuatan objek select dengan nama tanggal

2 Option pertama dari objek select dengan value=0 dan tulisan pilihan “Pilih Tanggal”. Pilihan ini akan tampil jika tanggalmasuk dari database tidak benar.

4 – 10 Perulangan untuk $i dari 1 sampai 31. Jika $i sama dengan $data[2] (bagian tanggal dari tanggalmasuk) maka dibuat option yang langsung dipilih (selected) dan jika tidak

sama maka hanya akan membuat option berupa angka tanggal saja.

12 Akhir dari objek tanggal.

Page 76: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 73

13 Awal pembuatan objek select dengan nama bulan.

15 - 17 Pembuatan variable $bulan yang digunakan untuk menampung nama-nama bulan,

agar option objek select bulan dapat dilakukan dengan perulangan untuk $i dari 0

sampai 12 dimana 0 menunjukan bahwa data belum diisi.

19 - 24 Perulangan untuk pembuatan option-option select bulan, dimulai dari 0 – 12 dimana 0

menunjukan data belum dipilih, 1 menunjukan januari dst. Jika variable counter

perulangan ($i) sama dengan $data[3] (bagian bulan dari field tanggalmasuk),

maka option tersebut akan langsung terpilih (disorot).

26 Akhir dari select bulan.

27 Awal pembuatan objek select dengan nama tahun

28 Option pertama dari objek select dengan value=0 dan tulisan pilihan “Pilih Bulan”.

Pilihan ini akan tampil jika tanggalmasuk dari database tidak benar.

30 - 36 Perulangan untuk $i dari 2005 menurun sampai 1990. Jika $i sama dengan $data[4] (bagian tahun dari tanggalmasuk) maka option yang dibuat akan langsung

dipilih/disorot (selected) dan jika tidak sama maka hanya akan membuat option

berupa angka tanggal saja.

38 Akhir dari objek tahun.

Jika telah file formedit.php ini telah disimpan maka jika dijalankan akan menghasilkan hasilkan

form seperti gambar di bawah ini.

Page 77: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 74

BAB V FORM DAN URL

(Uniform Resource Locator)

DESKRIPSI Sarana yang dipakai oleh web designer untuk berinteraksi dengan pengunjung situs adalah form.

Di dalam form inilah penunjung situs memasukan data baik untuk melakukan input data pribadi,

memasukan keyword pencarian dan lain-lain.

Ketika sebuah form disubmit (diklik tombol submit), maka form tersebut akan mengirimkan

variable-variable yang telah diisikan dalam form ke server. Proses submit suatu form juga dapat

dibentuk dalam bentuk url (link). Dengan cara begitulah, maka kita dapat membuat suatu

halaman web yang mempunyai link yang bekerja sebagai suatu form.

Cara ini dapat kita gunakan untuk berbagai situasi misalnya : Menampilkan detail suatu barang

tanpa harus mengisikan kode barangnya, membuat halaman pencarian yang menampilkan hasil

pencariannya dalam beberapa halaman.

Contoh nyatanya adalah ketika anda melakukan pencarian di situs google.com, maka informasi

yang ditampilkan tidak semuanya (yang mungkin menghasilkan ribuan atau jutaan data), tetapi

menampilkan hasil pencarian ke dalam bentuk perhalaman. Kita dapat mengakses halaman hasil

tertentu dengan hanya mengklik nomor halamannya saja tanpa harus menginputkan nomor

halamannya.

Kalau kita mengklik tombol/link maka akan membuka halaman tertentu tanpa kita harus menulis

halamannya karena informasi variable halamannya disimpan dalam bentuk url. (perhatikan

linknya).

Page 78: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 75

FORM DAN URL Sebagaimana yang telah kita ketahui, dalam pembuatan sebuah form kita biasanya

menggunakan method post atau get.

Jika kita menggunakan suatu form dengan menggunakan method post, maka ketika tombol

submit diklik, maka variable tersebut akan dikirimkan tanpa diperlihatkan (disembunyikan), tetapi

jika kita menggunakan suatu form dengan menggunakan method get, maka semua variabelnya

akan ditampilkan/disertakan dalam url.

Contoh :

- Buka file editdata.php,

- Ganti method=post dengan method=get - Simpan file tersebut dan kemudian jalankan http://localhost/penjualan/editdata.php.

Kemudian isi kode barang dengan kode barang yang akan diedit, misalkan BK001

- Perhatikan link di address bar

- Link di atas berarti kita memanggil file formedit.php dengan variable bawaan dari form adalah

variable kode dengan isi BK001.

- Coba pula untuk file penghapusan yaitu file hapusdata.php.

Dengan demikian jika kita dapat membuat suatu link yang menghasilkan link seperti yang tampil

di address bar berarti kita dapat melakukan pengeditan atau penghapusan tanpa harus

memasukan/memilih kode.

Page 79: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 76

CONTOH PENGGUNAAN URL SEBAGAI PENGGANTI FORM

Membuat link pengeditan dan penghapusan

Sebagai contoh aplikasi yang akan dibuat adalah view data. View data yang telah dibuat hanya

menampilkan data. Dengan aplikasi ini kita tambah kemampuan halaman situs view data agar

dapat menampilkan link untuk masuk ke halaman pengeditan dan penghapusan.

Seperti kita ketahui, untuk mengedit data memerlukan link sebagai berikut :

Dan untuk penghapusan data memerlukan link sebagai berikut :

Dikarenakan file viewdata.php berada sefolder dengan file formedit.php dan hapusdata.php maka

link tersebut dapat lebih disederhanakan menjadi :

- Link pengeditan harus berbentuk formedit.php?kode=BK001

- Link penghapusan harus berbentuk proseshapus.php?kode=BK001

Oleh karena itu, buka file viewdata.php dan kemudian edit pada bagian pembuatan table data

barang. 1 2 3 4 5 6 7 8 9

10 11 12 13 14 15 16 17 18 19 20 21 22

… <? echo "Data yang ditemukan : $banyak data<br>"; while($data=mysql_fetch_row($result)) { ?> <tr><td><? echo $data[0];?></td> <td><? echo $data[1];?></td> <td><? echo $data[2];?></td> <td align=right>Rp. <? echo number_format($data[3]);?></td> <td><? echo $data[4];?></td> <td> <? echo "<a href='formedit.php?kode=$data[0]'>Edit</a>&nbsp;"; echo "<a href='proseshapus.php?kode=$data[0]'>Hapus</a>"; ?> </td> </tr> <? } ?> …

Tambakan baris-baris yang diarsir (baris 12 – 17) pada bagian pembuatan table data barang.

Page 80: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 77

Keterangan :

BARIS PENJELASAN

12 Awal cell baru untuk menempatkan link edit dan hapus. Cell ini berakhir pada baris

17.

13 Awal script php untuk pembuatan link edit dan link hapus. Script php ini ditutup pada

baris 16.

14 Pembuatan link edit. Adapun kode barang yang akan diedit diambil dari variable

$data[0] yang berisi kode barang yang sesuai. Sehingga jika $data[0] sekarang

bernilai BK001 maka link tersebut akan menghasilkan link :

formedit.php?kode=BK001

15 Pembuatan link hapus. Adapun kode barang yang akan dihapus diambil dari variable

$data[0] yang berisi kode barang yang sesuai. Sehingga jika $data[0] sekarang

bernilai BK001 maka link tersebut akan menghasilkan link :

proseshapus.php?kode=BK001

Kalau file viewdata.php anda jalankan (http://localhost/penjualan/viewdata.php) akan

menghasilkan :

Untuk memeriksa benar tidaknya link, caranya adalah gerakan mouse ke atas link dan kemudian

lihat pada status bar (di bawah browser). Jika kita memindahkan baris maka link pun akan

berubah.

Page 81: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 78

Jika anda mengklik tombol edit (misalkan pada kode BK001) maka akan menampilkan form

pengeditan dengan kode barang yang diedit adalah BK001.

Dan jika anda mengklik link hapus, maka browser akan mengeksekusi file proseshapus.php

dengan kode barang yang dihapus adalah BK001.

:

Page 82: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 79

Cara di atas sangatlah riskan karena tidak ada konfirmasi penghapusan. Untuk menjaga

kesalahan penekanan tombol hapus secara tidak sengaja maka ada baiknya ketika link hapus

diklik, maka browser harus menampilkan konfirmasi apakah user yakin ingin menghapus data

tersebut.

Langkah yang dilakukan adalah dengan menambahkan event OnClick pada tag link hapus.

Adapun script untuk menampilkan konfirmasi penghapusan adalah :

echo "<a href='proseshapus.php?kode=$data[0]' onclick='return confirm(\"Data dengan kode $data[0] akan Dihapus?\");'> Hapus</a>";

Jika anda jalankan kembali file viewdata.php dan kemudian mengklik link hapus, maka akan

muncul dialog seperti di bawah ini.

Jika user mengklik tombol OK, maka proses pemanggilan file proseshapus.php akan

dilaksanakan. Tetapi jika yang ditekan adalah tombol Cancel, maka proses pemanggilan file

proseshapus.php akan dibatalkan (link tidak dieksekusi).

Modifikasi yang dapat dilakukan adalah :

- Mengganti link edit dan hapus dengan link yang menggunakan gambar.

- Dalam dialog konfirmasi sebaiknya yang tampil jangan hanya kode usahakan juga Nama

barangnya.

Page 83: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 80

Menampilkan data per halaman

Langkah pertama untuk membuat situs tersebut adalah dengan melakukan perancangan terlebih

dahulu.

Prev 1 2 3 4 5 Next

Perhatikan link di atas, kita buat suatu ketentuan bahwa :

1. Jika link Prev diklik, maka browser akan memanggil halaman sebelum halaman aktif.

2. Jika link angka ( 1 2 3 4 5 ), maka browser akan memanggil halaman sesuai dengan nomor

yang ada pada link.

3. Jika link Next diklik, maka akan memanggil halaman sebelum halaman aktif.

Oleh karena itu untuk setiap link pasti membawa variable yang berisi nomor halaman yang akan

dituju. Kita buat asumsi lagi bahwa :

1. Untuk link angka bentuk link haruslah : viewdata.php?hal=n dimana n adalah nomor

halaman yang dituju. Contoh viewdata.php?hal=3 menunjukan bahwa browser harus

menampilkan data pada halaman 3.

2. Untuk link Prev bentuk link haruslah : viewdata.php?hal=n-1 dimana n adalah nomor

halaman yang aktif sekarang. Link Prev hanya muncul jika halaman aktif lebih dari halaman

1. Contoh kalau halaman aktif sekarang adalah 3 maka link prev harus viewdata.php?hal=2.

3. Untuk link Next bentuk link haruslah : viewdata.php?hal=n+1 dimana n adalah nomor

halaman yang aktif sekarang. Link Next hanya muncul jika halaman aktif kurang dari jumlah

banyaknya halaman. Contoh kalau halaman aktif sekarang adalah 2 maka link prev harus

viewdata.php?hal=4.

Page 84: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 81

4. Jika viewdata.php dipanggil tanpa menyertakan nomor halaman maka halaman yang muncul

harus halaman 1 sehingga browser seakan-akan menampilkan hasil seperti link

viewdata.php?hal=1

Selain menentukan bentuk link, perintah SQL yang akan dieksekusi juga harus diatur agar data

yang muncul sesuai dengan halamannya. Oleh karena itu kita buat ketentuan (lagi?) untuk

menentukan bentuk SQL yang akan dieksekusi. Adapun ketentuannya adalah :

1. Tentukan banyaknya data untuk 1 halaman web. Misalkan banyak data per halamannya

adalah 5 atau 10 atau 20 (terserah bagaimana baiknya). Asumsikan bahwa kita

menggunakan banyakdataperhal = 5.

2. Untuk mengambil data ke server MySQL sesuai dengan halamannya, maka kita harus

menambahkan perintah limit. Adapun kalau halaman 1 berarti SQL : limit 0,5. Jika

halaman 2 SQL : limit 5,5. Jika halaman 3 maka limit 10,5. Dari ketentuan diatas kita

dapatkan perhitungan bahwa awal limit adalah (nomor halaman aktif -1)*banyak data

perhalaman dan angka 5 yang ada dibelakang awal limit berasal dari variable data per

halaman.

3. Untuk menampilkan link angka tentunya kita perlu untuk menghitung banyaknya halaman

yang mungkin ada. Caranya adalah dengan mencari pembulatan ke atas dari banyak data

dibagi dengan banyakdata per halaman. Contoh jika banyak data 10 maka kita butuh 2

halaman. Tetapi jika kita mempunyai banyak data sebanyak 12 maka halaman yang

dibutuhkan 3 (pemulatan ke atas dari 12/5 = 2.4 = 3).

Oleh karena itu, maka file viewdata.php akan menjadi seperti di bawah ini : 1 2 3 4 5 6 7 8 9

10 11 12 13 14 15 16 17 18 19 20

21

<html> <head> <title>View Semua Barang</title> </head> <body> <table border=1 width=100%> <tr><td align=center><h1>Toko Online</h1></td></tr> </table> <hr> <? include("koneksidb.php"); $dataperhal=5; if(!isset($hal)) $hal=1; $awal=($hal-1)*$dataperhal; $res2=mysql_query("select count(*) from barang"); $data2=mysql_fetch_row($res2); $b_hal=$data2[0]/$dataperhal; $b_hal=ceil($b_hal); $sql="select kode, nama, date_format(tanggalmasuk,'%d-%M-%Y'),harga,stok from barang limit $awal,$dataperhal"; $result=mysql_query($sql) or die("Error : ".mysql_error());

Page 85: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 82

22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38

39 40 41 42

43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65

$banyak=mysql_num_rows($result); if($banyak>0) { ?> <table border=1> <tr align=center> <td>KODE</td><td>NAMA BARANG</td><td>TANGGAL MASUK</td> <td>HARGA</td><td>STOK</td> </tr> <? while($data=mysql_fetch_row($result)) { ?> <tr><td><? echo $data[0];?></td> <td><? echo $data[1];?></td> <td><? echo $data[2];?></td> <td align=right>Rp. <? echo number_format($data[3]);?></td> <td><? echo $data[4];?></td> <td> <? echo "<a href='formedit.php?kode=$data[0]'>Edit</a>&nbsp;"; echo "<a href='proseshapus.php?kode=$data[0]' onclick='return confirm(\"Data dengan kode $data[0] akan Dihapus?\");'> Hapus</a>"; ?> </td> </tr> <? } ?> </table> <? if($hal>1) echo "<a href='viewdata.php?hal=".($hal-1)."'>Prev</a> "; for($i=1;$i<=$b_hal;$i++) echo "<a href='viewdata.php?hal=$i'>$i</a> "; if($hal<$b_hal) echo "<a href='viewdata.php?hal=".($hal+1)."'>Next</a> "; } else { echo "<font color=red>Tidak ada data barang di dalam database</font>"; } ?> </body> </html>

Script yang ditambahkan adalah script yang diberi arsir. Perhatikan lokasinya.

Page 86: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 83

Keterangan :

BARIS PENJELASAN

12 Mengisi variable $dataperhal=5. Variable ini digunakan untuk menentukan

banyaknya data yang akan muncul untuk tiap halaman. Variabel ini boleh diganti

sesuai keinginan.

13 - 14 Jika variable $hal belum diisi ( !isset($hal) ), maka variable $hal dianggap 1.

Variabel $hal digunakan untuk menandai halaman yang aktif sekarang.

15 Menghitung variable $awal. Variabel ini digunakan untuk membuat awal limit

pengambilan data. Adapun rumusnya adalah ($hal-1)*$dataperhal,

16 Menjalankan SQL untuk mencari banyak data dari table barang.

17 Mengambil data (fetch_row) dari hasil eksekusi baris 16. Data hasil fetch data

disimpan pada variable $data2.

18 Mengambil banyaknya halaman yang mungkin muncul ($b_hal) dengan cara

menghitung banyak record dibagi dengan banyak data per halaman

($data2[0]/$dataperhal).

19 Variable $b_hal dibulatkan ke atas untuk menanggulangi $b_hal yang tidak bulat.

Misalkan banyak data 12, dan data per halaman 5 maka $b_hal bukan 2 halaman

tetapi 3 halaman (12/5=2.4=dibulatkan ke atas menjadi 3). Fungsi untuk menghitung

pembulatan ke atas adalah ceil.

22 Pada query ditambahkan perintah limit untuk pengambilan data dari server database

sesuai dengan halaman yang aktif.

Baris-baris berikutnya sama dengan keterangan file viewdata.php.

51 - 52 Pembuatan link Prev dimana menyertakan variable hal dengan nilai $hal-1

(halaman aktif – 1). Link ini hanya muncul pada halaman di atas halaman 1

(if($hal>1)). Sehingga jika $hal aktif adalah 3 maka link yang terbentuk adalah

viewdata.php?hal=2.

53 - 54 Pembuatan link angka dimulai dari link halaman 1 sampai link ke-$b_hal. Pembuatan

link ini menggunakan perulangan for. Adapun variable hal yang disertakan di-url

sesuai dengan counter perulangan for ($i). Sehingga jika $i bernilai 1 maka link yang

terbentuk adalah <a href=’viewdata.php?hal=1’>1</a> dan seterusnya.

55 - 56 Pembuatan link Next dimana menyertakan variable hal dengan nilai $hal+1

(halaman aktif + 1). Link ini hanya muncul pada halaman sebelum halaman terakhir

(if($hal<$b_hal)). Sehingga jika $hal aktif adalah 2 maka link yang terbentuk

adalah viewdata.php?hal=3.

Page 87: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 84

Jika file telah selesai diedit, maka simpan file tersebut dan kemudian eksekusi file tersebut di

browser dengan alamat http://localhost/penjualan/viewdata.php yang akan menghasilkan

halaman seperti di bawah ini.

Pada halaman ini link Prev tidak ditampilkan.

Jika kita mengklik link halaman 2 maka akan menghasilkan adalah :

Jika kita mengklik link halaman terakhir akan menghasilkan adalah :

Pada halaman terakhir ini data yang muncul mungkin tidak 5 buah tetapi sesuai sisa pembagian

banyak data dengan banyak data per halaman. Link Next tidak muncul pada halaman terakhir

Page 88: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 85

Modifikasi yang bisa dilakukan adalah :

- Menampilkan halaman aktif, contoh : Halaman ke-2 dari 3 halaman.

- Pada link angka, jika nomor halaman sama dengan halaman aktif, maka angka tidak dibuat

dalam bentuk link tetapi angka biasa. Sebagai contoh dapat dilihat di http://if.unikom.ac.id,

pada halaman pencarian alumni atau www.google.com.

- Gunakan teknik di atas untuk halaman pencarian. Sebagai contoh : www.google.com,

www.yahoo.com. Tantangannya adalah bagaimana menyertakan field pencarian, kondisi

pencarian dan keyword (kata kunci) pencarian ke dalam url/link.

- Jika banyak halaman yang mungkin sangat banyak (misalkan 1000 halaman), maka akan

sangat merepotkan user karena terlalu banyaknya link. Sebaiknya coba atur agar banyaknya

link angka hanya muncul 10 link saja (misalnya 5 link disebelum halaman aktif dan 4 link

setelah halaman aktif). Contoh jika banyak halamannya adalah 1000 halaman dan kita ada

pada halaman 20, maka link angka yang muncul hanya dari 15 sampai 24. Sebagai contoh

dapat dilihat di http://if.unikom.ac.id, pada halaman pencarian alumni.

Page 89: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 86

BAB VI SESSION DAN APLIKASINYA

DESKRIPSI Session adalah sebuah cara untuk menjaga kondisi variable antar halaman web. Maksudnya

adalah variable yang disimpan dalam session akan dikenal di semua halaman web dengan

syarat setiap awal dari script php dimulai dengan fungsi session_start().

Setelah pemanggilan session_start(), PHP meregisterkan sebuah Session ID (SID) yang unik,

kemudian PHP akan membuat suatu file yang berhubungan di server yang dapat menyimpan

sekumpulan variable. File ini memiliki nama sesusai dengan nama session ID.

Sekali session di buat, anda dapat meregisterkan beberapa variable. Nilai dari variable tersebut

disimpan dalam file yang ada di server. Proses register variable adalah dengan menggunakan

perintah session_register().

Fungsi-fungsi yang banyak dipakai dalam penanganan web page dengan session adalah :

1. session_start() berfungsi untuk memulai/mengaktifkan session.

2. session_register() berfungsi untuk mendaftarkan suatu variable ke dalam session.

Parameter dari fungsi ini adalah nama variable yang akan disimpan di session.

3. session_unregister() berfungsi untuk menghapus suatu variable yang disimpan di session.

4. session_is_registered() berfungsi untuk memeriksa apakah suatu variable ada/terdaftar

dalam session.

5. session_unset() berfungsi untuk menghapus semua variable yang terdaftar dalam session.

6. session_destroy() berfungsi untuk menutup/menghapus session beserta file sessionnya.

Page 90: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 87

PEMBUATAN SESSION Seperti telah dijelaskan sebelumnya, untuk pembuatan session perintah yang digunakan adalah

session_start() dan untuk membuat variabel yang disimpan di session, maka perintah yang

digunakan adalah session_register().

Contoh :

Nama File : buatsession.php 1 2 3 4 5 6 7 8 9

<? //session_start harus disimpan paling awal jangan ada apapun sebelumnya session_start(); session_register("banyakberkunjung"); session_register("nama","kota"); $_SESSION["banyakberkunjung"]=0; $_SESSION["nama"]="Andri Heryandi"; $_SESSION["kota"]="Ciamis"; echo "Session Telah dibuat"; ?>

Keterangan :

BARIS PENJELASAN

2 Aktifkan session

3 Daftarkan session dengan nama banyakberkunjung

4 Daftarkan session dengan nama nama dan kota

5 Mengisi variable session banyakberkunjung dengan nilai 0

6 Mengisi variable session nama dengan string “Andri Heryandi”

7 Mengisi variable session kota dengan string “Ciamis”

8 Menampilkan pesan bahwa session telah dibuat.

Jalankan/eksekusi file tersebut di Internet Explorer / Web Browser. Jika benar, maka akan

muncul pesan bahwa Session Telah Dibuat. Selain menampilkan pesan tersebut, script tersebut

juga membuat suatu file di folder c:\apache\tmp dengan nama

sess_304c6b8220c900e75eaac3900d9109e9 (nama session tidak selalu sama). Dalam file

tersebutlah data-data variable disimpan. Kalau dibuka maka file tersebut berisi :

banyakberkunjung|i:0;nama|s:14:"Andri Heryandi";kota|s:6:"Ciamis";

Maksud dari isi file session tersebut adalah ada session bernama banyakberkunjung bertipe int (i) dengan isi 0, nama dengan tipe string (s) dengan panjang 14 karakter dengan isi “Andri Heryandi” dan kota dengan tipe string (s) dengan panjang 6 karakter dengan isi “Ciamis”.

Page 91: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 88

PENGGUNAAN SESSION Untuk lebih jelas mengenai penggunaan session, perhatikan script php berikut :

Nama File : testsession.php 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23

<? session_start(); ?> <html> <head><title>Pemakaian Session</title></head> <body> <? if(session_is_registered('nama')==true)// == true boleh dihilangkan { $_SESSION['banyakberkunjung']++; ?> Selamat datang <? echo $_SESSION['nama'];?> dari <? echo $_SESSION['kota'];?> <br><br> Anda telah mengunjungi halaman ini sebanyak <? echo $_SESSION['banyakberkunjung']; ?> Kali<br> Klik Refresh, untuk test lagi <? } else echo "Anda harus memanggil buatsession dulu."; ?> </body> </html>

Keterangan :

BARIS PENJELASAN

2 Aktifkan session

8 Pemeriksaan apakah session bernama nama telah teregister. Jika ya (true) maka

baris yang akan dieksekusi adalah baris 10 – 16 dan jika tidak (false) maka yang

muncul adalah pesan “Anda harus memanggil buat session dulu.” yang ada di

baris 20.

10 Isi session banyakberkunjung ditambah 1

12 – 16 Menampilkan session semua variable session

Eksekusi file ini, perhatikan di browser maka akan terlihat tampilan

Selamat datang Andri Heryandi dari Ciamis

Anda telah mengunjungi halaman ini sebanyak 1 Kali

Klik Refresh, untuk test lagi

Jika tombol Refresh diklik maka session banyak berkunjung akan bertambah 1.

Page 92: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 89

PENGHAPUSAN SESSION Penghapusan session dilakukan jika

Nama File : hapussession.php 1 2 3 4 5 6 7 8

<? session_start(); session_unregister("nama"); session_unregister("kota"); session_unregister("banyakberkunjung"); session_destroy(); echo "Session Telah Dihapus"; ?>

Keterangan :

BARIS PENJELASAN

2 Aktifkan session

3 Hapus session nama

4 Hapus session kota

5 Hapus sesion banyak berkunjung

Tips: Baris 3 – 5 bisa diganti dengan session_unset();

6 Hapus session

7 Tampilkan pesan “Session telah dihapus”.

Jalankan file tersebut di browser. Jika tidak ada kesalahan script ini akan menampilkan pesan

Session telah dihapus. Ketika script mengeksekusi perintah session_destroy(), maka file yang

berhubungan akan dihapus (lihat c:\apache\tmp).

Jika anda mencoba memanggil lagi file testsession.php, maka yang akan muncul adalah pesan

bahwa “Anda harus memanggil buat session dulu.”.

Boleh diganti session_unset();

Page 93: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 90

CONTOH APLIKASI SESSION Dari sifat-sifat session di atas, maka kalau diperhatikan, file buatsession.php bisa kita anggap

sebagai proses login, kemudian file testsession.php adalah proses menampilkan web yang

hanya bisa dibuka/ditampilkan ketika seorang user telah melakukan proses login (setelah

memanggil buatsession.php), serta file hapussession.php adalah proses logout user. Oleh

karena itu untuk membuat suatu web site yang mengunakan fasilitas login, kita dapat

menggunakan fasilitas session untuk penyimpan variable yang dapat diakses di semua halaman

web.

Contoh kasus yang akan digunakan adalah web database pendataan barang yang telah dibuat

ketika perkuliahan. Dari fasilitas yang ada yaitu tambah barang, edit barang, hapus barang,

tampil barang dan pencarian barang, tentunya ada beberapa fasilitas yang hanya boleh

dilakukan oleh administrator web yaitu tambah barang, edit barang dan hapus barang.

Sedangkan untuk fasilitas pencarian atau tampil data barang tentunya pengunjung boleh

menggunakannya (untuk public) tentunya dengan keterbatasan tertentu.

Singkatnya dalam web site ini terdapat file sebagai berikut :

tambahdata.php dan prosessimpan.php yang berguna untuk penambahan data.

viewdata.php yang berguna untuk menampilkan semua data barang.

caridata.php yang berguna untuk mencari data barang.

hapusdata.php dan proseshapus.php yang berguna untuk menghapus data barang.

editdata.php, formedit.php dan prosesupdate.php yang berguna untuk melakukan proses

pengeditan suatu data barang.

File-file di atas dapat dilihat di modul “WEB DINAMIS BERBASIS DATABASE”.

Oleh karena itu ada beberapa hal yang harus dilaksanakan untuk membuat website yang

memiliki fasilitas login yaitu :

1. Di halaman awal dari web site kita (index.php) harus dibuat suatu form untuk melakukan

proses login.

2. Karena user administrator yang bekerja lebih dari 1 orang maka data user dan passwordnya

di simpan dalam tabel bernama adminweb di database penjualan.

3. Agar password tidak bisa dibaca oleh sembarang orang, maka field password milik user

sebaiknya dienkripsi dengan fungsi password() dari MySQL.

Page 94: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 91

Oleh karena itu, maka langkah pertama adalah membuat tabel adminweb dengan struktur

seperti di bawah ini.

Nama Field Tipe Length Null Primary Key

iduser varchar 16 N *

namauser varchar 20 N

Passuser varchar 16

[wajib]

N

Anda boleh menggunakan PHPMyadmin untuk membuat tabel tersebut atau dengan

mengeksekusi SQL berikut :

CREATE TABLE adminweb ( iduser VARCHAR(16) NOT NULL, namauser VARCHAR(20) NOT NULL, passuser VARCHAR(16) NOT NULL, PRIMARY KEY (iduser) );

Kemudian isi beberapa user seperti di bawah ini.

iduser namauser passuser

Andri Andri Heryandi adaaja

Hery Hery Yulianto bdg

Susy Susilawati unikom

Perintah SQL untuk pembuatan user tersebut adalah : INSERT INTO adminweb VALUES('Andri','Andri Heryandi',PASSWORD('adaaja')) INSERT INTO adminweb VALUES('Hery','Hery Yulianto',PASSWORD('bdg')) INSERT INTO adminweb VALUES('Susy','Susilawati',PASSWORD('unikom'))

Hati-hati pada bagian passuser, karena enkripsi data menggunakan fungsi password() menggunakan case sensitive (huruf kecil dan capital dibedakan).

Page 95: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 92

Karena ketika pengisian field passuser menggunakan fungsi PASSWORD(), maka jangan kaget

kalau data yang tersimpan sudah dalam bentuk terenkripsi. Lihat di tabel di bawah ini.

iduser namauser passuser

Andri Andri Heryandi 769c7aa841266403

Hery Hery Yulianto 7c93c83b2233794e

Susy Susilawati 42676b19436048bd

Sesudah membuat tabel dan mengisi beberapa orang user, maka langkah berikutnya membuat

web page utama yaitu index.php. Dalam index.php harus terdapat sebuah form untuk proses

login admininstrator web. Oleh karena itu buat web page seperti di bawah ini.

Nama File : index.php 1 2 3 4 5 6 7 8 9

<html> <head> <title>Toko Online</title> </head> <body> <table width=100% border=1> <tr><td colspan=2 align=center bgcolor=navy> <h1><font color=white>TOKO ONLINE</font></h1></td></tr> <tr><td width=200>

Page 96: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 93

10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26

<form method=post action=login.php> <table width=200 border=1> <tr><td colspan=2 align=center>Login</td></tr> <tr><td>User</td> <td><input type=text name=userid size=9></td></tr> <tr><td>Password</td> <td><input type=password name=pass size=9></td></tr> <tr><td></td> <td><input type=submit value="Login"></td></tr> </table> </form> </td> <td valign=top><h1>SELAMAT DATANG</h1><br><br>Bla Bla ...</td></tr> </table> </body> </html>

Bagian penting dari script di atas adalah ada pada bagian baris 10 – 21 yang merupakan sebuah

form login. Ada 1 text box di form tersebut yaitu iduser dan sebuah objek bertipe password

dengan name=pass yang digunakan untuk pengisian password. Jika kita mengklik tombol Login

(submit) akan mengeksekusi file login.php yang akan segera kita buat yang berfungsi untuk

memeriksa apakah user dengan password tersebut terdaftar di adminweb atau tidak.

Nama File : login.php 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17

<? include("koneksidb.php"); $sql="select * from adminweb where iduser='$iduser' and passuser=password('$pass')"; $res=mysql_query($sql) or die("Query Error : ".mysql_error()); if(mysql_num_rows($res)>0)//jika user ditemukan dan password benar { $data=mysql_fetch_row($res);//ambil record/data user session_start(); session_register("iduser","namauser"); $_SESSION['iduser']=$data[0]; $_SESSION['namauser']=$data[1]; echo "<script>document.location=\"menu.php\";</script>"; } else echo "Login atau password yang anda masukkan salah."; ?>

Keterangan :

BARIS PENJELASAN

2 Lakukan koneksi ke database sesuai dengan yang ada di file koneksidb.php.

3 - 4 Penyusunan query yang memeriksa apakah iduser yang diinputkan di form login ada

di tabel adminweb dan apakah passwordnya juga benar.

5 Eksekusi query dan menyimpan hasil eksekusinya pada variable $res.

Page 97: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 94

6 Pemeriksaan apakah banyak record yang ada di $res (mysql_num_rows($res)) lebih

dari 0. Jika ya maka menunjukan bahwa iduser dan password tersebut memang

terdaftar tetapi jika bernilai tidak maka itu menunjukan bahwa iduser atau password

ada yang salah. Jika iduser dan password benar, maka perintah yang akan

dieksekusi adalah baris 8 – 13 tetapi jika salah maka akan menampilkan pesan

“Login atau password yang anda masukan salah.” yang ada dibaris 16.

8 Ambil 1 baris data dari $res dan simpan di array $data. Isi array tersebut adalah field

iduser, namauser dan passuser. Field iduser ada di $data index ke-0 ($data[0]), namauser ada di $data index ke-1 ($data[1]), dan passuser ada di $data pada index

ke-2 ($data[2]).

9 Mengaktifkan session

10 Registerkan session dengan nama iduser dan namauser.

11 Isi session iduser dengan $data[0] yaitu field iduser dari database.

12 Isi session namauser dengan $data[1] yaitu field namauser dari database.

13 Perintah javascript yang akan memindahkan/redirect halaman web aktif ke file

menu.php secara otomatis.

16 Pesan kesalahan userid atau password.

Selanjutnya file yang perlu dibuat terlebih dahulu adalah file menu.php. Di dalam file ini harus

terdapat link-link yang menuju ke halaman-halaman administratif, seperti halaman penambahan

data, pengeditan data, penghapusan data, view data atau pencarian data.

Nama File : menu.php 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21

<? session_start(); if(session_is_registered("iduser"))//jika iduser ada di session { ?> <html> <head> <title>Menu Administrator</title> </head> <body> <table width=100% border=1> <tr><td align=center bgcolor=navy> <h1><font color=white>TOKO ONLINE</font></h1></td></tr> <tr><td align=center> | <a href=menu.php>Menu Utama</a> | <a href=tambahdata.php>Penambahan</a> | <a href=viewdata.php>View</a> | <a href=editdata.php>Pengeditan</a> | <a href=caridata.php>Pencarian</a> | <a href=hapusdata.php>Penghapusan</a> | <a href=logout.php>Logout</a> |

Page 98: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 95

22 23 24 25 26 27 28 29 30 31 32 33

</td></tr> <tr><td>Selamat Datang, <? echo $_SESSION['namauser'];?><br> Sebagai admininstrator web anda dapat melakukan bla bla </td></tr> </table> </body> </html> <? } else echo "Anda tidak boleh masuk. Harus Login dulu"; ?>

Keterangan :

BARIS PENJELASAN

2 Aktifkan session

3 Periksa apakah session iduser terregistrasi di session. Jika ya maka yang akan

dieksekusi adalah dari baris 6 – 28 yang berisi menu administrator dan tidak maka

yang akan tampil adalah pesan “Anda tidak boleh masuk. Harus login dulu”;

15 - 21 Pembuatan link-link ke halaman web administratif yaitu tambahdata.php,

hapusdata.php, viewdata.php, editdata.php, caridata.php serta logout.php.

23 - 24 Ucapan selamat datang kepada administrator sesuai dengan loginnya.

32 Pesan “Anda tidak boleh masuk. Harus login dulu”. Pesan ini hanya muncul ketika

seseorang user memanggil menu.php tanpa melakui proses login, sehingga session-

sessionnya belum terregistrasi.

File selanjutnya yang dibuat adalalah file logout.php yang berguna untuk proses login dimana

akan melakukan penghapusan session dan memindahkan halaman aktif kembali ke index.php.

Nama File : logout.php 1 2 3 4 5 6

<? session_start(); session_unset(); session_destroy(); echo "<script> document.location=\"index.php\";</script>"; ?>

Keterangan :

BARIS PENJELASAN

2 Aktifkan session

3 - 4 Hapus semua variable session (unset) dan hapus file sessionnya (destroy).

5 Pindahkan/redirect halaman aktif ke file index.php (halaman pertama).

Page 99: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 96

Untuk memperbaiki tampilkan ketika seorang yang belum login mengakses halaman

administrator, maka ganti perintah berikut yang ada di menu.php :

echo "Anda tidak boleh masuk. Harus login dulu";

Dengan perintah di bawah ini yang akan memindahkan halaman web ke belumlogin.php secara

otomatis ketika user belum login.

echo "<script>document.location=\"belumlogin.php\";</script>";

Kemudian buat file yang akan ditampilkan ketika seorang user belum login sebagai berikut :

Nama File : belumlogin.php 1 2 3 4 5 6 7 8 9 10 11 12 13 14

<html> <head><title>Peringatan</title></head> <body> <table width=100% border=1> <tr><td align=center bgcolor=navy> <h1><font color=white>TOKO ONLINE</font></h1></td></tr> <tr><td align=center> <h1><font color=red>Unauthorized Access</font></h1><br> Anda tidak bisa mengakses file ini karena anda belum login.<br> Untuk login klik link <a href=index.php>index</a> </td></tr> </table> </body> </html>

Langkah selanjutnya adalah mengedit semua file web agar dapat memeriksa apakah user telah

melakukan login atau belum. Caranya adalah sebagai berikut :

Contoh file tambahdata.php

1. Buka file tambahdata.php

2. Tambahkan perintah berikut di paling atas (sebelum <html>). 1 2 3 4 5

<? session_start(); if(session_is_registered("iduser"))//jika iduser ada di session { ?>

3. Tambahkan bagian berikut di paling bawah (setelah </html>) 1 2 3 4 5

<? } else echo "<script>document.location=\"belumlogin.php\";</script>"; ?>

4. Simpan file tersebut

Page 100: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 97

Ulangi langkah di atas untuk file-file lain seperti prosestambah.php, editdata.php, formedit.php, prosesupdate.php, viewdata.php, hapusdata.php, proseshapus.php, dan caridata.php.

Setelah lengkap, maka jalankan script tersebut dengan memanggil alamat

http://localhost/penjualan. Secara otomatis web server akan mencari index.php yang akan

menampilkan tampilan seperti di bawah ini.

Jika user mengisi user dan password dengan benar maka akan muncul tampilan menu seperti di

bawah ini.

Page 101: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 98

Tetapi jika ada yang salah baik user atau passwordnya maka yang muncul adalah :

Setelah muncul menu, maka jika user mengklik tombol tambah akan menghasilkan tampilan

tambah data seperti di bawah ini.

Jika user ingin logout, maka user tersebut cukup mengklik tombol logout yang ada di menu.

Proses ini akan membawa user kembali ke index.php (halaman pertama).

Page 102: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 99

Jika seorang user memanggil file tambahdata.php atau menu.php secara langsung tanpa

proses login dulu, maka yang akan muncul adalah pesan belumlogin.php seperti gambar di

bawah ini.

Page 103: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 100

BAB VII PENGENALAN WAP

DESKRIPSI Protokol WAP didesain untuk menampilkan isi informasi internet pada client wireless, seperti

telepon selular.

Industri wireless muncul dengan ide WAP. Standar ini berguna untuk menampilkan informasi

internet pada client wireless, seperti telepon selular.

WAP merupakan singkatan dari Wireless Application Protocol

WAP digunakan untuk mengakses layanan dan informasi

WAP adalah turunan dari standar internet

WAP dibuat untuk peralatan genggam seperti telepon selular

WAP merupakan sebuah protocol yang didesain untuk browser micro

WAP memungkinkan pembuatan aplikasi-aplikasi web untuk peralatan mobile.

WAP menggunakan bahasa mark-up WML/Wireless Mark-up Language (bukan HTML)

WML didefinisikan sebagai aplikasi XML 1.0

BROWSER MICRO WAP Agar cocok dengan terminal wireless kecil, WAP menggunakan Browser Micro.

Sebuah Browser Micro adalah sebuah perangkat lunak kecil yang membuat permintaan yang

minimal ke perangkat keras seperti memory dan CPU. Browser ini dapat menampilkan informasi

yang ditulis dalam bahasa mark-up tertentu yang disebut WML.

Browser Micro dapat juga menerjemahkan/menginterpretasikan Java Script yang telah

disederhanakan yang disebut sebagai WMLScript.

Page 104: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 101

Page 105: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 102

WML (WIRELESS MARK-UP LANGUAGE) WML kepanjangan dari Wireless Mark-up Language yang merupakan bahasa turunan dari

HTML, tetapi WML didasarkan pada XML sehingga lebih dibatasi dengan HTML.

WML digunakan untuk membuat halaman yang dapat ditampilkan dalam browser WAP.

Halaman-halaman dalam WML disebut dengan DECK. Deck disusun sebagai sekumpulan

CARD.

WMLSCRIPT WML menggunakan WMLScript untuk menjalankan kode sederhana di client (ponsel).

WMLScript merupakan bahasa JavaScript yang lebih ringan/sederhana. Bagaimana pun,

WMLScript tidak bersatu dengan halaman WML. Halaman WML hanya berisi referensi ke URL

script. Perintah WML perlu di-compile terlebih dahulu di server sebelum dijalankan di sebuah

browser WAP.

CONTOH PENGGUNAAN WAP Memeriksa tabel informasi jadwal kereta

Pembelian tiket

Menampilkan informasi lalu lintas

Mengetahui kondisi cuaca

Menampilkan hasil pertandingan olahraga

Menampilkan informasi bursa saham atau kurs valuta asing

Page 106: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 103

PERSIAPAN MEMBUAT SITUS WAP Ada beberapa hal yang perlu disiapkan ketika kita ingin membangun sebuah situs wap.

Persiapan ini tidak jauh beda dengan persiapan pembuatan situs html, yaitu ada software yang

bekerja sebagai WAP server serta perangkat ponsel yang kita gunakan untuk pengetesan.

Tetapi karena kalau kita benar-benar kerja secara online (data langsung diupload di server

internet) dan pengetesan dilakukan langsung dengan perangkat ponsel yang nyata, maka butuh

biaya yang besar untuk pembuatan situs WAP ini. Oleh karena itu, selain butuh web server local

(yang kita gunakan adalah Apache Web Server sebagai contohnya), kita juga butuh sebuah

program yang dapat berperan/mengemulasi sebagai sebuah ponsel. Program yang dapat

digunakan adalah M3Gate atau UP. Simulator.

Selain dengan M3Gate, anda dapat juga menjalankan dokumen WML dengan menggunakan

browser web seperti Opera (Versi Opera yang pernah dicoba adalah Opera 7).

Editor yang digunakan untuk membangun sebuah situs WAP adalah software editor berbasis

teks seperti Ultra Edit, NotePad, Macromedia Dreamweaver, dan lain-lain. Tetapi jika situs yang

akan dibangun merupakan situs WAP biasa maka ada banyak software editor berbasis IDE /

WYSIWYG yang dapat mempermudah anda membuat halaman WAP tanpa harus terlalu

memikirkan tag-tagnya. Software tersebut salah satunya adalah WAPtor (dapat dilihat di CD

pada folder WAP\Editor).

INSTALASI M3GATE DAN UP. SIMULATOR Langkah-langkah instalasi M3Gate adalah :

Eksekusi/Run file m3stp06-2.exe yang ada dalam folder WAP\Emulator yang ada di CD Aplikasi

Teknologi Online.

Ikuti langkah berikutnya seperti instalasi aplikasi-aplikasi lain, sampai muncul layar Finish.

Langkah instalasi UP. Simulator mirip dengan instalasi M3Gate bedanya adalah file yang

dieksekusi adalah file UP Simulator-OpenWave.exe yang ada di folder WAP\Emulator. Kemudian

ikuti langkah-langkah selanjutnya.

Page 107: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 104

MENJALANKAN M3GATE M3Gate dapat diaktifkan dengan mengklik tombol Start Programs M3 Gate M3 Gate,

yang akan menampilkan layar seperti di bawah ini.

M3Gate dengan skin

Handy

M3Gate dengan skin April UP. Simulator

Anda boleh menggunakan emulator yang mana saja, tetapi dalam contoh-contoh ini penulis

menggunakan emulator M3Gate.

Untuk menampilkan menu , maka klik tombol untuk skin Handy, atau tombol

untuk yang skin April, yang akan menampilkan popup menu seperti di bawah ini.

Page 108: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 105

Untuk melakukan pengaturan, anda dapat mengklik menu Setting untuk mengatur konfigurasi

program M3Gate ini, atau mengatur/mengganti Font dan Skin.

Jika ingin memanggil suatu situs WAP, maka yang perlu diklik adalah sub menu Open URL.

Page 109: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 106

DASAR-DASAR WAP

Homepage WAP

Homepage WAP tidak jauh beda dengan homepage HTML. Perbedaannya adalah WAP

menggunakan bahasa WML sedangkan homepage HTML menggunakan bahasa HTML. WLM

sendiri merupakan turunan dari HTML dengan aturan-aturan yang lebih ketat dalam penulisan

sintaknya.

Tag-Tag WML

WML umumnya berhubungan dengan teks. Tag-tag yang memperlambat komunikasi dengan

peralatan genggam tidak digunakan dalam standar WML. Penggunaan tabel-tabel dan gambar

sebaiknya perlu dibatasi.

Karena WML merupakan sebuah aplikasi XML, semua tag-tagnya adalah case sensitif yang

berarti membedakan huruf kapital dan kecil (<wml> beda dengan <WML>), dan juga semua tag

harus ditutup dengan benar.

Deck dan Card WML

Sebuah halaman WML disebut Deck. Deck disusun sebagai sekumpulan Card, yang dapat

direlasikan dengan link. Ketika sebuah halaman WML diakses dari sebuah ponsel, maka semua

card dalam page tersebut didownload dari server WAP. Navigasi antara card dikerjakan oleh

computer ponsel – di dalam ponsel – tanpa harus mengakses kembali ke server.

Page 110: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 107

Gambaran hubungan deck dan card adalah :

Halaman WML

Deck

Card 1

Card 2

Card 3

Dalam sebuah halaman WML (Deck) bias terdiri dari 1 atau lebih card. Hanya 1 card yang dapat

ditampilkan dalam satu waktu. Untuk merelasikan antar tiap card atau deck dapat menggunakan

tag-tag link atau dengan pengaturan timer.

Page 111: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 108

Contoh dokumen WML

1 2 3 4 5 6 7 8 9 10 11

<?xml version="1.0"?> <!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN" "http://www.wapforum.org/DTD/wml_1.1.xml"> <wml> <card id="deck1" title="Halaman Pertama"> <p> Situs WAP pertama buatanku.<br/> Ini adalah deck pertama. </p> </card> </wml>

Keterangan : Baris 1 : berguna untuk menyatakan bahwa dokumen ini merupakan sebuah

aplikasi XML dengan versi 1.0.

Baris 2 - 3 : Prolog yang menyatakan versi WML yang digunakan adalah versi

dari WAPForum.

Baris 4 : Tag pembuka WML (awal deck)

Baris 5 : Pembuatan Card dengan id/nama : deck1 dengan judul “Halaman

Pertama”.

Baris 6 : Awal paragraph.

Baris 7 dan 8 : Isi deck/informasi.

Baris 10 : Akhir Card deck1.

Baris 11 : Tag penutup WML (akhir deck).

Tips penulisan Tag : Setiap tag yang mempunyai pasangan, harus ditutup sesuai dengan banyaknya tag pembuka.

Jika suatu tag tidak memiliki tag penutup maka penulisan tagnya harus diakhiri dengan tanda

slash (/), contoh untuk pindah paragraf menggunakan tag <br>, harus diganti dengan tag <br/>.

Penutupan tag harus dilakukan sesuai dengan urutannya.

Contoh :

Contoh Benar Contoh Salah <b> Universitas <i> Komputer</i> Indonesia </b>

<b>Universitas <i> Komputer</b> Indonesia </i>

Simpan file tersebut dengan nama index.wml, dan sebaiknya simpan dalam folder

c:\apache\htdocs\namakamu\wap.

Page 112: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 109

Menjalankan/Test dokumen WML.

1. Jalankan M3Gate

2. Klik di Menu Open URL yang akan menampilkan layar pengisian alamat situs WAP.

3. Klik di bagian alamat (http://) atau dengan klik Edit yang ada di bagian bawah layar ponsel.

Kemudian isi dengan http://localhost/namakamu/wap/index.wml (sesuai dengan nama file

yang tadi dibuat).

4. Klik OK atau dengan mengklik Enter

5. Klik tombol Go There untuk melakukan koneksi ke server WAP. Jika alamat yang anda

koneksi benar, maka akan muncul layar seperti di bawah ini.

Deck

Content/Isi Card

Title

Card

Page 113: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 110

TAG-TAG PENGATURAN WML

Pengaturan Paragraf dan Pindah Baris

Seperti HTML untuk pembuatan suatu paragraf baru menggunakan tag <p> dan diakhiri dengan

</p>. Sedangkan untuk pindah baris, dalam HTML menggunakan <br>, tetapi dalam WML harus

diakhiri dengan tanda slash (/) sehingga tagnya menjadi <br/>.

Contoh dokumen WML yang menggunakan formatting Paragraf dan Pindah Baris adalah : <?xml version="1.0"?> <!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN" "http://www.wapforum.org/DTD/wml_1.1.xml"> <wml> <card title="Atur Paragraf"> <p> Ini adalah paragraf pertama dengan align left (default). </p> <p align="center"> <br/>Ini adalah paragraf kedua dengan align center. </p> <p align="right"> <br/>Ini adalah paragraf ketiga dengan align right. </p> </card> </wml>

Simpan dengan nama file format.wml di folder yang tadi. Kemudian jalankan dengan alamat :

http://localhost/namakamu/wap/format.wml, yang akan menghasilkan tampilan seperti di bawah

ini.

Page 114: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 111

Pengaturan Teks

Pengaturan teks dalam dokumen WML tidak jauh beda dari dokumen HTML. Contoh dokumen

yang dapat mencontohkan cara pengaturan teks dapat dilihat di bawah ini.

<?xml version="1.0"?> <!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN" "http://www.wapforum.org/DTD/wml_1.1.xml"> <wml> <card title="Atur Teks"> <p> Teks Biasa<br/> <b>Teks tebal/bold</b><br/> <i>Teks miring/italic</i><br/> <u>Teks digarisbawah</u><br/> <big>Teks diperbesar</big><br/> <small>Teks diperkecil</small><br/> <em>Teks Emphasized</em><br/> <strong>Teks Strong</strong> </p> </card> </wml>

Jika dieksekusi, maka akan muncul tampilan seperti di bawah ini.

Catatan : Ada kemungkinan hasil yang anda inginkan tidak sesuai dengan hasil di Emulator.

Sama seperti dalam HTML, ada beberapa huruf yang kalau ingin ditampilkan harus diganti

dengan tanda-tanda khusus yaitu :

Simbol lebih kecil (<) diganti dengan &lt; (less than)

Simbol lebih besar (>) diganti dengan &gt; (greater than)

Simbol dolar ($) diganti dengan $$

Karakter 1 spasi diganti dengan &nbsp;

Simbol kutip satu/apostrop ( ‘ ) diganti dengan &apos;

Simbol kutip dua ( “ ) diganti dengan &quot;

Page 115: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 112

Pengaturan Tabel

Contoh pembuatan tabel pada dokumen WML adalah sebagai berikut : <?xml version="1.0"?> <!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN" "http://www.wapforum.org/DTD/wml_1.1.xml"> <wml> <card title="Atur Table"> <p> <table columns="3"> <tr> <td>Andi</td> <td>Budi</td> <td>Cacah</td> </tr> <tr> <td>Deni</td> <td>Ena</td> <td>Farah</td> </tr> </table> </p> </card> </wml>

Hasil yang didapatkan jika browser WML anda mendukung tag Table.

Eksekusi dengan Opera 7

(Tidak support tag <table>)

Eksekusi dengan M3Gate

(Tidak support tag <table>)

Eksekusi dengan UP

Simulator.

(Support tag <table>)

Latihan-Latihan :

Buatlah suatu halaman WML yang berisi identitas anda. Kemudian simpan dalam nama file

pribadi.wml yang didalamnya memiliki 2 buah card yang berisi data :

Pribadi, id cardnya : biodata, Judul : Biodata

Riwayat pendidikan, id cardnya : pendidikan, Judul : Riwayat Pendidikan

File ini akan digunakan untuk materi berikutnya.

Page 116: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 113

TAG-TAG LINK

Sebuah card WML dapat diatur untuk menampilkan fungsi WML anchor untuk merelasikan antar

dokumen atau card.

Tag <a>

Contoh dokumen WML yang menggunakan tag <a>

<?xml version="1.0"?> <!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN" "http://www.wapforum.org/DTD/wml_1.1.xml"> <wml> <card id="menu" title="Menu Utama"> <p>Silahkan dipilih : <br/> - <a href="pribadi.wml">Biodataku</a><br/> - <a href="pribadi.wml#pendidikan">Riwayat Pendidikan</a><br/> - <a href="#bantu">Bantuan</a> </p> </card> <card id="bantu" title="Layar Bantuan"> <p> - <b>Biodata</b> berisi data pribadi.<br/> - <b>Riwayat Pendidikan</b> berisi sekolah tempat belajar<br/> <br/><a href="#menu">Kembali ke menu</a> </p> </card> </wml>

Jika dokumen WML tersebut dieksekusi, maka akan tampil seperti di bawah ini.

Jika link Biodataku diklik maka akan muncul

card pertama pada file pribadi.wml seperti di

bawah ini.

Tetapi jika link Riwayat Pendidikan diklik akan

muncul card pendidikan yang ada di file

pribadi.wml.

link

Page 117: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 114

Jika link Bantuan diklik maka akan

memunculkan card dengan id=menu pada

deck yang sama.

Tag <anchor>

Tag ini mirip dengan penggunaan tag <a>.

<?xml version="1.0"?> <!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN" "http://www.wapforum.org/DTD/wml_1.1.xml"> <wml> <card id="menu" title="Menu Utama"> <p>Silahkan dipilih : <br/> - <anchor>Biodataku<go href="pribadi.wml"/></anchor><br/> - <anchor>Riwayat Pendidikan<go href="pribadi.wml#pendidikan"/></anchor><br/> - <anchor>Bantuan<go href="#bantu"/></anchor> </p> </card> <card id="bantu" title="Layar Bantuan"> <p> - <b>Biodata</b> berisi data pribadi.<br/> - <b>Riwayat Pendidikan</b> berisi sekolah tempat belajar<br/> <br/><anchor>Kembali ke menu<prev/></anchor> <!-- atau <anchor>Kembali ke menu<go href="menu"></anchor> INI KOMENTAR --> </p> </card> </wml>

Page 118: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 115

Perintah di atas sebenarnya memiliki hasil seperti dokumen WML yang menggunakan tag <a>.

Perbedaannya adalah pada bagian antara anchor ada suatu tag <go>. Tag ini digunakan untuk

berpindah ke lokasi tertentu baik dokumen WML/Deck atau Card lain. Selain itu ada juga tag

<prev/> yang berguna untuk menghapus dokumen yang bersangkutan dari data History, dan

kemudian kembali ke layar sebelumnya (Previous Page).

TAG GAMBAR

Tag Gambar <img>

Untuk menampilkan gambar dalam halaman WML adalah dengan menggunakan tag <img>.

Tetapi karena keterbatasan dari teknologi WAP sendiri, maka gambar yang bias tampil biasanya

gambar yang sederhana dan tidak terlalu besar. File gambar yang dapat ditampilkan dalam layar

WAP adalah WBMP (WAP BMP) atau PNG. Ingat : Hindarkan menyimpan gambar besar ke layar

WAP.

Tidak semua browser dapat menampilkan gambar-gambar tersebut.

Aturan penulisan tag <img> adalah :

<img src=”namafile gambar” alt=”keterangan”/>

Keterangan : alt:Keterangan yang akan muncul/ditulis ketika browser tidak mendukung.

Contoh : <?xml version="1.0"?> <!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN" "http://www.wapforum.org/DTD/wml_1.1.xml"> <wml> <card title="Demo IMAGE"> <p align="center">Gambar PNG<br/><img src="andri.png" alt="Photo PNG"/></p> <p align="center">Gambar WBMP<br/><img src="andri.wbmp" alt="Photo WMBP"/></p> <p align="center">Link Gambar<br/> <a href="pribadi.wml"><img src="andri.wbmp" alt="Photo Saya"/></a></p> </card> </wml>

Page 119: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 116

Hasil eksekusinya adalah :

M3Gate UP. Simulator

TIMER WML

Tag Timer Sebuah card WML dapat diatur untuk menggunakan fungsi timer WML. Satuan waktu yang

dipakai dalam WML adalah 1/10 detik (100 mili detik).

Contoh dokumen WML yang menggunakan Timer adalah : <?xml version="1.0"?> <!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN" "http://www.wapforum.org/DTD/wml_1.1.xml"> <wml> <card id="awal" title="Demo TIMER" ontimer="#menu"> <timer value="30"/> <p align="center"><br/>Selamat Datang<br/> di <br/>SITUS WAP ANDRI</p> </card> <card id="menu" title="MENU PILIHAN"> <p> - Menu Pilihan 1<br/> - Menu Pilihan 2<br/> - Menu Pilihan 3<br/> </p> </card> </wml>

Page 120: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 117

Contoh di atas akan menampilkan card dengan id=awal yang berisi “SELAMAT DATANG….”

selama 30 * 1/10 detik = 3 detik.

Layar yang muncul pertama kali jika dokumen ini dieksekusi adalah :

Setelah 3 detik maka akan menampilkan card menu seperti di bawah ini.

Page 121: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 118

BAB VIII UPLOAD DATA KE SERVER

UPLOAD DATA KE SERVER MAHASISWA UNIKOM 1. Buat website di komputer sendiri sampai semua berjalan dengan benar. Kalau bisa lakukan

dulu konfigurasi server anda (PHPTriad) agar sesuai dengan seting konfigurasi server. [untuk

lebih jelas lihat file Adaptasi PHPTriad ke Server]. Sebagai website contoh yang akan

diupload ada di folder mhsif.

2. Masuk ke http://mahasiswa.unikom.ac.id, untuk mendaftarkan diri.

3. Klik link Daftar, untuk mendaftarkan diri sebagai anggota.

Page 122: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 119

Page 123: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 120

4. Isi data-data anda sesuai dengan aturannya. Seperti di bawah ini.

Harap diingat mengenai userid dan password karena dipakai untuk koneksi database.

5. Setelah selesai mengisi data, pilih check box Telah mengisi formulir pendaftaran dengan

benar, kemudiak klik tombol Kirim Formulir Ini.

Page 124: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 121

6. Setelah muncul layar di bawah ini, berarti anda telah terdaftar sebagai anggota

mahasiswa.unikom.ac.id

7. Sesudah terdaftar, langkah berikutnya adalah login. Agar kita dapat mengatur hosting kita. Isi

sesuai data yang tadi dimasukan.

Klik tombol Login untuk login.

Page 125: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 122

8. Kalau login telah berhasil, maka di layar sebelah kiri terdapat gambar seperti di bawah ini.

dan di layar sebelah atas ada menu

9. Klik tombol HOSTING, untuk mengatur hosting anda. Setelah itu komputer akan

menampilkan menu-menu pengaturan website.

Page 126: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 123

10. Karena kita belum mempunyai database di server, maka langkah berikutnya adalah dengan

membuat database dengan cara

Klik tombol MySQL Manager, sampai muncul layar seperti di bawah ini.

Klik tombol Buat Database untuk membuat database. Setelah itu akan muncul layar

bahwa database telah dibuat. Anda dapat lihat konfigurasi databasenya di layar bagian

atas.

Data tersebut anda gunakan ketuka koneksi database.

Page 127: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 124

11. Buat tabel. Sebagai contoh adalah tabel bukutamu. Caranya :

Cari Buat tabel baru pada datatabase [databasekamu] : [di bagian bawah layar]

Isi nama table dan berapa jumlah kolom (fieldnya).

Klik tombol Go untuk membuat struktur tabel.

Isi struktur tabelnya.

Klik tombol Save untuk menyimpan struktur. Jika berhasil, maka akan muncul keterangan

seperti di bawah ini.

Keterangan Tabel Sudah Dibuat

Page 128: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 125

12. Sesudah membuat database, dan tabel bukutamu, langkah berikutnya adalah mengirimkan

data dari yang ada di komputer local ke server. Daripada mengisi data 1 per 1, lebih baik kita

import dari data yang ada di komputer lokal.

Buka http://localhost/phpmyadmin

Klik nama database yang akan diimport

Di Frame sebelah kanan cari bagian View dump (schema) of database, Pilih data only,

kemudian check pilihan save as file, klik tombol GO.

Setelah mengklik tombol Go, anda diminta untuk mengisi di folder mana file query

tersebut akan disimpan.

Langkah selanjutnya kembali ke layar mahasiswa.unikom.ac.id, kemudian pilih pilihan

Menjalankan Query pada database [databasekamu] : Kemudian klik browse untuk

memilih file query.

Klik Go untuk mengeksekusi file query.

Page 129: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 126

Jika berhasil, maka akan muncul layar seperti di bawah ini :

Untuk membuktikan apakah datanya telah masuk, klik tombol Browse.

Ulangi langkah-langkah tersebut untuk mengupload data (tabel) yang lain. Sampai

semua tabel telah dibuat.

13. Langkah selanjutnya adalah mengupload script PHP dan/atau gambar. Caranya sebagai

berikut :

Script yang anda buat belum tentu bisa langsung jalan di server. Jadi sebelum

mengupload, lebih baik anda edit script tersebut agar bisa jalan di server dengan benar.

Cara mengeditnya adalah :

- Edit file koneksidb.php, isi nama database, username, dan password. Lihat file

mhsif_perbaikan\koneksidb.php, sesuai seting yang anda daftarkan ketika membuat

database.

Page 130: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 127

- Edit file yang mendapat data dari form seperti simpanbukutamu.php, edit sesuai

dengan modul adaptasi PHPTriad ke Server. Contoh lihat file

mhsif_perbaikan\simpanbukutamu.php

- Sebagai contoh dapat anda bandingkan file yang ada di folder mhsif dengan

mhsif_perbaikan.

Klik tombol FILE Manager, untuk menampilkan/mengupload file

Upload semua file yang ada di komputer lokal ke server, dengan mengklik tombol Easy

Upload File, yang akan menampilkan layar di bawah ini.

Pilih file yang akan diupload dengan menekan tombol Browse. Sekali upload bisa lebih

dari 1 file.

Page 131: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 128

Klik tombol Upload File-File ini. Jika upload selesai, maka di layar FILE Manager akan muncul daftar file yang telah

diupload.

Untuk membuat folder, misalnya folder image, langkahnya adalah : klik tombol Buat

Direktori Baru, yang akan memunculkan dialog yang meminta nama folder yang akan

dibuat. Isi dengan nama folder yang akan dibuat. Kemudian klik OK.

Jika membuat folder telah sukses, maka akan ada di layar FILE Manager.

Page 132: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 129

Kalau anda ingin mengupload file ke folder image, klik dulu gambar direktori sebelah

nama folder .

Upload semua file gambar ke folder tersebut.

14. Kalau semua file telah diupload, test website dengan mengklik tombol

http://mahasiswa.unikom.ac.id/~userkamu.

15. Test semua halamannya

Direktori aktif

Page 133: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 130

Page 134: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 131

16. Semua telah selesai

Data telah disimpan

Page 135: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 132

UPLOAD DATA KE SERVER DI INTERNET

Pengaturan Web Hosting

Web Hosting adalah suatu cara untuk menyimpan web yang kita punya ke suatu server yang

terkoneksi ke internet. Untuk menyimpan web ke suatu server bisa 2 cara yaitu web hosting

komersil atau web hosting gratis (free web hosting).

Web hosting yang akan dijelaskan di sini adalah web hosting yang kedua yaitu web hosting

gratis.

Salah satu situs yang memberikan layanan web hosting gratis adalah : http://www.555mb.com

Langkah-langkah untuk membuat/memesan web hosting di situs tersebut adalah sebagai berikut:

a. Buka situs tersebut dengan menulis http://www.555mb.com, cari form pengisian domain

name seperti di gambar di bawah ini.

b. Kemudian isi username kemudian klik GO

Setelah mengklik tombol Go, maka akan muncul layar pengisian data pribadi.

Page 136: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 133

c. Isi data anda. Bagian penting dari pengisian data ini adalah e-mail. Anda harus

menggunakan alamat e-mail yang benar.

Jangan lupa menulis Security Code. Klik tombol Continue untuk melanjutkan.

Page 137: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 134

d. Jika tanpa ada kesalahan, maka di browser akan memunculkan tampilan seperti di gambar

ini yang menunjukan bahwa pendaftaran telah dilakukan dan Authorization Code telah dikirim

ke e-mail yang tadi diinputkan yang akan digunakan untuk mengaktifkan account user anda.

Klik tombol Continue untuk melanjutkan proses.

e. Buka e-mail kamu (sesuai dengan email yang tadi diinputkan di form registrasi). Jika

registrasi yang tadi dilakukan berhasil dengan benar maka akan muncul e-mail yang berjudul

: “Hosting Account Confirmation” yang disinya seperti digambar di bawah ini.

Langkah selanjutnya adalah mengklik link yang panjang (cara 1)atau dengan mengklik link

yang kedua (http://www.lxhost.org/cgi-bin/xpanel/confirm.cgi) (cara 2).

f. Jika mengklik link yang kedua, maka anda diminta untuk mengisi id dan Authorization Key

yang juga ada di e-mail yang tadi.

Klik tombol Confirm untuk mengkonfirmasikan registrasi.

Page 138: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 135

g. Jika konfirmasi telah dilakukan (baik cara 1 atau cara 2) dengan benar, maka akan muncul

pesan seperti di bawah ini yang menandakan bahwa account urangciamis.555mb.com telah

terkirim ke administrator, anda akan mendapatkan pesan secepatnya.

Langkah selanjutnya adalah MENUNGGU sampai account kita diaktifkan/disetujui oleh

administrator. Ada kemungkinan web site anda baru bisa aktif/disetujui oleh administratornya

12 jam atau lebih. Jika informasi dari administrator telah ada maka langkah selanjutnya

adalah mengkonfirmasi email dari administrator tersebut. (maaf tidak tersedia gambarnya).

Setelah email tersebut dikonfirmasi, maka akan muncul pesan seperti di bawah ini yang

menunjukan bahwa informasi login telah dikirim ke email kamu.

Jika telah muncul pesan tersebut, maka periksa email kamu yang akan berisi email yang

berjudul : “Your Account is now active!” yang isinya seperti gambar di bawah ini.

Perhatikan informasi-informasi di atas. Informasi tersebut akan anda gunakan untuk

pembuatan domain atau konfigurasi server database untuk koneksi database (file

koneksidb.php).

Alamat Web

Konfigurasi

server FTP

Konfigurasi server

database MySQL

Page 139: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 136

h. Jika anda telah menerima pemberitahuan bahwa account anda telah aktif, maka langkah

selanjutnya adalah mengupload file.

i. Buka halaman http://www.555mb.com, kemudian login seperti di gambar di bawah ini.

Isi Username yang dipakai adalah alamat web kamu, contoh : urangciamis.555mb.com dan

isi pula Password sesuai dengan password yang dulu dipakai ketika registrasi. Kemudian klik

tombol Log In.

j. Jika anda login sudah benar, maka akan muncul layar control panel web seperti di bawah ini.

Ada beberapa tombol yang ada di halaman administrator ini yaitu :

‐ Account Data : untuk mengatur kembali data account

‐ Change Password : untuk mengganti password

‐ File Manager : untuk mengatur file, folder, atau upload file.

‐ Install Forum : mengaktifkan forum diskusi berbasis web

‐ Create DB : Membuat database sesuai account kita.

‐ Upgrade : jika anda ingin mengupgrade hosting ke versi komersil.

‐ Delete Account : menghapus web hosting jika sudah tidak diperlukan.

Page 140: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 137

Bagian yang akan diterangkan adalah File Manager dan Create DB.

k. Klik tombol File Manager, untuk mengatur file. Adapun layar File Manager adalah seperti di

gambar di bawah ini.

Ada beberapa tombol yang dapat dipakai :

‐ Main Menu : Kembali ke menu utama

‐ Log Out : Log out

‐ Delete : Menghapus file yang dipilih/checked

‐ Rename : Me-rename file yang dipilih/checked

‐ Set Permission : Mengatur hak akses user, group atau other.

‐ Wysiwyg Edit : Mengedit file yang dipilih secara WYSIWYG (What You See Is What You

Get) atau secara visual,

‐ Edit : Mengedit file yang dipilih secara coding.

‐ Browse : Memilih file yang ada di komputer lokal yang akan diupload

‐ Upload : Mengupload file atau file-file yang telah di browse.

‐ Create Folder : membuat folder baru.

‐ Create File : membuat file baru.

Page 141: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 138

l. Untuk mengirim file ke server (upload), caranya dengan mem-browse file yang akan diupload

kemudian klik tombol Upload. Sekali upload boleh lebih dari 1 file. Lihat gambar di bawah ini.

Contoh di atas adalah contoh mengupload file index.php, koneksi.php, bukutamu.php dan

berita.php.

m. Jika berhasil, maka akan tampil halaman seperti gambar di bawah ini yang menandakan

bahwa upload telah berhasil.

Klik tombol Back untuk kembali ke File Manager. Maka di File Manager akan muncul

tampilan seperti di bawah ini.

n. Jika ingin membuat folder di server misalkan untuk menyimpan gambar, langkahnya adalah

mengisi nama folder dan mengklik tombol Create Folder. Perhatikan gambar di bawah ini.

Jika telah berhasil, maka akan muncul pesan berikut :

Page 142: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 139

o. Jika anda ingin membuat suatu folder yang dapat diakses secara umum oleh user misalkan

folder untuk menyimpan file yang diupload oleh pengunjung atau anda ingin membuat suatu

file yang digunakan untuk menyimpan buku tamu atau counter maka kita harus mengatur hak

akses (permission) folder atau file tersebut. Cara agar suatu folder bisa digunakan secara

umum adalah :

‐ Pilih folder atau file yang akan diatur permissionnya

‐ Klik tombol Set Permission

‐ Atur permissionnya, isi 777 untuk akses bebas

‐ Klik tombol Set Permission

‐ Dengan mengeset 777 maka folder tersebut dapat digunakan untuk menyimpan file

upload.

Page 143: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 140

Pengaturan Database

a. Langkah selanjutnya adalah membuat database untuk penyimpanan data. Langkah

pertamanya adalah kembali ke menu utama administrator yaitu dengan mengklik tombol

Main Menu di layar File Manager.

b. Klik tombol Create DB untuk membuat database.

c. Jika berhasil maka akan muncul pesan seperti di bawah ini.

Perhatikan semua informasi di atas, kemudian anda edit file koneksidb.php kemudian

sesuaikan isinya, sehingga isi file koneksidb.php akan seperti di bawah ini.

<? mysql_connect("localhost","20797","passwordkamu") or die("MySQL Tidak Aktif Atau User Salah"); mysql_select_db("20797") or die("Database Tidak Ditemukan"); ?>

d. Klik tombol Main Menu untuk kembali ke menu utama. Menu utama akan berubah yang

tadinya bertuliskan Create DB akan menjadi phpMyAdmin,

Page 144: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 141

e. Klik tombol phpMyAdmin untuk mengatur database.

Isi Username sesuai username kamu, dan password, kemudian klik tombol Log In. Jika ingin

phpMyAdmin versi bahasa Indonesia, pilih bahasa pada combo box Language dan klik

tombol Go.

f. Jika berhasil akan menampilkan tampilan seperti di bawah ini.

Ada beberapa link yang dapat digunakan diantaranya :

‐ Databases : Menampilkan nama database

‐ Import : Mengimport database, biasanya dari file yang berisi perintah sql.

‐ Export : Mengeksport database, bisa ke file sql, Excel atau Word.

Page 145: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 142

g. Untuk membuat tabel, klik tombol Databases

h. Klik di nama databasenya untuk melihat tabel yang ada didalamnya

i. Pada Groupbox Create New Table on database NamaDatabase, isi Name dengan nama

tabel yang akan dibuat (contoh : berita), kemudian isi banyak fieldnya (contoh 7). Kemudian

klik Go.

j. Isi struktur tabelnya

Klik tombol Save untuk menyimpan table.

k. Selanjutnya, terserah anda.

l. Untuk mengimport atau mengekspor data, baca kembali cara upload yang ada di CD atau di

http://if.unikom.ac.id/andri/dokumentasi.php

m. Untuk Free Domain, baca kembali modulnya di CD atau di

http://if.unikom.ac.id/andri/dokumentasi.php, yang berbeda hanya di bagian URL-nya saja

dengan menggantinya dengan web hosting yang tadi dibuat misal

http://www.urangciamis.555mb.com.

Page 146: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 143

Page 147: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 144

LAMPIRAN 1 PENGENALAN HTML

HTML (HYPER TEXT MARKUP LANGUAGE) HTML merupakan kependekan dari Hyper Text Markup Language. Dokumen HTML adalah

file teks murni yang dapat dibuat dengan editor teks sembarang. Dokumen HTML ini dikenal

sebagai web page. Dokumen HTML merupakan dokumen yang disajikan dalam browser web.

Dokumen ini umumnya berupa informasi yang disajikan di internet.

Umumnya file HTML berekstensi .htm atau .html. Nama file / dokumen HTML boleh

kombinasi antara huruf kecil dan huruf besar. Tetapi umumnya, di internet suatu file HTML ditulis

dengan menggunakan huruf kecil. Ini dikarenakan ada beberapa sistem operasi yang

membedakan antara huruf kecil dan huruf besar.

Dokumen HTML disusun oleh elemen-elemen. Elemen ini merupakan istilah bagi

komponen-komponen dasar pembantuk dokumen HTML. Beberapa contoh elemen adalah :

head, body, table, paragraf, dan list.

TAG HTML Setiap penandaan elemen dari dokumen html menggunakan tag. Tag HTML diawali

dengan sebuah tanda lebih kecil (<), nama tag dan diakhiri dengan tanda lebih besar (>) contoh

<hr>. Penulisan nama tag boleh kombinasi antara huruf kapital dan huruf kecil.

Ada banyak jenis tag yang diharuskan berpasangan. Tag yang berpasangan diawali

dengan <nama tag> dan kemudian di bagian akhir ditutup dengan </nama tag>. Contoh

<marquee> Ini teks yang berjalan </marquee>, elemen tersebut merupakan perintah untuk

membuat suatu teks yaitu teks “ini teks yang berjalan” agar berjalan.

Tag yang tidak berpasangan diantaranya perintah <hr> yaitu untuk membuat garis vertikal

(horizontal rule), <br> yaitu untuk pindah baris.

Page 148: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 145

ELEMEN DASAR HTML Elemen-elemen dasar yang digunakan untuk membuat suatu dokumen HTML adalah tag

<html> dan </html>, tag <head> dan </head>, dan tag <body> dan </body>.

Struktur dasar dari dokumen HTML adalah sebagai berikut : <html> <head> pengenalan/informasi tentang dokumen HTML </head> <body> disinilah semua teks dan yang lainnya ditulis. </body> </html>

Elemen <html> dan </html> merupakan suatu tag yang menunjukan bahwa dokumen

tersebut merupakan dokumen HTML.

Elemen <head> dan </head> merupakan yang berisi pengenalan/informasi tentang

dokumen tersebut. Diantara tag inilah kita menulis judul (title) dari dokumen web.

Elemen <body> dan </body> merupakan tag yang menandakan awal dan akhir dari badan

dari dokumen html. Dalam bagian inilah (diantara awal dan akhirnya) isi dokumentasikan ditulis.

Contoh sederhana adalah seperti berikut : <html> <head> <title>Ini Judul, OK</title> </head> <body>Disinilah isi dokumen html ditulis </body> </html>

Kalau skrip html tersebut dijalankan dalam sebuah browser, maka akan menghasilkan

dokumen html seperti berikut :

Page 149: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 146

Tag <title> dan </title> digunakan untuk menuliskan judul di bagian atas (caption) dari web

browser. Jika tag title tidak ditulis, maka yang tertulis di dalam caption web browser adalah

alamat dan nama file yang sedang dibrowse.

TAG PENGATURAN TEKS Untuk menampilkan dokumen supaya bisa terlihat lebih baik, maka ada beberapa tag yang

perlu diketahui. Tag-tag tersebut diantaranya berguna untuk mempertebal tulisan (bold), meng-

italic-an tulisan, menggarisbawahi tulisan, pengaturan paragraf dan lain-lain. Tag-tag tersebut

diantaranya :

Tag Awal Tag Akhir Kegunaan

<b> </b> Menebalkan (bold) teks yang berada di dalamnya

<i> </i> Memiringkan (italic) teks yang berada di dalamnya

<u> </u> Menggarisbawahi teks yang berada di dalamnya

<big> </big> Memperbesar teks sebesar 1 tingkat

<small> </small> Memperkecil teks sebesar 1 tingkat

<strong> </strong> Memberikan efek tebal

<sup> </sup> Menuliskan teks sebagai teks superscript

<sub> </sub> Menuliskan teks sebagai teks subscript

<hx> </hx> Menuliskan teks sebagai heading (judul) topik. X diisi dengan nomor

dari 1 sampai dengan 6. <h1> merupakan heading dengan font yang

paling besar.

<tt> </tt> Menuliskan teks seperti tulisan pada mesin tik (monospace)

<br> - Pindah ke baris berikutnya (break rule)

<font> </font> Mengatur tampilan teks dengan menentukan nama font dan besarnya

Page 150: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 147

Contoh : <html> <head> <title>Ini Judul, OK</title> </head> <body> <b>Ini teks tebal</b><Br> <u>Ini teks digaris bawah</u><br> <i>Ini teks dimiringkan</i><br> <b><i>teks ini ditebalkan dan dimiringkan</i></b><br> <tt>Ini gaya tulisan mesin tik</tt><br> Contoh superscript : f(x)=2x<sup>2</sup>+5x+3<Br> Contoh sub script :D=X<sub>1</sub>+X<sub>2</sub><br> Ini Tulisan Normal <big><big>ini diperbesar 2 kali</big></big> normal lagi khan?<br> Ini Tulisan Normal <small><small>ini diperbesar 2 kali</small></small> normal lagi khan?<br> Ini Juga Normal tapi yang ini <strong>dipertebal</strong><br> <font face=”verdana” size=5>Ini teks berfont VERDANA dengan besar 5</font> <h1>Ini Header 1</h1> <h2>Ini Header 2</h2> <h3>Ini Header 3</h3> <h4>Ini Header 4</h4> <h5>Ini Header 5</h5> <h6>Ini Header 6</h6> </body> </html>

Script tadi akan menghasilkan tampilan web seperti gambar berikut :

Page 151: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 148

Page 152: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 149

TAG PENGATURAN PARAGRAPH Untuk mengatur paragraf, digunakan tag <p> dan </p>. Tag ini mempunyai atribut align

yang boleh terisi dengan center, left, right dan justify.

Contoh : <html> <head> <title>Ini Judul, OK</title> </head> <body> <p align=left><b>Rata Kiri</b> PHP dikenal sebagai sebuah bahasa script yang dieksekusi di server dan digunakan untuk membuat suatu halam web yang dinamis</p> <p align=center><b>Rata Tengah</b> PHP dikenal sebagai sebuah bahasa script yang dieksekusi di server dan digunakan untuk membuat suatu halam web yang dinamis</p> <p align=right><b>Rata Kanan</b> PHP dikenal sebagai sebuah bahasa script yang dieksekusi di server dan digunakan untuk membuat suatu halam web yang dinamis</p> <p align=justify><b>Rata Kiri-Kanan</b> PHP dikenal sebagai sebuah bahasa script yang dieksekusi di server dan digunakan untuk membuat suatu halam web yang dinamis</p> </body> </html>

Hasil yang terlihat di browser adalah :

Page 153: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 150

TAG LIST Tag list digunakan untuk menampilkan beberapa daftar. Ada beberapa jenis list yang

dikenal oleh HTML yaitu :

1. List bernomor (ordered list), tag yang dipakai adalah <ol> dan diakhiri dengan </ol> 2. List tidak bernomor (unordered list) , tag yang dipakai adalah <ul> dan </ul> 3. List definisi (definition list), tag yang dipakai adalah <dl> dan </dl>

Untuk item listnya, tag yang digunakan dalam list bernomor dan tidak bernomor adalah

dengan perintah <li> dan ditutup dengan </li>. Sedangkan untuk list definisi, <dt> dan </dt>

sebagai definisi term dan <dd> dan </dd> sebagai definisi description (keterangan dari definisi

term).

Bentuk umum untuk membuat list bernomor adalah :

<ol type=”tipenomor”> <li>item 1</li> <li>item 2</li> <li>item 3</li> </ol>

Untuk tipenomor, nilai yang bisa diisikan adalah 1 (angka), A (huruf besar), a (huruf kecil), I

(romawi kapital), i (romawi kecil).

Bentuk umum untuk membuat list bernomor adalah :

<ul type=”tipebullet”> <li>item 1</li> <li>item 2</li> <li>item 3</li> </ul>

Untuk tipenomor, nilai yang bisa diisikan adalah disc (bulatan), circle (lingkaran), square

(segiempat).

Untuk list definisi, bentuk umumnya adalah :

<dl> <dt>Term 1</dt><dd>Keterangan lengkap mengenai Term 1</dd> <dt>Term 2</dt><dd>Keterangan lengkap mengenai Term 2</dd> <dt>Term 3</dt><dd>Keterangan lengkap mengenai Term 3</dd> </dl>

Page 154: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 151

Contoh script adalah : <html> <head> <title>FORM HTML</title> </head> <body> <p>Kota-Kota Besar Di Pulau Jawa (memakai angka)</p> <ol type="1"> <li>Bandung</li> <li>Jakarta</li> <li>Surabaya</li> </ol> <p>Kota-Kota Besar Di Pulau Jawa (memakai huruf kapital)</p> <ol type="A"> <li>Bandung</li> <li>Jakarta</li> <li>Surabaya</li> </ol> <p>Kota-Kota Besar Di Pulau Jawa (memakai bulatan)</p> <ul type="disk"> <li>Bandung</li> <li>Jakarta</li> <li>Surabaya</li> </ul> <p>Kota-Kota Besar Di Pulau Jawa (memakai segiempat)</p> <ul type="square"> <li>Bandung</li> <li>Jakarta</li> <li>Surabaya</li> </ul> <p>Kota-Kota Besar Di Pulau Jawa (dalam bentuk seperti daftar pustaka)</p> <dl> <dt><b>Bandung</b></dt><dd>Bandung adalah ibukota Jawa Barat</dd> <dt><b>Jakarta</b></dt><dd>Jakarta adalah ibukota DKI Jakarta</dd> <dt><b>Surabaya</b></dt><dd>Surabaya adalah ibukota Jawa Timur</dd> </dl> </html>

Page 155: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 152

Hasil tampilan script diatas :

Page 156: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 153

TAG PEMBUATAN TABEL Untuk membuat suatu tabel dalam suatu halaman web site, maka tag yang dipakai adalah

<table> dan </table>, <tr> dan </tr> yang terarti table row, <td> dan </td> yang berarti table data.

Bentuk dari tabel adalah seperti berikut :

Untuk membuat sebuah tabel, maka skrip yang harus ditulis adalah sebagai berikut : <html> <head> <title>Ini Judul, OK</title> </head> <body> <table border=4 cellspacing=10 cellpadding=5> <tr><td>Kiri Atas</td><td>Kanan Atas</td></tr> <tr><td>Kiri Bawah</td><td>Kanan Bawah</td></tr> </table> </body> </html

Skrip tersebut menghasilkan tampilan di browser sebagai berikut :

Cellspacing

Cellpadding

Border

Row

Data

Page 157: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 154

TAG GAMBAR Untuk memperbagus tampilan html, maka kadang diperlukan gambar baik gambar yang

tetap atau yang animasi. Tag yang dipakai untuk menampilkan gambar adalah tab <img>.

Beberapa atribut yang sering digunakan dalam tag ini adalah :

1. src : menunjukan lokasi file gambar 2. border : tebal bingkai gambar 3. width : lebar gambar 4. height : tinggi gambar 5. align : peletakan gambar

Contoh :

<html> <head> <title>IMAGE HTML</title> </head> <body> <p><img border=3 src="admin/images/php.gif" width="120" height="64" align="middle">Image dengan border 3 dengan align middle</p> <p><img src="admin/images/php.gif" width="120" height="64" align="right">Image dengan tanpa border dengan align right, gambar ini merupakan gambar resmi simbol dari php.</p> <p><img src="admin/images/php.gif" width="120" height="64" align="left">Image dengan tanpa border dengan align left, gambar ini merupakan gambar resmi simbol dari php.</p> </body> </html>

Script d iatas akan menghasilkan tampilan seperti gambar berikut :

Page 158: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 155

Page 159: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 156

TAG LINK HTML Kelebihan utama dokumen HTML adalah kemampuannya untuk memberikan link dari satu

teks dan atau gambar menuju ke dokumenatau bagian lain dalam suatu dokumen. Browser akan

menyorot (highlight) teks atau gambar yang diidentifikasi sebagai link dengan warna dan atau

garis bawah untuk menunjukkan bahwa itu adalah hperteks link.

Untuk membuat sebuah link, maka tag yang dipakai adalah tag <a> dan </a>. Atribut-

atribut dari tag ini adalah :

1. href : lokasi yang dituju, bisa alamat internet, file atau folder 2. target : lokasi link tersebut ditampilkan. Gunakan _blank jika ingin menampilkan link

yang dituju di browser baru/lain. Contoh script :

<html> <head> <title>IMAGE HTML</title> </head> <body> <p>Home page ini menyediakan beberapa link ke search engine :</p> <p><a href="http://www.yahoo.com" target="_blank">www.yahoo.com</a></p> <p><a href="http://www.altavista.com" target="_blank">altavista</a></p> <p><a href="http://www.google.com" target="_blank">google</a></p> <p><a href="http://www.php.net"><img border=3 src="admin/images/php.gif" width="120" height="64" align="middle"></a> link dengan gambar</p> <p><a href="http://www.mysql.com"><img border=0 src="admin/images/mysql.gif" width="167" height="87" align="middle"></a> link dengan gambar tanpa border</p> </html>

Skrip html diatas menghasilkan tampilan seperti berikut :

Page 160: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 157

TAG FORM Kadang-kadang ketika kita berjalan-jalan / surfing, kita diminta untuk mengisikan suatu data

yang akan dikirim ke penyedia web site. Data-data tersebut bisa berupa data nama, alamat, no

kartu kredit, gambar, atau file.

Untuk membuat suatu form yang dapat berinteraksi dengan visitor, maka pengembang web

harus membuat suatu form dalam dokumen html-nya. Untuk membuat suatu form dalam

dokumen html, tag yang digunakan adalah <form> </form>. Di antara kedua tag tersebut,

elemen-elemen form dituliskan.

Perintah umum tag form adalah

<form name=”namaform” method="jenismethod" action="fileeksekusi"> disinilah elemen-elemen form ditulis </form>

Atribut name diisi dengan nama dari form tersebut.

Page 161: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 158

Atribut method diisi dengan GET atau POST

Atribut action diisi dengan nama file yang akan dieksekusi ketika tombol submit ditekan.

Ada beberapa jenis elemen form yang dapat digunakan diantaranya :

JENIS TYPE KEGUNAAN GAMBAR

Cara pakai : <input type=”namatipe” name=namaelemen value=”tulisan”> Text Box text Memasukan 1 baris teks

Radio

Button

radio Pilihan yang hanya bisa dipilih 1

dari beberapa option

Check Box checkbox Pemilihan dimana boleh memilih

lebih dari satu option

Submit submit Tombol untuk melakukan proses

Reset reset Tombol untuk me-reset form ke

kondisi sebelum adanya pengisian

data

Button button Tombol biasa

File Upload file Untuk pemilihan file yang akan di

upload ke server

Text Area, digunakan untuk menampilkan teks yang ukurannya

besar. cara pakainya adalah : <textarea name=”namatextarea” rows=”banyakbaris” cols=”banyakkolom” size=”banyakitemditampilkan”> isi teks diisi disini </textarea>

Select, digunakan untuk menampilkan pilihan yang telah

disediakan. Cara pakainya adalah : <select name=namaoption> <option value=”Bandung” selected>Bandung</option> <option value=”Jakarta” >Jakarta</option> <option value=”Surabaya”>Surabaya</option> </select>

Page 162: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 159

Contoh script : <html> <head> <title>FORM HTML</title> </head> <body> <form method="POST" action="isemg.php"> <p>Text Box <input type="text" name="T1" size="20"></p> <p>Radio Button <input type="radio" value="V1" checked name="R1">Pilihan</p> <p><input type="checkbox" name="C1" value="ON">Pilihan 1</p> <p><input type="file" name="F1" size="7"></p> <p><select size="1" name="D1"> <option selected value="Bandung">Bandung</option> <option value="Jakarta">Jakarta</option> <option>Surabaya</option> </select></p> <p><textarea rows="5" name="S1" cols="27">Disini saya bisa ditulis dalam beberapa paragraf. Saya bisa menampung teks dengan banyak. </textarea></p> <input type="Submit" value="Submit" name="B1"> <input type="button" value="Button" name="B2"> <input type="reset" value="Reset" name="B3"> </form> </html>

Script diatas akan menghasilkan tampilan berikut di browser.

Page 163: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 160

LAMPIRAN 2 PENGENALAN PHP

PENDAHULUAN

Sejarah PHP PHP adalah salah satu bahasa Server-side yang didesain khusus untuk aplikasi web. PHP dapat disisipkan diantara bahasa HTML dan karena bahasa Server side, maka bahasa PHP akan dieksekusi di server, sehingga yang dikirimkan ke browser adalah “hasil jadi” dalam bentuk HTML, dan kode PHP anda tidak akan terlihat.

PHP dahulunya merupakan proyek pribadi dari Rasmus Lerdorf ( dengan dikeluarkannya PHP versi 1) yang digunakan untuk membuat home page pribadinya. Versi pertama ini berupa kumpulan script PERL. Untuk versi keduanya, Rasmus menulis ulang script-script PERL tersebut menggunakan bahasa C, kemudian menambahkan fasilitas untuk Form HTML dan koneksi MySQL. Adapun PHP didapat dari singkatan Personal Home Pages.

Setelah mengalami perkembangan oleh suatu kelompok open source(termasuk Rasmus) maka mulai versi 3 nya, PHP telah menampakkan keunggulannya sebagai salah satu bahasa server scripting yang handal. Melalui perkembangan yang pesat ini banyak fasilitas yang ditambahkan dan oleh kelompok ini PHP disebut sebagai "PHP: Hypertext Preprocessor" . Sintak yang digunakan berasal dari bahasa C , Java maupun Perl. Sampai tulisan ini dibuat versi PHP yang terbaru adalah versi 4.1.1. Untuk release terbaru dari PHP dapat anda lihat pada web site http://www.php.net/ .

PHP merupakan bahasa script yang digunakan untuk membuat halaman web yang dinamis. Dinamis berarti halaman yang akan ditampilkan dibuat saat halaman itu diminta oleh client. Mekanisme ini menyebabkan informasi yang diterima client selalu yang terbaru. Semua script PHP dieksekusi pada server dimana script tersebut dijalankan. Oleh karena itu, spesifikasi server lebih berpengaruh pada eksekusi dari script php daripada spesifikasi client. Namun tetap diperhatikan bahwa halaman web yang dihasilkan tentunya harus dapat dibuka oleh browser pada client. Dalam hal ini versi dari html yang digunakan harus didukung oleh browser client. PHP termasuk dalam Open Source Product. Jadi anda dapat merubah source code dan mendistribusikannya secara bebas. PHP juga diedarkan secara gratis. Anda bisa mendapatkannya secara gratis. PHP juga dapat berjalan diberbagai web server semisal IIS, Apache. PWS, dll.

Page 164: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 161

Sintak Dasar PHP

Tag PHP

Seperti telah disebutkan sebelumnya , bahwa parser PHP akan membaca file html sampai

ditemukan tag spesial yang memberitahukan untuk menterjemahkan teks berikutnya sebagai

code php. Parser php akan menjalankan semua kode yang dibacanya dari tag awal tadi sampai

ditemukan tag penutup kembali. Dengan cara inilah maka code script php dapat ditempelkan

pada document html(html-embedded). Semua teks yang berada diluar tag awal dan akhir php

akan dianggap sebagai teks html biasa dan akan dikirimkan langsung ke browser client untuk

ditampilkan.

Ada 4 pasangan tag yang dapat digunakan untuk menyatakan sebuah blok code php, yaitu :

1. <? echo "Program PHP Anda Disimpan Di Antara Tag Ini" ?> 2. <?php echo " Program PHP Anda Disimpan Di Antara Tag Ini " ?> 3. <script language="php">

echo " Program PHP Anda Disimpan Di Antara Tag Ini "; </script>

4. <% echo " Program PHP Anda Disimpan Di Antara Tag Ini " %>

Statemen

Sebuah statemen merupakan sebuah perintah yang diakhiri dengan tanda titik koma (;) . Tanda

tag penutup script php juga dapat sebagai penutup atau menyatakan akhir dari suatu statemen

PHP. Contoh :

<?php echo "hanya untuk test"; // statemen ini diakhiri dengan titik koma echo "untuk test saja" /* statemen ini tdk diakhiri dng titik koma */ ?>

Catatan php merupakan bahasa campuran case-sensitive dan case-insensitive, yaitu membedakan

antara huruf besar dan huruf kecil. Case-sensitive berlaku untuk semua penulisan nama variable.

Sedangkan penulisan sintak program dan nama fungsi bersifat case-insensitive. Penulisan variable

Page 165: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 162

$bilangan dengan $BILANGAN menghasilkan dua variable yang berbeda. Sedangkan penulisan

fungsi echo yang ditulis dengan huruf kecil semua atau gabungan huruf kecil-huruf besar akan

menunjukkan nama fungsi yang sama. Contoh : echo akan sama dengan ECHO ataupun Echo.

Komentar

Komentar merupakan bagian program yang tidak akan dieksekusi. Fungsi dari komentar ini

adalah sebagai dokumentasi program atau berupa penjelasan dari program. PHP memberikan

banyak pilihan untuk menuliskan komentar. Cara penulisannya merupakan adopsi dari gaya

penulisan komentar pada bahasa C, C++ maupun tipe komentar shell pada Unix. Cara berikut

dapat anda gunakan , yaitu :

Tipe komentar C/C++ <?php /* echo "Kalimat ini tidak akan dicetak"; */ ?> <?php echo "Kalimat ini akan dicetak"; // Bagian ini hanya merupakan komentar ?>

Tipe komentar Unix shell <?php echo "kalimat ini akan dicetak"; # Ini adalah komentar tipe Unix shell ?>

Penjelasan Jika tanda /* … */ digunakan maka semua code didalam pasangan tanda ini akan

diabaikan . Untuk tanda // maka code setelah tanda ini pada baris yang sama dengan tanda ini

akan diabaikan . Sedangkan tanda # kerjanya sama seperti tanda //.

Page 166: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 163

Tipe-Tipe Data Dalam PHP

PHP memiliki 8 tipe data dasar yaitu boolean , integer , float (floating-point) , string , array , object , resource dan NULL . Biasanya tipe variable pada php tidak ditentukan oleh programmer , namun ditentukan berdasarkan untuk apa variable itu digunakan saat program dijalankan. PHP memiliki kemampuan yang baik dalam mengoperasikan variable. Jika kita mengoperasikan variable tipe data yang berbeda , php dapat melakukan operasi tersebut tanpa ada kesalahan pengeksekusian. Tentunya ada aturan-aturan yang harus kita mengerti tentang bagaimana php memperlakukan suatu variable yang dikenai suatu operasi dengan variable yang berbeda tipe. Hal ini akan kita lihat pada bagian berikutnya.

Tipe Data Boolean

Sintak : bool atau boolean

Tipe ini baru dikenalkan pada php versi 4. Tipe ini memiliki dua nilai yaitu TRUE or FALSE. Kedua nilai ini dapat ditulis tanpa memperhatikan huruf besar ataupun kecil. Tipe ini biasanya digunakan untuk menguji suatu ekspresi bersyarat. Adapun nilai TRUE atau FALSE dapat dinyatakan dengan suatu nilai pada tipe data lainnya.

Untuk mengkonversi suatu nilai dari suatu variable ke tipe boolean dapat digunakan aturan berikut. Nilai FALSE memiliki kesamaan dengan integer 0, float 0.0 , string kosong , string "0" , array dan object dengan 0 elemen kemudian NULL. Sedangkan nilai TRUE merupakan nilai selain nilai FALSE atau 0 (bisa positif atau negatif).

Contoh :

<?php $ada = true; if($ada == TRUE) { echo "NIM ada terdaftar dalam database kami"; } else { echo "Maaf NIM anda tidak terdaftar"; } ?>

Penjelasan Potongan program akan melakukan pengujian terhadap nilai dari variable $ada. Pertama-tama $ada diberi nilai true. Kemudian dilakukan pengecekan nilai variable $ada. Jika $ada = true maka ditampilkan "NIM anda terdaftar dalam database kami" selain itu ($ada tidak sama dengan true , berarti false) maka ditampilkan "Maaf NIM anda tidak terdaftar".

Page 167: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 164

Tipe Data Integer

Sintak : int atau integer

Tipe ini merupakan tipe bilangan bulat. Contoh bilangan bulat : 1 , 0 , -1 , 2 , 100 . Untuk menyatakan suatu nilai bilangan bulat kita bisa menggunakan format desimal , octal maupun hexadesimal . Contoh penulisan nilai integer pada berbagai format :

$a = 1234; # desimal $a = -123; # negatif desimal $a = 0123; # octal (sama dengan 83 dalam desimal) $a = 0x1A; # hexadecimal (sama dengan 26 dalam desimal)

Ukuran dari jangkuan integer sangat tergantung pada platform yang digunakan. Biasanya integer memiliki ukuran 32 bits atau bisa menampung nilai dengan jangkauan 2 milyar(giga) . Yang perlu diketahui bahwa php tidak menyediakan tipe unsigned integer ( bilangan integer tak bertanda ). Jika seandainya kita memberikan suatu nilai di luar jangkauan integer ke suatu variable, maka variabel tersebut akan dikonversi ke tipe float. Selain itu tidak ada pembagian integer karena pembagian integer atau tipe numeric lainnya akan menghasilkan nilai float.

Tipe Data Float

Sintak : float

Tipe ini merupakan tipe bilangan real. Pada bahasa pemrograman seperti C/C++, tipe float terdiri dari single, double. Pada php jangkauan float juga tergantung pada platform yang digunakan, dimana maksimum bisa mencapai 1.8e308 dengan presisi 14 digit (64 bits). Contoh penulisan nilai float :

$a = 1.234; $a = 1.2e3; $a = 7E-10;

Catatan Biasanya pembagian dalam bilangan float tidak memberikan nilai pembulatan yang benar karena adanya kehilangan presisi ataupun adanya bilangan float yang berulang. Jadi jangan membandingkan nilai float untuk perbandingan kesamaan.

Tipe Data String

String merupakan kumpulan karakter. Pada php karakter sama dengan tipe bilangan byte yang mana memiliki 256 karakter berbeda. Panjang dari string yang dapat dibuat dibatasi oleh ukuran memori komputer kita. Jadi panjang string tak terbatas sepanjang memori kita mencukupi. Penulisan string pada php dapat diapit dengan tanda petik tunggal (') atau petik ganda (") . Contoh penulisan string :

$untai = 'Ini merupakan untaian karakter'; $rantai = "ini juga berupa string";

Page 168: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 165

Selain itu di dalam string juga bisa terdapat karakter escape. Apa itu karakter escape ? karakter escape merupakan karakter yang diawali oleh tanda '\' . Kegunaan dari karakter ini adalah menyatakan suatu karakter khusus. Contoh cara mencetak string "hanya sebuah test" (tanda kutip termasuk dicetak) :

echo " \"hanya sebuah test\"";

Beberapa katakter escape yang sering digunakan :

Karakter escape Keterangan

\n Linefeed / baris baru

\t Tab Horizontal

\\ Backslash (menulis tanda \ )

\$ Tanda dollar (menulis tanda $)

\" Petik ganda(menulis tanda ")

Sedangkan jika kita menggunakan backslash untuk karakter selain tersebut dalam table di atas, maka backslash juga akan tercetak diikuti karakter didepannya.

Catatan Perbedaan antara tanda petik ganda dan petik tunggal untuk menuliskan string adalah jika petik ganda maka jika didalam string terdapat suatu variable maka nilai dari variable yang akan diexpand Sedangkan petik tunggal maka semua huruf yang ada di dalam tanda petik tunggal akan dicetak apa adanya.

Contoh :

$a = 10; echo "nilai a = $a" ; // tercetak "nilai a = 10" echo 'nilai a = $a' ; // tercetak "nilai a = $a"

Untuk membaca sebuah karakter pada string dapat digunakan cara berikut :

$kalimat = "Test saja"; $first = $kalimat{0}; // mendapatkan huruf pertama kalimat

konversi string ke tipe numeric menggunakan aturan berikut jika sebuah string terdapat karakter '.', 'e' , atau 'E' maka string tersebut dikonversi ke tipe float. Kalau tidak maka akan dikonversi ke integer. Kemudian jika string diawali dengan huruf maka nilai numeriknya = 0. Contoh :

$foo = 1 + "10.5"; // $foo = 11.5 bertipe float $foo = 1 + "-1.3e3"; // $foo = -1.299 bertipe float $foo = 1 + "bob-1.3e3"; // $foo = 1 bertipe integer $foo = 1 + "bob3"; // $foo = 1 bertipe integer $foo = 1 + "10 Small Pigs"; // $foo = 11 bertipe integer $foo = 1 + "10 Little Piggies"; // $foo = 11 bertipe integer

Page 169: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 166

$foo = "10.0 pigs " + 1; // $foo = 11 bertipe integer $foo = "10.0 pigs " + 1.0; // $foo = 11 bertipe float

Tipe Data Array

Array adalah sebuah data yang mengandung satu atau lebih data, dan dapat diindek berdasarkan numerik maupun string. Pada php tipe masing-masing data variable array tidak harus sama dan variable array juga bisa menyimpan suatu variable array didalamnya. Array dapat dibuat dengan menggunakan fungsi array() atau list(). Sintak dari fungsi array() :

array( [key =>] value , ... ) // key is either string or nonnegative integer // value can be anything

Contoh :

$a = array( 1 => 'one', 2 => 'two', 3 => 'three' );

Jika key tidak dinyatakan atau nilai data langsung ditulis maka setiap data akan diberi index berupa angka yang berurutan sesuai dengan urutan penulisannya. Dan perlu diingat index array dimulai dari 0.

Contoh :

$a = array('one','two','three');

Cara lain untuk mendeklarasikan array adalah dengan menggunakan kurung siku([ ]) di depan nama variable array.

Sintak : $nama_var_array[key];

Contoh :

$list[10] = "22992000"; // data index 10 akan bernilai "22992307"

Yang perlu diingat besar dari array dapat berubah saat run time. Contoh penggunaannya :

$list[10] = "22992200"; // nilai data berindex 10 = "22992200" $list[] = "22992307"; // nilai data berindex 11 = "22992307"

Array multidimensi :

Page 170: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 167

$matrik[3][3] = 12; // elemen baris 3 kolom 3 = 12 $matrik[3][4] = 11; // elemen baris 3 kolom 4 = 11

untuk membaca isi suatu array secara iterative dapat digunakan fungsi foreach();

Sintak :

foreach(array_expression as $value) statement

Contoh :

$warna = array('merah','hijau','kuning'); foreach ( $warna as $item ) { echo "Do you like $item?\n"; } $colors = array('merah','hijau','kuning');

fungsi print_r() digunakan untuk menampilkan isi suatu array.

Casting Tipe Data

Kadang - kadang kita perlu mengubah integer ke float atau float ke integer,atau kita juga perlu mengubah suatu obyek dari sebuah class ke class yang lain. Proses inilah yang kita sebut casting.

Sintak :

(tipe data tujuan) nilai yang akan dirubah.

Contoh :

misal variable $b berisi data float. Kemudian kita ingin menyimpan nilai ini ke dalam integer maka :

$b = 2.55;

$a = (int) $b; // variable $a akan bernilai 2

Nilai dari variable $b akan diubah dahulu kedalam tipe float , kemudian baru disimpan dalam variable $a. Selain teknik casting ini, kita juga dapat menggunakan fungsi settype() untuk mengubah tipe data suatu nilai.

Caranya : settype($variabel,”tipebaru”);

Page 171: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 168

Catatan Jika kita ingin mengecek tipe dari suatu variable dapat kita gunakan fungsi gettype() atau is_type(). Selain itu jika kita ingin memaksakan suatu variable untuk dinyatakan dalam suatu tipe maka kita dapat menggunakan teknik casting.

Page 172: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 169

Variabel dan konstanta

Variabel

Variable merupakan penampung sebuah data dan memiliki sifat datanya dapat berubah-ubah. Pada PHP semua variable dituliskan dengan tanda $ di belakang nama variable. Aturan penamaan variable sama dengan aturan penulisan variable pada bahasa lainnya yaitu :

Nama variable bisa terdiri dari angka,huruf dan underscore. Selain itu tidak boleh digunakan.

Huruf pertama nama variable tidak boleh berupa angka. Pada PHP nama variable bersifat case-sensitive yaitu memperhatikan huruf

besar dan kecil.

Contoh :

//penamaan berikut benar $nama = "Yusuf"; $test123 = "Test"; $_TEST = "Test"; $Test123 = "Test";

//penamaan yang salah $1Huruf = "A"; //diawali dengan angka $sw3ar-it = "Again"; //menggunakan karakter "-" $Tom&Jerry = "Kucing"; // menggunakan karakter "&"

Yang perlu diingat deklarasi tipe variable biasanya tidak ditentukan oleh programmer. PHP akan secara otomatis mengubah atau memberi tipe data berdasarkan kontek penggunaannya.

Contoh :

$nama = "Ini tipe String" ; //deklarasi tipe string; $numeric = 123 ; //deklarasi integer $numeric = 456.123 ; //Sekarang $numeric bertipe float $bollean = true ; // deklarasi tipe Boolean

Page 173: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 170

Scope variable

Scope suatu variable adalah di bagian mana dari program variable itu berlaku atau dinyatakan. Penting bagi kita untuk mengetahui scope dari sebuah variable. Variable yang dinyatakan di dalam fungsi memiliki scope lokal saja artinya variable itu hanya dikenali atau digunakan di dalam fungsi itu saja.

Contoh :

<?php $A = 123 ; // variable global function Test() { $A = "Test"; // variable local echo "Nilai A dalam fungsi = $A \n"; } Test(); echo "Nilai A luar fungsi = $A \n"; ?>

Jika dijalankan maka akan tercetak :

Nilai A dalam fungsi = "Test"

Nilai A luar fungsi = 123

Untuk menyatakan suatu variable global dari dalam fungsi dapat digunakan kata kunci global.

Contoh : <?php $A = 123 ; // variable global function Test() { global $A ; // variable local echo "Nilai A dalam fungsi = $A \n"; } Test(); echo "Nilai A luar fungsi = $A \n"; ?>

Jika dijalankan maka akan tercetak :

Nilai A dalam fungsi = 123

Nilai A luar fungsi = 123

Page 174: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 171

Catatan PHP memiliki variable-variable yang telah didefinisikan sebelumnya, variable ini digunakan untuk memberikan informasi tentang server , client dan lain-lain. Contoh :

$DOCUMENT_ROOT : berisi nama direktori root pada server. $SERVER_NAME : berisi nama dari server host di mana script dieksekusi.

Nilainya bisa berupa nama virtual host. $HTTP_USER_AGENT : Berisi informasi tentang client seperti jenis browser dan

Sistem Operasinya.

Untuk lebih detailnya, nama-nama variable yang ada dapat anda menggunakan fungsi phpinfo().

Coba anda buat file info.php berikut :

<?php phpinfo(); ?>

Kemudian buka di browser. PHP akan menampilkan semua informasi tentang variable yang ada beserta nilainya.

Konstanta

Konstanta mirip dengan variable. Bedanya nilai konstanta tidak pernah berubah sejak dideklarasikan. Untuk mendeklarasikan konstanta digunakan fungsi define().

Sintak : define("nama_konstanta",nilai);

Contoh :

<?php define("phi",3.14); define("nama","Andri Heryandi"); $r = 5; $luas = phi * $r * $r ; echo "Luas = $luas" ; $nama = nama; echo "Nama Saya Adalah $nama" ; ?>

Page 175: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 172

Operator Dalam PHP

Operator digunakan untuk melakukan suatu operasi. Operator-operator yang banyak digunakan

diantaranya :

Operator Aritmatika

Operator ini berhubungan dengan operasi aritmatik.

Operator Penggunaan Contoh

+ Penjumlahan $a + $b

- Pengurangan $a - $b

* Perkalian $a * $b

/ Pembagian $a / $b

% Modulus $a / $b

Modulus merupakan operasi sisa bagi. Contoh :

10 % 2 = 0 ( 10 dibagi 2 sisanya 0 ) 11 % 2 = 1 ( 11 dibagi 2 sisanya 1 )

Operator Assignment

Operator ini digunakan untuk memberikan/mendefinisikan nilai ke sebuah variable.

Operator Analogi Contoh

= $a = $a $a = 3

+= $a = $a + 1 $a += 1

-= $a = $a - 1 $a -= 1

*= $a = $a * 1 $a *= 2

/= $a = $a /1 $a /= 2

Page 176: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 173

Operator Bitwise

Operator ini digunakan untuk operasi-operasi bilangan biner.

Operator Keterangan Contoh

& And 11 & 13 = 9

| Or 11 | 13 = 15

^ Xor 11 ^ 13 = 6

~ Not ~11 = 12

<< Shift Left 11 << 2 = 2

>> Shift Right 11 >> 2 = 44

Operator Perbandingan

Operator ini digunakan untuk melakukan suatu operasi perbandingan dan biasanya diletakkan di

struktur kontrol program seperti if, elseif.

Operator Keterangan Contoh

== Sama dengan $a == $b

=== Identik / Sama dengan dan

sama tipe $a === $b

!= Tidak sama dengan $a != $b

< Lebih kecil dari $a < $b

> Lebih besar dari $a > $b

<= Lebih kecil dari atau sama

dengan $a <= $b

>= Lebih besar dari atau sama

dengan $a >= $b

Hasil dari suatu perbandingan selalu antara nilai true atau false saja. True jika perbandingannya

benar dan sebaliknya akan bernilai salah.

Page 177: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 174

Operator Logika

Operator ini digunakan untuk melakukan suatu operasi logika.

operator Keterangan Contoh

And And ($a > $b) and ($a < $c)

Or Or ($a > $b) or ($a < $b)

Xor Xor ($a = 2) xor ($a = 3)

! Not !($a >= $b)

Operator Decrement dan Increment

Operator ini diadopsi dari bahasa C++. Digunakan untuk menambahkan atau mengurangi nilai

suatu variable dengan 1.

Operator Keterangan Contoh

++$a Pre-increment $a = ++$b

--$a Pre-decrement $a = --$b

$a++ Post-Increment $a = $b++

$a-- Post-decrement $a = $b--

Maksud pre adalah nilai dari suatu variable ditambahkan/dikurangi dulu dengan satu baru operasi

lainnya dijalankan. Sedangkan post adalah operasi dilaksanakan dulu , kemudian setelah semua

operasi selesai baru nilai dari variable itu ditambahkan/dikurangi dengan satu.

Contoh :

$b = 10 ; $a = ++$b ; // $a = 11 dan $b = 11 $a = --$b ; // $a = 10 dan $b = 10 $a = $b++ ; // $a = 10 dan $b = 11 $a = $b-- ; // $a = 11 dan $b=10 $a = $b-- + 3 ; // $a=13 dan $b=9 $a = $b++ + ++$b ; // $a= 20 dan $b = 11

Page 178: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 175

Struktur Kontrol

Selain statemen sederhana yang telah kita pelajari di atas terdapat beberapa statemen yang digunakan untuk proses khusus. Lebih detail lagi dalam PHP seperti bahasa C maupun java memiliki beberapa struktur kontrol program. Dengan menggunakan struktur-struktur ini maka jalannya program tidak selalu berurutan sesuai dengan kondisi yang ditemui.

Struktur Berurutan

Struktur ini merupakan struktur yang paling sederhana. Program akan dijalankan secara urut dari

awal program ke akhir program .

Contoh :

<?php echo "Statemen 1"; echo "Statemen 2"; echo "Statemen 3"; ?>

Disini dikenal istilah blok program , yaitu sebuah potongan program yang diapit oleh tanda { }.

Contoh :

if(true) { // awal blok $kata = "test"; echo "Ini tercetak\n"; echo "Jika kondisi bernilai true"; } // akhir blok

Catatan Variable yang dideklarasikan pada suatu blok bersifat lokal di dalam blok tersebut. Blok

biasanya digunakan untuk menyatakan bagian pada struktur kontrol lainnya.

Page 179: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 176

Struktur Seleksi (Kondisi)

Struktur ini digunakan untuk mengatur aliran program berdasarkan kondisi tertentu yang ditetapkan.

Struktur ini terdiri dari struktur if … else dan switch. Struktur if … else digunakan untuk masalah

percabangan proses.

Sintak :

if(syarat/kondisi) { Operasi yang dijalankan; } else { Operasi yang dijalankan; }

Nilai dari syarat / kondisi adalah true atau false. True jika syarat terpenuhi dan false jika syarat tidak

terpenuhi.

Contoh :

<?php $nilai = 60; if($nilai >= 50) echo "Anda Lulus"; else echo "Anda tidak lulus"; ?>

Karena $nilai >= 50 maka kalimat "Anda Lulus" yang akan dicetak.

Untuk seleksi dengan alternatif banyak digunakan struktur switch.

Sintak :

switch(variable) { case nilai 1 : perintah yang dijalankan ; break; case nilai 2 : perintah yang dijalankan ; break; ... default : perintah yang dijalankan ; break; }

Page 180: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 177

Contoh :

<?php $bulan = 2; Switch ($bulan) { Case 1 : echo "Januari"; break; Case 2 : echo "Februari"; break; Case 3 : echo "Maret"; break; Case 4 : echo "April"; break; . . . Case 10 : echo "Oktober"; break; Case 11 : echo "November"; break; Case 12 : echo "Desember"; break; } ?>

Output :

Februari

Selain switch dapat juga digunakan struktur if … elseif … else :

Sintak :

if ($syarat 1) { proses 1 } elseif ($syarat 2) { proses 2 } else { proses 3 }

Page 181: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 178

Contoh :

$hari = 3; if($hari == 1) echo "Senin"; elseif($hari == 2) echo "Selasa"; elseif($hari == 3) echo "Rabu"; elseif($hari == 4) echo "Kamis"; elseif($hari == 5) echo "Jumat"; elseif($hari == 6) echo "Sabtu"; elseif($hari == 7) echo "Minggu"; else echo "Salah kode hari";

Output :

Rabu

Struktur Perulangan

Perulangan adalah sebuah proses eksekusi operasi program secara berulang-ulang sampai

ditemui kondisi untuk mengakhiri eksekusi tersebut.

Perulangan While

Sintak :

while(syarat) { operasi program ; }

Operasi program akan dieksekusi terus-menerus selama syarat bernilai true. Bagian blok while

mungkin dapat tidak dieksekusi jika pada awal looping syarat telah bernilai false.

Page 182: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 179

Contoh :

<?php $a = 0 ; while($a < 5) { echo $a ; $a++ ; }

Output :

01234

Perulangan Do - While

Sintak :

do { proses program ; }while($syarat);

Proses program minimal dijalankan sekali karena pengujjian syarat dilakukan diakhir struktur.

Blok do-while akan dieksekusi lagi jika syarat bernilai true;

Contoh :

$a = 0; do { echo $a; $a++; } while ($a < 5);

Output :

01234

Page 183: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 180

Perulangan FOR

Sintak :

for( nilai awal loop, syarat , penambahan ) { operasi program ; }

Contoh :

for ( $a = 0 ; $a < 5 ; $a++ ) { echo $a ; }

Output :

01234

Catatan Untuk menghentikan perulangan dari suatu loop digunakan kata kunci break. Break diikuti

dengan numeric argumen menunjukkan berapa tingkatan loop yang dihentikan perulangannya.

Contoh :

<?php $i = 0 ; while(true) { switch($i) { case 0 : echo "Break pertama"; break 1 ; case 1 : echo "Break kedua"; break 2 ; default : break ; } $i++ ; } ?>

Kata kunci continue digunakan untuk kembali ke awal loop atau dilanjutkan ke loop berikutnya

dimana sisa operasi program di bawahnya akan diabaikan. Continue diikuti argumen numerik

Page 184: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 181

menunjukkan tingkatan loop yang akan dikerjakan.

Contoh :

<?php for($i = 1 ;$i < 11 ;$i++) { if ($i % 2 == 0 ) continue ; else echo $i ; } ?>

Program di atas akan menampilkan nilai $i yang ganjil saja.

Page 185: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 182

Fungsi dalam PHP

Deklarasi Fungsi

Fungsi adalah sekumpulan perintah operasi program yang dapat menerima argumen input dan

dapat memberikan hasil output yang dapat berupa sebuah nilai ataupun sebuah hasil operasi.

Fungsi dideklarasikan dengan statemen function diikuti nama fungsi dan beberapa argumen

input.

Sintak :

function nama_fungsi( argumen_input ) { operasi fungsi; return nilai; }

Contoh :

function kali( $bil1 ,$bil2 ) { $hasil = $bil1 * $bil2; return $hasil; }

Dalam pemberian sebuah nama fungsi, maka nama fungsi itu tidak boleh sama dengan nama

fungsi yang telah disediakan oleh PHP contohnya fungsi echo, print dan lain-lain.

Argumen Fungsi

Secara default, argumen dikirimkan ke fungsi adalah berupa nilai saja. Jadi kita tidak bisa

mengubah nilai variable yang dipakai sebagai argumen di dalam fungsi. Jika kita mengubah nilai

argumen di dalam fungsi maka nilai asli pada variable tetap. Agar kita dapat mengubah nilai asli

variable di dalam fungsi maka kita harus mengirimkan argumen berdasarkan reference. Caranya

dengan menambahkan tanda "&" didepan variable saat kita memanggil fungsi.

Page 186: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 183

Contoh :

function tambah_satu ( $a ) { $a++ ; } $a = 10; tambah_satu ( &$a ) ; // tanda & digunakan utk mereferencekan variabel echo $a ; // output 11 ?>

Page 187: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 184

Fungsi dalam PHP

Pada bagian ini kita akan mempelajari operasi dasar file, yaitu : membuka, membaca, menulis

dan menutup file.

Membuka dan Menutup File

Untuk membuka file dari system file, HTTP atau FTP digunakan fungsi fopen().

Sintak :

fopen(nama file , mode akses);

Mode akses menunjukkan operasi yang akan kita lakukan terhadap file tersebut. Berikut mode

akses yang disediakan :

"r" - membuka file untuk dibaca , pointer file diletakkan di awal file. "r+" - membuka file untuk dibaca dan diubah, pointer file diletakkan di awal file. "w" - membuka file untuk diubah, pointer file diletakkan di awal file. "w+" - membuka file untuk diubah dan dibaca, pointer diletakkan di awal file. "a" - membuka file untuk diubah, pointer diletakkan di akhir file. "a+" - membuka file untuk diubah dan dibaca, pointer terletak pada akhir file.

Contoh :

<?php

$MyFile = fopen("fileku.txt","r");

?>

Tip Jika file yang kita buka tidak ada maka nilai dari variable $MyFile ( file pointer ) tadi akan bernilai

NULL. Hal ini penting kita perhatikan, karena jika kita melakukan operasi file terhadap file yang tidak

ada maka akan muncul pesan kesalahan dan hal ini tidak baik bagi seorang web master. Untuk itu

kita harus melakukan pengecekkan suatu file dengan menggunakan fungsi file_exists(). Nilai yang

dihasilkan dari fungsi ini berupa nilai boolean.

Contoh : <?php if(file_exists("fileku.txt"))

Page 188: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 185

{ $MyFile = fopen("fileku.txt","r"); fclose($MyFile); } else { echo "File fileku.txt tidak ada dalam system kami"; exit(1); }

Dengan cara ini kesalahan pembacaan file tidak akan muncul. Fungsi fclose() digunakan untuk

menutup file.

Membaca File

Untuk membaca isi file dapat digunakan fungsi fread() atau fgets(). Fungsi fread() lebih terformat

dan biasanya dipasangkan dengan fungsi fwrite(). Sedangkan fgets() membaca perblok dan

biasanya dipasangkan dengan fungsi fputs().

Sintak :

fread(file_pointer,panjang string); fgets(file_pointer,besar buffer);

Contoh :

<?php if(file_exists("fileku.txt")) { $MyFile = fopen("fileku.txt",'r'); while( !feof($MyFile)) { $buffer = fgets($MyFile,4096) ; // Membaca per baris echo "<BR>$buffer"; } fclose($MyFile); } ?>

Fungsi feof() digunakan untuk mengetahui apakah pointer file ada di akhir file. Nilai yang

dihasilkan bertipe boolean.

Page 189: Modul Aplikasi Teknologi Online 2007

Diktat Mata Kuliah Aplikasi Teknologi Online

Oleh : Andri Heryandi Halaman. 186

Menulis ke File

Untuk ke file digunakan fungsi fwrite() atau fputs(). Fungsi fwrite() digunakan berpasangan

dengan fread() sedangkan fungsi fputs() dengan fungsi fgets().

Sintak :

fread(file pointer, string , panjang string); fputs(file pointer, string );

Contoh :

<?php if(file_exists("fileku.txt")) { $MyFile = fopen("fileku.txt",'a'); fputs($MyFile,$kalimat) ; fclose($MyFile); } ?>