Bab I. Pengantar Pemrograman Web

advertisement
1
Bab I. Pengantar Pemrograman Web
I.1. Pendahuluan
Pemrograman Web digunakan untuk membangun aplikasi web, dimana aplikasi web ini dapat
dibedakan menjadi :
I.1.1 Web Statis
Berisi atau menampilkan informasi yang bersifat tetap, dibentuk dengan menggunakan HTML
(Hypertext Markup Languange) saja. Kelemahannya, setiap menginginkan perubahan harus dilakukan
oleh pemrogramnya (orang yang mengerti bahasa HTML).
I.1.2 Web Dinamis
Berisi atau menampilkan informasi serta dapat berinteraksi dengan user yang bersifat dinamis,
dibentuk dengan menggunakan bahasa HTML, Skrip (PHP, ASP, JSP, CGI) dan dikoneksikan ke
basisdata (MySQL, PostgreSQL, Oracle, Microsoft Access). Perubahan informasi dalam halaman
web didapat melalui perubahan data pada basisdata dan tidak harus melalui perubahan programnya,
sehingga perubahan informasi dapat dilakukan oleh operator dan tidak lagi menjadi tanggungjawab
programmer.
Pada matakuliah ini, akan dipelajari cara membuat web dinamis. Berikut ini akan ditunjukkan
mekanisme pembangkitan web secara dinamis.
Browser mengirimkan permintaan HTTP
Dikirim ke Web Browser
Kode HTML
Aplikasi Web
(HTML & PHP)
Web Browser (Internet Explorer &
Netscape Communicator)
Web Server (Apache & Xitami)
Gambar 1.1 Proses pengakesan web dinamis
Proses pengakesan web dinamis adalah sebagai berikut :
1.
Web Browser (software pada komputer klien yang berfungsi menerjemahkan kode HTML
menjadi halaman web), meminta halaman web (skrip PHP) menggunakan protokol HTTP.
2.
Permintaan ini akan di tanggapi oleh Web Server (server yang melayani permintaan
halaman web).
2
3.
Jika halaman web yang diminta melakukan manipulasi terhadap Database Server, maka
Aplikasi Web terlebih dahulu koneksi dengan Database Server, dan tentunya Database
Server akan melayani permintaan dari Aplikasi Web tersebut.
4.
Jika halaman web yang diminta masih berupa skrip PHP, maka skrip ini terlebih dahulu
dirubah/diterjemahkan ke dalam Kode HTML oleh mesin PHP-nya.
5.
Kemudian Kode HTML tersebut akan dikirimkan ke Web Browser (komputer klien), oleh
Web Browser akan dirubah menjadi halaman web sesuai Kode HTML-nya.
Catatan : Untuk mempermudah atau memperlancar dalam mempelajari pemrograman web ini,
mahasiswa diberi tugas menginstal software untuk sarana simulasi misalnya PHP Triad.
I.2 HTML (HyperText Markup Language)
Merupakan bahasa standard yang digunakan untuk membuat dokumen yang bisa diakses melalui web
browser atau untuk menulis halaman web. Untuk menuliskan kode-kode HTML diperlukan Editor
(Notepad, PHPEditor, EditPlus dan lain-lain).
Kegunaan HTML :
1. Mempublikasikan dokumen secara online, sehingga bisa diakses dari seluruh dunia.
2. Mengatur tampilan dari halaman web dan isinya.
3. Membuat Form, yang digunakan untuk menangani pendaftaran atau transaksi secara online.
4. Menambahkan objek-objek seperti image, audio dan video.
Command HTML biasanya disebut Tag, digunakan untuk menentukan tampilan dari dokumen
HTML, dengan format : <awal tag> … </akhir tag>. Tag tidak case sensitive, jadi penulisannya
dapat menggunakan huruf besar maupun kecil, misalnya : <HTML> atau <html> keduanya
menghasil output yang sama.
Berikut ini adalah struktur dokumen HTML :
<HTML>
<HEAD>
<TITLE>
………
</TITLE>
Kepala dokumen HTML ditandai dengan tag HEAD.
Pada bagian kepala, untuk membuat judul halaman web
dengan menambahkan tag TITLE didalamnya.
</HEAD>
Tag HTML, untuk mengawali dan mengakhiri setiap
dokumen HTML.
<BODY>
Bagian badan/body dokumen HTML biasa digunakan
untuk menampilkan text, image link dan semua yang ditampilkan pada halaman web ditandai dengan tag BODY,
biasanya juga disertai dengan atribut diikuti nilai
atributnya. Contoh : <body bgcolor=purple> artinya
backgroud bagian body menjadi berwarna ungu/purple.
………
</BODY>
</HTML>
3
Contoh sederhana dokumen HTML : (WebPertamaku.html)
<HTML>
<HEAD>
<TITLE> Halaman Web Pertamaku </TITLE>
</HEAD>
<BODY> Bagian badan halaman web pertamaku </BODY>
</HTML>
TITLE
Nama berkas ( WebPertamaku.html )
BODY
Gambar 1.2 Tampilan program sederhana dokumen HTML
Aturan dalam menuliskan tag-tag HTML yaitu :
-
Tag ditulis dengan format diawali tanda < dan diakhiri tanda >, misalnya : <HTML>.
-
Tidak boleh ada spasi kosong setelah tanda <, misalnya : <TITLE> tidak boleh dituliskan
dengan < TITLE>.
-
Tag boleh ditulis dengan huruf kecil, huruf kapital, ataupun kombinasi keduanya.
I.2.1 Elemen-elemen dasar HTML.
I.2.1.1 Heading (<h1> sampai <h6>)
Untuk menentukan ukuran dari suatu berkas atau teks.
Contoh programnya : (UkuranHeading.html)
<HTML>
<HEAD>
<TITLE>Tampilan Ukuran Heading</TITLE>
</HEAD>
<BODY BGCOLOR=FUCHSIA>
<H1> Heading Satu </H1>
<H2> Heading Dua
</H2>
<H3> Heading Tiga </H3>
<H4> Heading Empat </H4>
<H5> Heading Lima </H5>
<H6> Heading Enam </H6>
<H2> Heading Dua
</H2>
</BODY>
</HTML>
4
Gambar 1.3 Tampilan program ukuran Heading
I.2.1.2 Paragraf (<p>)
Digunakan membentuk suatu paragraf.
Contoh programnya : (Paragraf.html)
<HTML>
<HEAD>
<TITLE>Penggunaan Tag Paragraf</TITLE>
</HEAD>
<BODY>
<H3> Definisi Web Browser dan Web Server </H3>
<P>
Web Browser adalah software yang diinstal di komputer klien yang berfungsi untuk menterjemahkan
kode HTML halaman web.
</P>
<P>
Web Server adalah server yang melayani akan permintaan halaman web.
</P>
</BODY>
</HTML>
Gambar 1.4 Tampilan penggunaan tag paragraf
5
I.2.1.3 List Item (<li>)
Untuk mengelompokan data atau daftar, baik yang berurutan (<ol> ordered list) maupun yang tidak
berurutan (<ul> unordered list).
Tabel 1.1 Arti atribut pada list item, ordered list dan unordered list
Tag
Atribut
Nilai
<li>
<ol>
Type
<ul>
Start
Type
I
i
A
a
n
squre
disc
circle
Keterangan
Digunakan untuk mengelompokan data baik yang
berurutan maupun yang tidak berurutan
Angka romawi besar
Angka romawi kecil
Huruf besar
Huruf kecil
Angka pertama
Bullet Kotak
Bullet Titik
Bullet Lingkaran
<HTML>
<HEAD>
<TITLE> Jadwal Praktikum </TITLE>
</HEAD>
<BODY>
<H3>Jadwal Praktikum Di Lab. Pemrograman STMIK Akakom</H3>
<OL START="1" TYPE="I">
<LI>SENIN</LI>
<OL TYPE="A">
<LI> Pemrograman Visual MI_1</LI>
<LI> Struktur Data SI_1</LI>
<LI> Grafika Komputer MI_1</LI>
</OL>
<LI>SELASA</LI>
<OL TYPE="I">
<LI> Pemrograman Visual MI_2</LI>
<LI> Pemrograman Web TI_1</LI>
<LI> Pemrograman Web MI_2</LI>
</OL>
<LI>RABU</LI>
<OL TYPE="A">
<LI> Pemrograman Berorientasi Objek TI_2</LI>
<LI> Pemrograman Web TI_4</LI>
<LI> Algoritma Pemrograman TI_2</LI>
</OL>
<LI>KAMIS</LI>
<OL START="2" TYPE="I">
<LI> Pemrograman Berorientasi Objek MI_3</LI>
<LI> Algoritma Pemrograman TI_3</LI>
<LI> Pemrograman Berorientasi Objek MI_1</LI>
</OL>
<LI>JUMAT</LI>
<UL TYPE=square>
6
<LI> Pemrograman Visual MI_4</LI>
<LI> Struktur Data SI_1</LI>
<LI> Pemrograman Basisdata MI_1</LI>
</UL>
<LI>SABTU</LI>
<UL TYPE=circle>
<LI> Pemrograman Basisdata MI_2</LI>
<LI> Struktur Data TI_1</LI>
<LI> Pemrograman Basisdata MI_3</LI>
</UL>
</BODY>
</HTML>
Gambar 1.5 Tampilan program pengelompokan data
I.2.1.4 Pemformatan teks pada halaman (page)
Tabel 1.2 Arti atribut pada pemformatan halaman
Tag
<br>
<font>
Atribut
color
size
face
<center>
<right>
Keterangan
Digunakan untuk memulai baris baru pada dokumen HTML.
Menentukan warna font, dapat menggunakan nama warna (green, blue)
atau dalam format bilangan hexadesimal (#000000 - #ffffff)
Menentukan ukuran font dari 1 –7 .
Menentukan jenis font (Courier New, Mono).
Mengatur posisi teks agar berada ditengah
Mengatur posisi teks agar rata kanan.
7
<left>
<b>
<i>
<u>
<sup>
<sub>
<small>
<big>
<tt>
<marquee>
Mengatur posisi teks agar rata kanan.
Menebalkan cetakan teks
Menampilkan teks dengan bentuk tulisan miring
Menambahkan garis bawah pada teks
Textnya di tulis diatas.
Textnya dibawah garis.
Menampilkan teks lebih kecil daripada ukuran normal
Menampilkan teks lebih besar daripada ukuran normal
Menampilkan teks seperti ketikan menggunakan mesin ketik
Membuat teks bergerak
Contoh programnya : (PemformatanTeks.html)
<HTML>
<HEAD>
<TITLE>Pemformatan Text</TITLE>
</HEAD>
<BODY BGCOLOR="AQUA">
<P><FONT COLOR="9966FF" SIZE="6"><CENTER>Konsep Basis Data</P></CENTER></FONT>
<CENTER><I><U><FONT COLOR="4466FF" SIZE="3">
Adalah suatu koleksi data komputer yang terintegrasi, diorganisasikan dan disimpan dalam suatu cara
yang memudahkan pengambilan kembali. Penggunaan basis data ini dimaksudkan untuk mengatasi
problem pada sistem yang memakai pendekatan berbasis berkas.
</CENTER></I></U></FONT>
<B><P><marquee><FONT COLOR="GREE" SIZE="5">Perangkat Lunak Basis
Data</B></marquee></P></FONT>
<LEFT><B><FONT COLOR="BROWN" SIZE="3" FACE="COURIER NEW">
Adalah perangkat lunak sistem yang memungkinkan para pemakai membuat, memelihara, mengontrol
dan mengakses basis data dengan cara yang praktis dan efisien. DBMS dapat digunakan untuk
mengakomodasikan berbagai macam pemakai yang memiliki kebutuhan akses yang berbeda-beda.
Menampilkan teks seperti ketika menggunakan mesin ketik....
</LEFT></B></FONT>
</BODY>
</HTML>
Gambar 1.6 Tampilan program pemformatan teks
8
Pemberian warna pada atribut color, bgcolor, dan text dapat mengikuti aturan berikut :
⇒
Menggunakan nama warna.
⇒
Menggunakan nilai RGB (Red-Green-Blue), dengan format “#RRGGBB”.
Tabel 1.3 Tabel nilai warna
Warna
RGB
Warna
RGB
Warna
RGB
Warna
RGB
aqua
black
blue
fuchsia
00FFFF
000000
0000FF
FF00FF
gray
green
lime
maroon
808080
008000
00FF00
800000
silver
teal
yellow
white
C0C0C0
8080
FFFF00
FFFFFF
navy
olive
purple
red
80
808000
800080
FF0000
I.2.1.5 Membuat Tabel
Untuk membuat tabel pada halaman HTML, menggunakan tag berikut :
Tabel 1.4 Tabel tag untuk membuat tabel pada halaman HTML
Tag
Keterangan
<table> … </table>
<tr> … </tr>
<td> … </td>
<th> … </th>
<caption> … </caption>
Membuat table dan sebagai tanda awal dan akhir table
Membuat baris dalam table
Membuat kolom (sel)
Membuat judul kolom
Membuat judul pada table
Tabel 1.5 Tabel atribut-atribut yang ada dalam tag <table>
Atribut
Keterangan
border
bgcolor
height
width
cellspacing
cellpadding
Menampilkan garis table dengan memberikan nilai untuk BORDER
Membuat warna latar belakang table
Mengatur tinggi table (tinggi sel)
Mengatur lebar sel
Mengatur jarak bagian sel terhadap tepi dalam bingkai table
Mengatur jarak teks terhadap tepi kiri
Tabel 1.6 Tabel atribut-atribut yang digunakan dalam <th>, <tr>, dan <td>
Atribut
Fungsi
rowspan
colspan
align
valign
digunakan dalam <td>. atribut ini digunakan untuk menggabungkan beberapa baris sel
digunakan dalam <th> atau <td>. berfungsi menggabungkan beberapa sel dalam satu baris
mengatur peletakan dengan memberikan nilai justify, left, center, atau right
mengatur teks menurut posisi vertikal dengan memberikan nilai baseline, top, middle, atau
bottom
Contoh programnya : (Tabel.html)
<HTML>
<HEAD>
<TITLE>Penggunaan Tabel Text</TITLE>
</HEAD>
<BODY >
<TABLE BGCOLOR="AQUA" WIDTH="62%" BORDER="10" CELLSPACING="1" CELLPADDING="8">
<CAPTION>
<FONT SIZE="4" COLOR="BLUE">Daftar Penerimaan Mahasiswa STMIK
A<FONT SIZE="6" COLOR="FUCHSIA">K</FONT>akom Yogyakarta</FONT>
</CAPTION>
9
<TR>
<TD ROWSPAN="2" ALIGN="CENTER" VALIGN="MIDDLE"><B>
<FONT COLOR="RED">Tahun Akademik</FONT></B></TD>
<TD COLSPAN="5" HEIGHT="50" ALIGN="CENTER" VALIGN="TOP">
<B><FONT COLOR="FF0000">Jurusan</FONT></B></TD>
<TR ALIGN="CENTER">
<TD><FONT COLOR="GREEN"><B>Teknik Informatika</TD>
<TD><FONT COLOR="GREEN"><B>Sistem Informasi</TD>
<TD><FONT COLOR="GREEN"><B>Manajemen Informatika</TD>
<TD><FONT COLOR="GREEN"><B>Teknik Komputer</TD>
<TD><FONT COLOR="GREEN"><B>Komputer Akuntansi</TD>
</TR>
</TR>
<TR>
<TD><B><FONT COLOR="YELLOW">2000/2001</B></TD>
<TD ALIGN="CENTER">300</TD>
<TD ALIGN="CENTER">100</TD>
<TD ALIGN="CENTER">400</TD>
<TD ALIGN="CENTER">75</TD>
<TD ALIGN="CENTER">80</TD>
</TR>
<TR>
<TD><B><FONT COLOR="YELLOW">2001/2002</B></TD>
<TD ALIGN="CENTER">325</TD>
<TD ALIGN="CENTER">75</TD>
<TD ALIGN="CENTER">375</TD>
<TD ALIGN="CENTER">100</TD>
<TD ALIGN="CENTER">75</TD>
</TR>
<TR>
<TD><B><FONT COLOR="YELLOW">2002/2003</B></TD>
<TD ALIGN="CENTER">350</TD>
<TD ALIGN="CENTER">80</TD>
<TD ALIGN="CENTER">375</TD>
<TD ALIGN="CENTER">75</TD>
<TD ALIGN="CENTER">80</TD>
</TR>
<TR>
<TD><B><FONT COLOR="YELLOW">2003/2004</B></TD>
<TD ALIGN="CENTER">500</TD>
<TD ALIGN="CENTER">100</TD>
<TD ALIGN="CENTER">450</TD>
<TD ALIGN="CENTER">100</TD>
<TD ALIGN="CENTER">80</TD>
</TR>
<TR>
<TD><B><FONT COLOR="YELLOW">2004/2005</B></TD>
<TD ALIGN="CENTER">550</TD>
<TD ALIGN="CENTER">100</TD>
<TD ALIGN="CENTER">450</TD>
<TD ALIGN="CENTER">125</TD>
<TD ALIGN="CENTER">80</TD>
</TR>
</TABLE>
</BODY>
</HTML>
10
Gambar 1.7 Tampilan contoh program tag tabel
I.2.1.6 Membuat Hyperlink
Anchor tag <a href> … </a>, digunakan untuk menentukan hyperlink dalam dokumen HTML.
Properti href, untuk menentukan tujuan dari hyperlink tersebut.
1. Link Address.
-
Absolute Address, merupakan full internet address (URL) yang meliputi protocol,
network location, path dan nama file, misalnya : <A HREF="http://www.
ilmukomputer.com/index.html">Informasi lain </A> <BR>.
-
Relatif Address, merupakan URL yang tidak menyebutkan protocol dan network locationnya (hanya path dan nama filenya), misalnya : <A HREF="..\Link\Tabel1.html">Data
penerimaan mahasiswa baru STMIK Akakom <BRbr>
2. Link Dokument.
-
Link ke dokumen lain, misalnya : <A HREF="Hyperlink2.html">Klik disini untuk
melihat dokumen ke 2</A> <BR>
-
Link ke section tertentu dalam satu dokumen, misalnya :
<A HREF="#WS">Definisi Web Statis</A><BR>
<A NAME="WS">Web Statis</A>
-
Link ke bagian tertentu dokumen lain, misalnya :
<A HREF="Hyperlink2.html#PHPTRIAD">Cara menginstal PHPTriad</A><BR>
<A NAME="PHPTRIAD">Caranya : </A>
11
3. Mengubah gambar menjadi Hyperlink, misalnya : <A HREF="PemformatanTeks.html">
<IMG SRC="gambar1.jpg"WIDTH="125" HEIGHT="25" BORDER="0"></A><BR>
Contoh programnya : (Hyperlink1.html dan Hyperlink2.html)
1. Hyperlink1.html
<HTML>
<P ALIGN="CENTER"><FONT SIZE="5" COLOR="BLUE" >Pengantar Pemrograman Web</FONT> </P>
<P>
Pemrograman Web digunakan untuk membangun aplikasi web, dimana aplikasi web ini dapat
dibedakan menjadi :<BR>
1. <A NAME="WS">Web Statis</A>, dibentuk dengan menggunakan HTML (Hypertext Markup
Languange) saja.Web statis ini mempunyai kelemahan, setiap menginginkan perubahan harus
dilakukan oleh pemrogramnya (dalam hal ini adalah orang yang
mengerti bahasa HTML).<BR>
2. Web Dinamis, dibentuk dengan menggunakan bahasa HTML, Skrip (PHP, ASP) dan dikoneksikan ke
basisdata (MySQL, PostgreSQL). Dalam web dinamis ini perubahan informasi dalam halaman web
dapat ditangani melalui perubahan data yang berasal dari basisdata dan tidak harus melalui perubahan
programnya. Maka perubahan informasi dapat dilakukan oleh operator dan tidak lagi menjadi
tanggungjawab programmer.
</P>
Dalam matakuliah ini, kita akan mempelajari cara membuat web dinamis. Berikut ini akan ditunjukkan
mekanisme pembangkitan web secara dinamis.
Proses pengakesan web dinamis adalah sebagai berikut :<BR>
1. Web Browser (software yang diinstal di komputer klien yang berfungsi untuk menterjemahkan kode
HTML menjadi halaman web), meminta sebuah halaman berupa skrip PHP) suatu situs web.<BR>
2. Permintaan ini akan di tanggapi oleh Web Server (server yang melayani akan permintaan halaman
web). Karena yang diminta masih berupa skrip PHP, maka skrip ini terlebih dahulu
dirubah/diterjemahkan ke dalam kode HTML oleh mesin PHP-nya.<BR>
3. Setelah dirubah ke dalam kode HTML, Web server akan segera mengirim
kode HTML tersebut ke komputer klien.<BR>
4. Setelah sampai pada komputer klien, maka kode HTML tersebut oleh web browser akan dirubah
menjadi halaman web sesuai kode-kode HTML-nya.<BR>
<P>
Untuk mempermudah atau memperlancar dalam mempelajari pemrograman web ini alangkah baiknya
anda menginstal PHP Triad sebagai sarana simulasi. PHP Triad adalah software installer PHP secara
instant, yang berjalan pada lingkungan windows, dimana setelah PHP Triad selesai diinstal secara
otomatis kita telah menginstal Web server (Apache) dan database MySQL.
Langkah-langkahnya : <BR><BR><BR>
<A HREF="#WS">Definisi Web Statis</A><BR>
<A HREF="Hyperlink2.html#PHPTRIAD">Cara menginstal PHPTriad</A><BR>
<A HREF="Hyperlink2.html">Klik disini untuk melihat dokumen ke 2</A> <BR>
<A HREF="http://www.ilmukomputer.com/index.html">Informasi lain </A> <BR>
<A HREF="..\Link\Tabel1.html">Data penerimaan mahasiswa baru STMIK Akakom <BR>
<A HREF="PemformatanTeks.html"><IMG SRC="gambar1.jpg" WIDTH="125" HEIGHT="25"
BORDER="0"></A> <BR>
</HTML>
2. Hyperlink2.html
<HTML>
1. Siapkan master PHPTriad yang dapat diperoleh dengan download di www.download.com atau
mengcopy masternya di Lab. Terpadu. <BR>
2. Klik 2 kali pada file phptriad.exe, maka secara otomatis program akan menampilkan tampilan
PHPTriad 2.11 Setup : Licence Agreement. <BR>
3. Kemudian klik Next, maka installer akan mengekstrak semua file PHPTriad dan installer secara
otomatis akan membentuk direktori C:\Apache. <BR>
12
4. Tunggu sampai prosesnya selesai dan pastikan pada waktu menginstal tidak terjadi error dan anda
tidak sedang menjalankan program-program lain. Sampai disini telah menunjukkan bahwa proses
instalasi telah selesai. <BR>
5. Tahap berikutnya adalah untuk mengetes apakah PHPTriadnya telah berjalan dengan baik. <BR>
<P>
<B> <A NAME="PHPTRIAD">Caranya : </A> </B> <BR>
1. Jalankan Web Server Apache dengan klik tombol Start, pilih menu Programs, pilih menu PHPTriad
lalu klik Start Apache. <BR>
2. Maka akan muncul jendela Start Apache dan biarkan saja selama kita menjalankan skrip-skrip PHP.
<BR>
3. Jalankan web browser (internet explorer), lalu isi address-nya dengan : http://localhost <BR>
4. Apabila tampilan web browser-nya, berupa ucapan Selamat (Welcome to PHPTriad for Windows
v2.11.) hal ini menunjukkan bahwa instalasi yang telah anda lakukan sukses. <BR>
5. Langkah berikutnya mencoba untuk menjalankan skrip (HTML atau PHP) sederhana buatan kita
sendiri. <BR>
6. Buatlah skrip HTML seperti dibawah ini, untuk sementara menggunakan editor Notepad untuk
mengetikan skrip HTMLnya. <BR>
</P>
<A HREF="Hyperlink1.html">Klik disini untuk kembali ke dokumen 1</A> <BR>
</HTML>
Gambar 1.8 Tampilan hyperlink 1
Gambar 1.9 Tampilan hyperlink 2
13
I.2.1.7 Format image
Dari beberapa format image, ada 3 jenis format image yang umum digunakan :
-
JPG (Joint Photographic Expert Image), nama file.jpg
-
GIF (Graphical Interchange Format), nama file.gif
-
PNG (Portable Network Graphics), nama file.png
Untuk menginsertkan image ke dokumen HTML digunakan tag image <img>, dengan format
<img src=”path + namafile”>, misalnya : <img src=”fotoku.gif>. Atribut yang digunakan :
Tabel 1.7 Tabel atribut-atribut yang digunakan dalam tag image
Atribut
Align
Nilai
Keterangan
Top, Bottom, Middle
Digunakan untuk menentukan posisi image terhadap text.
Digunakan untuk menetukan posisi image di dokumennya.
Hspace digunakan untuk menentukan berapa banyak ruang kosong
(pixel) yang dimiliki sebuah image pada sisi kiri dan kanannya,
sedangkan Vspace pada sisi atas dan bawah.
Left, Right, Center
Hspace, Vspace
Contoh programnya : (Image.html)
<HTML>
<P ALIGN=CENTER> <FONT SIZE="5" COLOR=BLUE ><B>Satu Cinta Dua Jiwa</FONT></B><BR>
<FONT COLOR=RED ><B>Oleh : Siti Nurhaliza</FONT></B><BR><BR>
<P><IMG SRC="Sari.jpg" HEIGHT=75 WIDTH=60 ALIGN=LEFT ALIGN=BOTTOM HSPACE=10>
Seharusnya kau lebih mengerti<BR>
Seandainya kau selami ke dasar<BR>
Tak perlu lagi dikau meragui<BR>
Pada dasarnya bercinta<BR><BR></P>
<P ALIGN=RIGHT><IMG SRC="Sari.jpg" HEIGHT=75 WIDTH=60 ALIGN=RIGHT ALIGN=BOTTOM>
Renungkanlah dimana asalnya<BR>
Lahirnya cinta mu yang tulus<BR>
Jangan dikau hanya merasai<BR>
Sentuhan dari zahirnya<BR><BR></P>
<P ALIGN=CENTER>
Kini pastinya kau kan bertemu<BR>
<IMG SRC=" Sari.jpg " HEIGHT=75 VSPACE=15 WIDTH=60 ALIGN=CENTER><BR>
Kala cinta dari mu mula berseri<BR><BR></P>
<P> Satu cinta dua jiwa
<IMG SRC=" Sari.jpg " HEIGHT=75 WIDTH=60 ALIGN=TOP></BR>
Indahnya rasa bagai pelangi
<IMG SRC=" Sari.jpg " HEIGHT=75 WIDTH=60 ALIGN=MIDDLE VSPACE=2 >
Satu cinta seribu rasa
<IMG SRC=" Sari.jpg " HEIGHT=75 WIDTH=60 ALIGN=BOTTOM>
Bersemi kasih di dua hati</P>
<P> <IMG SRC=" Sari.jpg " HEIGHT=275 WIDTH=200 ALIGN=LEFT><BR>
Resah rasa bila tak bersama<BR>
Berbisiklah naluri cinta mu<BR>
Emosinya tiada berarah<BR>
Tiap minit kau curiga<BR>
Selamanya kau kan percaya<BR>
Dan naluri dan emosi<BR>
Andai cinta mu teguh berdiri<br>
Pasti bahagia </P>
</HTML>
14
Gambar 1.10 Tampilan 1 halaman image
Gambar 1.11 Tampilan 2 halaman image
15
I.2.1.8 Form
Beberapa kegunaan form dalam aplikasi web :
-
Memperoleh data-data user untuk mendaftar pada service yang di sediakan.
-
Memperoleh informasi pembelian secara online.
-
Memperoleh feedback dari user mengenai website yang kita buat.
Tag untuk membuat form dalam dokumen HTML adalah tag <form>, atribut yang digunakan :
Tabel 1.8 Tabel atribut-atribut yang digunakan dalam tag form
Atribut
Nilai
Method
Action
Post
URL
Keterangan
Data akan di kirim ke server sebagai block data ke script.
Menentukan lokasi dari script yang akan memproses data dari form yang dibuat.
Tipe atribut dalam tag <input> pada HTML.
I.2.1.8.1 Text
Untuk membuat kontrol text baris tunggal, atribut pendukung yang digunakan :
Tabel 1.9 Tabel atribut-atribut yang digunakan dalam tag text
Atribut
Name
Value
Size
Maxlength
Tabindex
Keterangan
Untuk menamai nilai data sehingga scriptnya bisa memisah data dari field yang lain.
Untuk menentukan sebuah nilai defaultnya.
Menentukan seberapa lebar kotak textnya.
Jumlah maksimum karakter yang dapat dimasukkan.
Mengontrol urutan tab kotak input, yang akan dimasukin pada saat menekan tombol tab.
Contoh programnya : (InputText.html)
<HTML>
<HEAD>
<TITLE>Contoh Input Text</TITLE>
</HEAD>
<BODY BGCOLOR="Aqua">
<FORM>
<P><B>Nama Lengkap Anda : <BR>
<INPUT TYPE=TEXT NAMA=nmlkp SIZE=30 MAXLENGTH=25 TABINDEX=1 >
<P><B>Alamat Lengkap Anda : <BR>
<INPUT TYPE=TEXT NAMA=almlkp SIZE=100 MAXLENGTH=95 TABINDEX=3>
<P><B>Jurusan : <BR>
<INPUT TYPE=TEXT NAMA=jur SIZE=25 MAXLENGTH=20 TABINDEX=2 VALUE="Teknik Informatika">
</FORM>
</BODY>
</HTML>
Gambar 1.12 Tampilan form input text
16
I.2.1.8.2 Password
Untuk menangani password atau data rahasia lain, sehingga pada waktu mengisi input yang bertipe
password yang muncul dilayar adalah tanda asteris (*), atribut yang digunakan :
Tabel 1.10 Tabel atribut-atribut yang digunakan dalam tag password
Atribut
Name
Value
Size
Maxlength
Tabindex
Keterangan
Untuk menamai nilai data sehingga scriptnya bisa memisah data dari field yang lain.
Untuk menentukan sebuah nilai defaultnya.
Menentukan seberapa lebar kotak textnya.
Jumlah maksimum karakter yang dapat dimasukkan.
Mengontrol urutan tab kotak input, yang akan dimasukin pada saat menekan tombol Tab.
Contoh programnya : (InputPassword.html)
<HTML>
<HEAD>
<TITLE>Contoh Input Passowrd</TITLE>
</HEAD>
<BODY BGCOLOR="Aqua">
<FORM>
<P ALIGN=LEFT> <FONT SIZE=4 COLOR=RED ><B> Silahkan Anda Login Dulu....!!! </B>
</FONT><BR>
<B>Nama <FONT COLOR=Aqua>!!!!</FONT> :
<INPUT TYPE=TEXT NAMA=nmuser SIZE=15 MAXLENGTH=12 TABINDEX=1 ><BR>
<B>Password :
<INPUT TYPE=PASSWORD NAMA=pwd SIZE=15 MAXLENGTH=8 TABINDEX=2><BR>
</FORM>
</BODY>
</HTML>
Gambar 1.13 Tampilan form input password
I.2.1.8.3 Checkbox
Digunakan untuk membuat kotak cex (checkbox).
Tabel 1.11 Tabel atribut-atribut yang digunakan dalam tag
Atribut
Name
Value
Size
Checked
checkbox
Keterangan
Untuk menamai nilai data sehingga scriptnya bisa memisah data dari field yang lain.
Nilai data yang akan diberikan kepada script yang dituju.
Menentukan ukuran kontrolnya.
Menunjukkan bahwa kotak ceknya telah dipilih.
Contoh programnya : (InputCheckbox.html)
<HTML>
<HEAD>
<TITLE>Contoh Input Checkbox</TITLE>
</HEAD>
17
<BODY >
<FORM>
<P><B>Silahkan Pilih Hobby Anda : </P>
<INPUT TYPE="CHECKBOX" NAME="HB1" VALEU="MBC" CHECKED=CHECKED >Membaca <BR>
<INPUT TYPE="CHECKBOX" NAME="HB2" VALEU="MYY" >Menyanyi<BR>
<INPUT TYPE="CHECKBOX" NAME="HB3" VALEU="BRN" >Berenang<BR>
<INPUT TYPE="CHECKBOX" NAME="HB4" VALEU="BLJ" >Belanja<BR>
</FORM>
</BODY>
</HTML>
Gambar 1.14 Tampilan form input check box
I.2.1.8.4 Radio
Digunakan untuk membuat tombol radio (radio botton), dimana disini hanya dapat memilih satu
pilihan dari seluruh group tombol radio dan nama yang diberikan harus sama semua.
Tabel 1.12 Tabel atribut-atribut yang digunakan dalam tag radio
Atribut
Name
Value
Size
Checked
Keterangan
Untuk menamai nilai data sehingga scriptnya bisa memisah data dari field yang lain.
Nilai data yang akan diberikan kepada script yang dituju.
Menentukan ukuran kontrolnya.
Menunjukkan bahwa kotak ceknya telah dipilih.
Contoh programnya : (InputRadioButton.html)
<html>
<head>
<title>Contoh Input Tombol Radio</title>
</head>
<body >
<form>
<p><b>Pilihan Jurusan Anda : <br>
<input type="radio" name="jrs" valeu="ti" checked=checked>Teknik Informatika<br>
<input type="radio" name="jrs" valeu="si" >Sistem Informasi<br>
<input type="radio" name="jrs" valeu="mi" >Manajemen Informatika<br>
<input type="radio" name="jrs" valeu="tk" >Teknik Komputer<br>
<input type="radio" name="jrs" valeu="ka" >Komputer Akuntansi<br></p>
</form>
</body>
</html>
18
Gambar 1.15 Tampilan form input radio button
I.2.1.8.5 Text Area
Untuk membuat textarea, dimana disini kita dapat menuliskan text mencakup sejumlah baris dan
kolom. Tag yang digunakan adalah <Textarea> … </Textarea>.
Tabel 1.13 Tabel atribut-atribut yang digunakan dalam tag textarea
Atribut
Name
Cols
Rows
Keterangan
Untuk menamai nilai data sehingga scriptnya bisa memisah data dari field yang lain.
Menentukan jumlah kolom layar yang disediakan bagi area teks.
Menentukan jumlah baris layar yang disediakan bagi area teks.
Contoh programnya : (InputTextarea.html)
<html>
<head>
<title>Contoh Pembuatan Textarea</title>
</head>
<body >
<table>
<tr><td><b>Keterangan : <br></td>
<td><textarea name="kspl" cols=50 rows=3> </textarea></td></tr>
</table>
</body>
</html>
Gambar 1.16 Tampilan form input textarea
I.2.1.8.6 Menu Pop-Up
Digunakan untuk memberikan menu pilihan kepada para pembaca. Menu ini mirip dengan radio
button, dimana kita hanya dapat memilih satu pilihan dari berbagai nilai yang ada dalam menu
tersebut. Dalam menu pop-up ini jumlah pilihan yang ada dapat lebih banyak. Tag yang digunakan
adalah <select> … </select>.
19
Tabel 1.14 Tabel atribut-atribut yang digunakan dalam tag MenuPopUp
Atribut
<Option>
Name
Value
Keterangan
Tag option ini digunakan untuk menyatakan menu atau daftar pilihannya.
Untuk menamai nilai data sehingga scriptnya bisa memisah data dari field yang lain.
Nilai data yang akan diberikan kepada script yang dituju.
Contoh programnya : (InputMenuPopUp.html)
<html>
<head>
<title>Contoh input dengan Menu Pop-Up</title>
</head>
<body >
<form>
<p><b>Pilih Jurusan Anda : <br>
<select name=jrs>
<option value="ti" selected>Teknik Informatika</option>
<option value="si" >Sistem Informasi</option>
<option value="mi" >Manajemen Informatika</option>
<option value="tk" >Teknik Komputer</option>
<option value="ka" >Komputer Akuntansi</option>
</select></p>
</form>
</body>
</html>
Gambar 1.17 Tampilan form input menupopup
I.2.1.8.7 Submit dan Reset
Dalam sebuah form paling tidak harus memiliki sebuah tombol submit dan reset. Atribut yang
digunakan adalah type dimana type=”submit” digunakan untuk mengirimkan data yang telah diisi
oleh user ke server sedangkan type=”reset” digunakan untuk menghapus/mengosongkan semua data
yang telah dimasukkan ke form.
Tabel 1.15 Tabel atribut-atribut yang digunakan pada Submit dan Reset
Atribut
Keterangan
Method
Metode pengiriman data ke file tujuan. Ada 2 yaitu POST (digunakan untuk menangani
pengiriman data yang besar melalui form) dan GET (mengirimkan data di server dengan cara
meletakkan data pada akhir URL yang dituju).
Memberikan nama pada data yang diinputkan.
Memberikan label pada tombol submit.
Aksi yang akan dilakukan jika tombol submit ditekan.
Type form yang akan dijalankan.
Name
Value
Action
Type
20
Contoh programnya : (SubmitReset.html)
<html>
<head>
<title>Contoh Program Form</title>
</head>
<body bgcolor=aqua>
<form method="get" action="Terimakasih.php">
<center><font size=4 color=brown>Form Untuk Peserta Pelatihan Pemrograman
di STMIK A<font size=5>K</font>AKOM </font></center>
<hr size=5 color=brown><br>
<table border=2 cellspacing=0 width=85%>
<tr><td width=18%><b>Nama</b></td>
<td> <input type=text name=nama maxlength=30 size=32></td></tr>
<tr><td width=18%><b>Password</b></td>
<td> <input type=password name=pswd maxlength=10 size=12></td></tr>
<tr><td width=18%><b>Tanggal Lahir<b></td>
<td> <input type=text name=tgl maxlength=2 size=2> <input type=text name=bln maxlength=2 size=2> <input type=text name=thn maxlength=4 size=8></td></tr>
<tr><td width=18%><b>Jenis Kelamin</b></td>
<td> <input type=radio name=jk checked=checked>Pria
<input type=radio name=jk>Wanita</td></tr>
<tr><td><b>Jurusan <br></td>
<td><select name=jrs>
<option value="ti" selected>Teknik Informatika</option>
<option value="si" >Sistem Informasi</option>
<option value="mi" >Manajemen Informatika</option>
<option value="tk" >Teknik Komputer</option>
<option value="ka" >Komputer Akuntansi</option>
</select></td></tr>
<tr><td width=18%><b>Pilihan Pelatihan</b></td>
<td>
<input type=checkbox name=html >HTML
<input type=checkbox name=php >PHP
<input type=checkbox name=python >PYTHON
<input type=checkbox name=mysql >My-SQL
<input type=checkbox name=postgre >Postgre-SQL
<input type=checkbox name=builder>C++ Builder
</td>
</tr>
<tr><td><b>Keterangan <br></td>
<td><textarea name="kspl" cols=53 rows=3> </textarea></td></tr>
</table>
<p><font size=5><b>
<input type="submit" value="Kirim" name="tblkrm">
<input type="reset" value="Batal" name="tblbtl"></p>
</body>
</html>
Contoh programnya : (TerimaKasih.html)
<html>
<head>
<title>Ucapan Terima Kasih</title>
</head>
<body >
<center><font size=4 color=brown>Terimakasih atas Kepercayaannya Mengikuti
Pelatihan Pemrograman di STMIK A<font size=5>K</font>AKOM </font></center>
21
<hr size=5 color=brown> <hr size=3 color=brown>
<?php
print("Nama Anda adalah : $nama");
?>
</body>
</html>
Gambar 1.18 Tampilan form dengan submit dan reset
Gambar 1.19 Hasil penekanan tombol submit yang mengarah ke Terimaksih.php
I.2.1.8.8 Frame HTML
Digunakan untuk menjadikan suatu halaman web menjadi beberapa bagian dokumen HTML , dimana
setiap bagian merupakan satu halaman HTML terpisah. Sehingga tampilan halaman HTML yang
salah satu atau beberapa bagian berganti-ganti isinya sedangkan bagian lainnya tetap, maka hal ini
akan menghemat bandwith internet dan mempercepat proses download secara keseluruhan. Tag yang
digunakan adalah <frameset> … </frameset>.
Tabel 1.16 Tabel atribut-atribut yang digunakan pada frame HTML
Atribut
Rows
Colspan
Frame Src
Fungsi
Menentukan frame horisontal dengan tinggi baris tertentu.
Menentukan frame vertical dengan lebar kolom tertentu.
Menentukan dokumen HTML yang dimasukkan ke dalam frame.
22
Contoh programnya : (FrameHorisontal.html)
<html>
<head>
<title>Contoh Frame Horisontal</title>
</head>
<frameset rows=30%,*,40%>
<frame name=atas src=SubmitReset.html>
<frame name=tengah src=Tabel.html>
<frame name=bawah src=Hyperlink1.html>
</frameset>
</body>
</html>
Contoh programnya : (FrameVertikal.html)
<html>
<head>
<title>Contoh Frame Vertikal</title>
</head>
<frameset cols=30%,*,30%>
<frame name=kiri src= SubmitReset.html >
<frame name=tengah src=Tabel.html >
<frame name=kanan src=Hyperlink1.html >
</frameset>
</body>
</html>
23
Gambar 1.21 Tampilan frame vertikal
Contoh programnya : (FrameGabungan.html)
<html>
<head>
<title>Contoh Frame Gabungan</title>
</head>
<frameset cols=30%,*>
<frame name=kiri src=Hyperlink1.html >
<frameset rows=55%,*>
<frame name=atas src= SubmitReset.html >
<frame name=bawah src=Tabel.html >
</frameset>
</frameset>
</body>
</html>
Gambar 1.22 Tampilan frame gabungan
24
Tugas : Membuat Home Page Pribadi dan Form Buku Tamu dengan HTML, dimana Form Buku
Tamunya di Link dari Halaman Utama Home Page. Yang dikumpulkan :
1. Cetakan Skript HTML-nya.
2. Cetakan Tampilan Halaman Home Page dan Form Buku Tamunya.
3. Penjelasan Skript HTML-nya (Harus ditulis dengan Tangan).
Bab II. PHP (PHP Hypertext Preprocessor)
II.1 Pengantar PHP
Merupakan bahasa berbentuk script yang ditempatkan dan diproses dalam server, lalu hasilnya
dikirim ke klien jika klien memintanya, dengan menggunakan web browser (internet explorer). PHP
bersifat Open Source, karena gratis dan bebas. Database pasangannya, umumnya MySQL dan
dijalankan pada webserver Apache yang berbasis system operasi Linux.
Kelebihan-kelebihan dari PHP :
1. Mudah dibuat dan kecepatan aksesnya tinggi.
2. Dapat dijalankan pada web server(Apache, Personal Web Server/PWS,IIS, Xitami) yang
berbeda dan dalam system operasi(Linux, Windows, Unix, Macintosh)
3. Dapat digunakan secara gratis dan bebas.
4. Script-nya dapat ditempelkan di dalam tag HTML.
5. Termasuk aplikasi Server-Side Programming (PHP akan dieksekusi di server), sehingga yang
dikirim ke web browser klien sudah dalam bentuk HTML.
6. Mampu berkomunikasi dengan berbagai database terkenal (MySQL, Postgre SQL, Oracle,
InterBase, Sybase, Microsoft Acces, Informix).
Penulisan kode PHP diawali dengan tanda lebih kecil (<) dan diakhiri dengan tanda lebih besar (>).
Beberapa cara untuk menuliskan script PHP, yaitu :
Tabel 2.1 Beberapa format penulisan kode PHP
1.
<?
<?php
3.
<Script Language=”php”>
?>
?>
</Script>
Skrip PHP
2.
Skrip PHP
Contoh programnya : (PHPSederhana.php)
<html>
<head>
<title>Program PHP Sederhana</title>
</head>
<body >Belajar PHP Pertamakali<br>
<?
echo " Sekarang Tanggal : ", Date("d F Y"),"<br>";
Skrip PHP
25
printf ("Sekarang Tanggal : %s", Date("d F y"));
printf ("<br>");
printf ("OK deh...");
?>
</body>
</html>
Gambar 2.1 Tampilan program PHP Sederhana
Penjelasannya : echo "Tanggal Sekarang adalah : ", Date("d F Y"); dan printf ("Tanggal Sekarang adalah :
%s", Date("d F y"));
merupakan suatu instruksi yang dapat berdiri sendiri dan digunakan untuk
melakukan suatu tugas tertentu dan selalu diakhiri dengan tanda koma (;) yang biasa disebut sebagai
pernyataan. Kedua pernyataan ini, digunakan untuk menampilkan suatu tulisan atau hasil dari suatu
pemrosesan, yang menggunakan perintah echo atau printf, dimana dalam perintah echo tidak
diperlukan tanda ( dan ), sedangkan dalam perintah printf tanda ( dan ) diperlukan, untuk contoh
program selanjutnya kita akan menggunakan perintah printf ini, karena dengan adanya tanda ( dan )
akan mempermudah dalam menganalisa programnya.
Date("d F Y"),
perintah untuk menampilkan
tanggal, bulan dan tahun saat skrip tersebut dipanggil.
Pemrosesan kode PHP adalah pada sisi server, sehingga pihak klien tidak dapat melihat kode PHP
yang sesungguhnya. Untuk membuktikannya, sesudah anda buka dengan web browser pilih menu
View, lalu submenu Source maka yang akan terlihat adalah kode seperti berikut :
Gambar 2.2 Tampilan View-Source pada web browser
Dari tampilan kode diatas terbukti, berbeda dengan kode PHP aslinya. Jadi yang sampai ke klien
sebenarnya adalah kode HTML-nya.
II.2 Dasar-dasar PHP
II.2.1 Komentar (Comment)
Bagian dari kode PHP yang tidak dieksekusi/dijalankan, tetapi sangat berguna bagi pemrogram atau
pembaca program, dalam memahami isi program mengingat
keterangan-keterangan penjelas.
komentar biasanya berisi
26
Ada 2 cara untuk menulis komentar :
1. Komentar 1 baris, dibuat menggunakan tanda //(garis miring dua kali) atau tanda #.
2. Komentar banyak baris, dibuat dengan menggunakan pasangan tanda /* dan */ dimana
semua tulisan yang berada diantara kedua tanda ini tidak akan dijalankan .
Contoh programnya : (Komentar.php)
<html>
<head>
<title>Contoh Komentar 1 dan Banyak Baris</title>
</head>
<body > Belajar PHP <br>
<?
//menampilkan dengan echo
echo " Sekarang Tanggal : ", Date("d F Y");
echo "<br>";
printf ("Sekarang Tanggal : %s", Date("d F y")); #menampilkan dengan printf
printf ("<br>");
/*
Program ini akan mencetak tanggal sekarang sebanyak 2 buah
yaitu dengan echo dan printf, dengan format d F Y dan d F y
*/
echo " Sekarang Tanggal : ", Date("d F Y");
echo "<br>";
printf ("Sekarang Tanggal : %s", Date("d F y"));
?>
</body>
</html>
Gambar 2.3 Tampilan program komentar.php
Penjelasannya : //menampilkan dengan echo dan //menampilkan dengan printf adalah
merupakan contoh komentar 1 baris. /*Program ini akan mencetak tanggal sekarang sebanyak
2 buah yaitu dengan echo dan printf, dengan format d F Y dan d F y */ adalah merupakan
contoh komentar banyak baris.
II.2.2 Pernyataan (Statement)
Satuan perintah, dimana statemen ini harus diakhiri dengan tanda titik-koma (;).
Contoh programnya : (Pernyataan.php)
<html>
<head>
<title>Contoh Statement</title>
</head>
27
<body >
<?
echo "Sekarang Tanggal : ", Date("d F Y");
echo "<br>";
printf ("Sekarang Tanggal : %s", Date("d F y"));
?>
</body>
</html>
Gambar 2.4 Tampilan program pernyataan.php
Penjelasannya :
echo " Sekarang Tanggal : ", Date("d F Y");
Date("d F y"));, adalah
dan
printf ("Sekarang Tanggal : %s",
merupakan contoh statement.
II.2.3 Variabel
Sebagai tempat penyimpanan data sementara dan nilainya dapat berubah-rubah, dimana data yang
disimpan dalam variabel akan hilang setelah program selesai dieksekusi. Variabel dalam PHP selalu
ditulis dengan awalan tanda $ dan karakter pertama harus berupa huruf atau garis bawah ( _ ).
Contoh programnya : (Variabel.php)
<html>
<head>
<title>Contoh Variabel</title>
</head>
<body >
<?
$gapok = 1000000;
printf ("Gaji Pokok : %d",$gapok);
printf ("<br>");
$pdpt = 1.5 * $gapok;
printf ("Pendapatan Sekarang adalah : %d",$pdpt);
?>
</body>
</html>
Gambar 2.5 Tampilan program variabel.php
28
Penjelasannya : dari contoh program diatas $gapok merupakan variable dimana nilai awalnya
adalah 1000000. Expresi
$pdpt = 1.5 * $gapok;
ini akan menjadikan nilai variable $pdpt berisi
1500000.
II.2.4 Operator
Digunakan untuk memanipulasi nilai suatu variabel. Nilai yang dimodifikasi oleh operator disebut
Operand. Operand dan Operator ini akan membentuk ekspresi (ungkapan).
Operator diklasifikasikan menjadi :
II.2.4.1 Operator Aritmatika.
Operator yang digunakan untuk melakukan operasi perhitungan matematika.
Tabel 2.2 Operator aritmatika
Operator
Fungsi
+
Penjumlahan
Pengurangan
*
Perkalian
/
Pembagian
%
Sisa hasil bagi
Contoh programnya : (OpAritmatika.php)
<html>
<head>
<title>Contoh Operator Aritmatika</title>
</head>
<body>
<?php
printf("<b>Penjumlahan :<br>\n </b>");
printf("6 + 3.5 = %d <br>\n", 6 + 3.5);
printf("6 + 3.5 = %f <br>\n", 6 + 3.5);
printf("<b>Pengurangan :<br>\n </b>");
printf("6 - 3.5 = %d <br>\n", 6 - 3.5);
printf("6 - 3.5 = %f <br>\n", 6 - 3.5);
printf("<b>Perkalian :<br>\n </b>");
printf("7 x 3.5 = %d <br>\n", 7 * 3.5);
printf("7 x 3.5 = %f <br>\n", 7 * 3.5);
printf("<b>Pembagian :<br>\n </b>");
printf("7 / 3 = %d <br>\n", 7 / 3);
printf("7 / 3.5 = %f <br>\n", 7 / 3.5);
printf("<b>Sisa hasil bagi :<br>\n </b>");
print("9 % 3 = "); print(9 % 3); print("<br>\n");
print("9 % 5 = "); print(9 % 5); print("<br>\n");
?>
</body>
</html>
29
Gambar 2.6 Tampilan program oparitmatika.php
II.2.4.2 Operator Pembandingan.
Operator yang digunakan untuk membandingkan nilai dari 2 operand, hasilnya dinyatakan dalam
nilai Boolean : True (benar) dan false (salah).
Tabel 2.3 Operator pembandingan
Operator
==
>
<
>=
Fungsi
Memeriksa apakah operand kanan bernilai sama dengan operand kiri.
Memeriksa apakah operand kiri bernilai lebih besar dengan operand kanan.
Memeriksa apakah operand kiri bernilai lebih kecil dengan operand kanan.
Memeriksa apakah operand kiri bernilai lebih besar atau sama dengan
operand kanan.
<=
Memeriksa apakah operand kiri bernilai lebih kecil atau sama dengan
operand kanan.
!= atau <> Memeriksa apakah operand kanan tidak bernilai sama dengan operand kanan.
Contoh programnya : (OpPembadingan.php)
<html>
<head>
<title>Contoh Operator Pembandingan</title>
</head>
<head>
<?php
$a = 2;
$b = 3;
$c = 2;
printf("$a < $b keterangan : %d<br>\n", $a < $b);
printf("$a > $b keterangan : %d<br>\n", $a > $b);
printf("$a <= $b keterangan : %d<br>\n", $a <= $b);
printf("$a >= $b keterangan : %d<br>\n", $a >= $b);
printf("$a = $c keterangan : %d<br>\n", $a == $c);
printf("$a != $c keterangan : %d<br>\n", $a != $c);
printf("$a <> $b keterangan : %d<br>\n", $a <> $b);
?>
</body>
</html>
30
Gambar 2.7 Tampilan program oppembadingan.php
II.2.4.3 Operator Logika
Digunakan untuk membandingkan 2 nilai variabel yang bertipe Boolean dan hasil yang di dapat juga
bertipe Boolean.
Tabel 2.4 Operator logika
Operand
Kanan
Operand
Kiri
Operator
&& (and)
|| (or)
Salah
Salah
Salah
Salah
Salah
Benar
Salah
Benar
Benar
Salah
Salah
Benar
Benar
Benar
Benar
Benar
Operator ! dikenakan hanya pada sebuah operand.
xor (exclusive or)
Salah
Benar
Benar
Salah
Operand
! (not)
Salah
Benar
Benar
Salah
Contoh programnya : (OpLogika.php)
<html>
<head>
<title>Contoh Operator Logika</title>
</head>
<body>
<?php
$a = '1';
$b = '2';
$c = '3';
printf("<b>Logika AND<br>\n </b>");
printf("1>2 and 2>3, keterangan : %d<br>\n", $a >$b and $b >$c);
printf("1>2 and 2<3, keterangan : %d<br>\n", $a >$b && $b <$c);
printf("1<2 and 2>3, keterangan : %d<br>\n", $a <$b and $b >$c);
printf("1<2 and 2<3, keterangan : %d<br>\n", $a <$b && $b <$c);
printf("<b>Logika OR<br>\n </b>");
printf("1>2 or 2>3, keterangan : %d<br>\n", $a >$b or $b >$c);
printf("1>2 or 2<3, keterangan : %d<br>\n", $a >$b || $b <$c);
printf("1<2 or 2>3, keterangan : %d<br>\n", $a <$b or $b >$c);
printf("1<2 or 2<3, keterangan : %d<br>\n", $a <$b || $b <$c);
printf("<b>Logika XOR<br>\n </b>");
printf("1>2 xor 2>3, keterangan : %d<br>\n", $a >$b xor $b >$c);
printf("1>2 xor 2<3, keterangan : %d<br>\n", $a >$b xor $b <$c);
printf("1<2 xor 2>3, keterangan : %d<br>\n", $a <$b xor $b >$c);
31
printf("1<2 xor 2<3, keterangan : %d<br>\n", $a <$b xor $b <$c);
printf("<b>Logika NOT<br>\n </b>");
printf("not(1<2 xor 2<3), keterangan : %d<br>\n", !($a <$b xor $b <$c));
printf("not(1<2 xor 2>3), keterangan : %d<br>\n", !($a <$b xor $b >$c));
?>
</body>
</html>
Gambar 2.8 Tampilan program oplogika.php
II.2.4.4 Operator Pemanipulasi Bit
Digunakan untuk memanipulasi data dalam level bit.
Tabel 2.5 Operator pemanipulasian bit
Operator
Fungsi
Melakukan operasi and, nilai variabel (dalam level bit) di sisi kiri operator
&
dengan sisi kanannya.
Melakukan operasi or, nilai variabel (dalam level bit) di sisi kiri operator
|
dengan sisi kanannya.
Melakukan operasi xor, nilai variabel (dalam level bit) di sisi kiri operator
^
dengan sisi kanannya.
>>
Menggeser bit ke kanan dari nilai variabelnya (dalam level bit).
<<
Menggeser bit ke kiri dari nilai variabelnya (dalam level bit).
Contoh programnya : (OpPemanipulasianBit.php)
<html>
<head>
<title>Contoh Operasi Pemanipulasi Bit</title>
</head>
<body>
<?php
$bil1 = 14;
$bil2 = 11;
printf("$bil1 & $bil2 = %d <br>\n", $bil1 & $bil2);
printf("%d | %d = %d <br>\n", $bil1, $bil2, $bil1 | $bil2);
32
printf("$bil1 ^ $bil2 = %d <br>\n", $bil1 ^ $bil2);
printf("$bil1 >> 1 = %d <br>\n", $bil1 >> 1 );
printf("%d >> 2 = %d <br>\n", $bil1, $bil1 >> 2 );
printf("$bil1 << 1 = %d <br>\n", $bil1 << 1 );
printf("%d << 2 = %d <br>\n", $bil1, $bil1 << 2 );
?>
</body>
</html>
Gambar 2.9 Tampilan program oppemanipulasianbit.php
Keterangan :
Ekspresi
14 & 11
14 | 11
14 ^ 15
14 >> 1
14 >> 2
14 << 1
14 << 2
Keterangan
1110 & 1011 = 1010 (10)
1110 | 1011 = 1111 (15)
1110 ^ 1011 = 0101 (5)
1110 digeser 1 ke kanan = 111 (7)
1110 digeser 2 ke kanan = 11 (3)
1110 digeser 1 ke kiri = 11100 (28)
1110 digeser 2 ke kiri = 111000 (56)
II.2.4.5 Operator Penugasan
Digunakan untuk memberi atau mengisi nilai kedalam variabel tertentu, yang umum digunakan
adalah operator “=”.
Tabel 2.6 Operator penugasan
Operator
+=
-=
/=
*=
%=
&=
|=
^=
Fungsi
Menambahkan nilai pada variabel di sisi kiri operator dengan di sisi kanan.
Mengurangi nilai pada variabel di sisi kiri operator dengan nilai di sisi kanan.
Membagi nilai pada variabel di sisi kiri operator dengan nilai di sisi kanan..
Mengalikan nilai pada variabel di sisi kiri operator dengan nilai di sisi kanan.
Mencari sisa hasil bagi antara variabel di sisi kiri operator dengan di sisi
kanan.
Melakukan operasi logika and terhadap variabel di sisi kiri operator dengan
nilai di sisi kanan.
Melakukan operasi logika or terhadap variabel di sisi kiri operator dengan
nilai di sisi kanan.
Melakukan operasi logika xor terhadap variabel di sisi kiri operator dengan
nilai di sisi kanan.
33
Menambahkan string pada variabel di sisi kiri operator dengan nilai di sisi
kanan.
++
Menambahkan nilai 1 pada variabel (penaikkan).
-Mengurangi nilai 1 pada variabel (penurunan).
Contoh programnya : (OpPenugasan.php)
.=
<html>
<head>
<title>Contoh Operator Penugasan --</title>
</head>
<body>
<?php
$bil = 25; $bit = 14; $str = "Satu";
print("Isi variabel bil = $bil dan variabel bit = $bit dan variabel str = $str<br>\n");
$bil += 5;
print("Isi variabel setelah diberikan ekspresi ($ bil += 5) adalah $bil <br>\n");
$bil -= 5;
print("Isi variabel setelah diberikan ekspresi ($ bil -= 5) adalah $bil <br>\n");
$bil /= 5;
print("Isi variabel setelah diberikan ekspresi ($ bil /= 5) adalah $bil <br>\n");
$bil *= 5;
print("Isi variabel setelah diberikan ekspresi ($ bil *= 5) adalah $bil <br>\n");
$bil %= 7;
print("Isi variabel setelah diberikan ekspresi ($ bil %= 7) adalah $bil <br>\n");
$bit &= 11;
print("Isi variabel setelah diberikan ekspresi ($ bit &= 11) adalah $bit <br>\n");
$bit |= 9;
print("Isi variabel setelah diberikan ekspresi ($ bit |= 9) adalah $bit <br>\n");
$bit ^= 6;
print("Isi variabel setelah diberikan ekspresi ($ bit ^= 6) adalah $bit <br>\n");
$str .= " Juta";
print("Isi variabel setelah diberikan ekspresi ($ str .= '' Juta'') adalah $str <br>\n");
printf("Efek ++ yang diletakkan dibelakang variabel :<br>\n");
printf("Isi variabel setelah diberikan ekspresi (3 + $ bil++) adalah \n");
printf(3 + $bil++); print("<br>\n");
printf("Isi variabel bil saat ini adalah \n"); print("x = $bil <br>\n");
$bil=4;
print("<b>Isi variabel bil dikembalikan menjadi : $bil </b><br>\n");
print("Efek ++ yang diletakkan didepan variabel :<br>\n");
print("Isi variabel setelah diberikan ekspresi (3 + ++$ bil) adalah \n");
print(3 + ++$bil); print("<br>\n");
print("Isi variabel bil saat ini adalah \n"); print("x = $bil <br><br>\n");
printf("Efek -- yang diletakkan dibelakang variabel :<br>\n");
printf("Isi variabel setelah diberikan ekspresi ($ bil--) adalah \n");
printf($bil--); print("<br>\n");
printf("Isi variabel bil saat ini adalah \n"); print("x = $bil <br>\n");
$bil=5;
print("<b>Isi variabel bil dikembalikan menjadi : $bil </b><br>\n");
print("Efek -- yang diletakkan didepan variabel :<br>\n");
print("Isi variabel setelah diberikan ekspresi (--$ bil) adalah \n");
print(--$bil); print("<br>\n");
print("Isi variabel bil saat ini adalah \n"); print("x = $bil <br>\n");
?>
</body>
</html>
34
Gambar 2.10 Tampilan program oppenugasan.php
II.2.4.6 Operator String
Hanya ada satu operator string yaitu operator penggabung string “.”(titik).
Contoh programnya : (OpString.php)
<html>
<head>
<title>Contoh Operator String</title>
</head>
<body>
<?php
$a="Selamat datang di";
$b=$a." Kampus STMIK Akakom Yogyakarta";
print("<b>$b");
?>
</body>
</html>
Gambar 2.11 Tampilan program opstring.php
35
II.2.4.7 Prioritas Operator
Untuk mengetahui dan menentukan urutan pengerjaan operator dalam suatu ekspresi.
Catatan:
¾ Jika dalam sebuah ekspresi terdapat beberapa operator yang mempunyai prioritas yang
berbeda maka yang akan dikerjakan terlebih dahulu adalah operator dengan prioritas
tertinggi.
¾ Jika dalam sebuah ekspresi terdapat beberapa operator yang mempunyai prioritas yang
sama maka yang dikerjakan terlebih dahulu adalah operator yang paling kiri.
Tabel 2.7 Prioritas operator
Prioritas
Tertinggi
Operator
() {}
~ ++ -* / %
+ <> <= >=
= = !=
&
^
!
&&
||
xor
Terendah = += -= *= /= &= |= ^=
.=
Contoh programnya : (PrioritasOp.php)
<html>
<head>
<title>Contoh Prioritas Operator</title>
</head>
<body>
<?php
$a=3; $b=5; $c=12;
printf("$a + $b * $c = %d <br>\n", $a+$b*$c);
printf("($a + $b) * $c = %d <br>\n", ($a+$b)*$c);
printf("$a / $b - $c = %f <br>\n", $a/$b-$c);
?>
</body>
</html>
Gambar 2.12 Tampilan program opstring.php
36
II.3 Aliran Kendali (Control Flow) pada PHP
Maksud sebenarnya dari control flow adalah bagaimana urutan eksekusi perintah di dalam program.
Beberapa control flow yang disediakan dalam PHP :
II.3.1 Percabangan
Sering disebut juga dengan istilah decision making (pengambilan keputusan) memungkinkan aplikasi
memeriksa isi suatu variabel atau hasil perhitungan ekspresi dan mengambil tindakan yang sesuai.
Ada 2 jenis percabangan, dipilih berdasarkan kriteria dan jumlah pilihan yang tersedia.
II.3.1.1 Pernyataan if, if-else dan if-else-if
-
Konstruksi if saja, formatnya : if (kondisi/ekspresi)
{
statemen
}
Kodisi akan diperiksa, jika bernilai benar maka bagian statemen akan dijalankan, jika bernilai
salah maka bagian statemen tidak akan dijalankan.
Contoh programnya : (If.php)
<html>
<head>
<title>Contoh Percabangan If Saja</title>
</head>
<body>
<?php
$nilai = 80;
$ket = "Tidak Lulus";
if ($nilai >= 50)
{
$ket = "Lulus";
}
print("$ket<BR\n");
?>
</body>
</html>
Gambar 2.13 Tampilan program if.php
-
Konstruksi if-else, formatnya : if (kondisi/ekspresi)
{ statemen_ 1}
else
{ statemen_2 }
Kodisi akan diperiksa, jika bernilai benar maka statemen_1 akan dijalankan, jika bernilai
salah maka statemen_2 akan dijalankan.
37
Contoh programnya : (IfElse.php)
<html>
<head>
<title>Contoh Percabangan If-Else</title>
</head>
<body>
<?php
$nilai = 45;
if ($nilai >= 50)
$ket = "Lulus";
else
$ket = "Tidak Lulus";
print("$ket<br>\n");
?>
</body>
</html>
Gambar 2.14 Tampilan program ifelse.php
-
Konstruksi if-elseif, formatnya : if (kondisi/ekspresi_1)
{ statemen_1 }
elseif ( kondisi/ekspresi_2 )
{ statemen_2 }
else
{ statemen_3 }
Kodisi_1 akan diperiksa, jika bernilai benar maka statemen_1 akan dijalankan, jika kodisi_1
bernilai salah maka akan memeriksa kodisi_2, jika bernilai benar maka statemen_2 akan
dijalankan, jika kodisi_2 bernilai salah maka statemen_3 akan dijalankan.
Contoh programnya : (IfElseIf.php)
<html>
<head>
<title>Contoh Percabangan If-ElseIf</title>
</head>
<body>
Pilihan Anda adalah :
<?php
$pil = 1;
if ($pil == "1")
print("Manajemen Informatika");
elseif ($pil == "2")
print("Komputer Akuntansi");
elseif ($pil == "3")
print("Teknik Komputer");
else
print("Anda salah Pilih...!");
?>
</body>
</html>
38
Gambar 2.15 Tampilan program ifelseif.php
II.3.1.2 Konstruksi switch
Formatnya : switch (kondisi/ekspresi)
{
case kondisi/ekspresi_case_1
statemen_1
break;
case kondisi/ekspresi_case_2
statemen_2
break;
...
...
default:
statemen_n
}
Kodisi akan diperiksa, jika kondisi=kondisi/ekspresi_case_1 maka statemen_1 akan dijalankan dan
kemudian eksekusi dilanjutkan ke statemen yang terletak sesudah tanda penutup switch yaitu : }, jika
kondisi=kondisi/ekspresi_case_2 maka statemen_2 akan dijalankan dan kemudian eksekusi
dilanjutkan ke statemen yang terletak sesudah tanda penutup switch yaitu : }, jika tidak ada yang
memenuhi maka statemen_n yang akan dijalankan.
Contoh programnya : (Switch.php)
<html>
<head>
<title>Contoh Percabangan Switch</title>
</head>
Pilihan Anda adalah :
<?php
$pil = 2;
switch ($pil)
{
case 1:
print("<b>Manajemen Informatika"); break;
case 2:
print("<b>Teknik Komputer"); break;
case 3:
print("<b>Komputer Akuntansi"); break;
case 4:
print("<b>Teknik Informatika"); break;
case 5:
print("<b>Sistem Informasi"); break;
default :
print("<b>Maaf Anda Salah Pilih");
}
39
print("<br>");
print("Ini adalah statemen yang terletak sesudah tanda penutup Switch ");
?>
</body>
</html>
Gambar 2.16 Tampilan program switch.php
II.3.2 Perulangan
Suatu pernyataan yang berguna untuk melakukan suatu pengulangan.
II.3.2.1 Pernyataan for
Merupakan pernyataan yang digunakan untuk melakukan pengulangan (looping), dimana jumlah
pengulangannya telah ditentukan diawal pengulangan.
-
Konstruksi for, formatnya : for (ekspresi1;ekspresi2,ekspresi3)
{
statemen
}
Ekspresi1, memberikan nilai awal terhadap variabel yang akan digunakan untuk melakukan
pencacahan pengulangan. Ekspresi2, berlaku sebagai kondisi untuk menentukan pengulangan
terhadap pernyataan yang ada di dalam { }, akan dilakukan atau tidak. Ekspresi3, digunakan
untuk mengatur nilai variabel yang digunakan dalam ekspresi1. Statemen, merupakan perintah
yang akan diulang-ulang. Bila statemen, yang berada diantara tanda { dan } hanya satu, tanda {
dan } dapat dihilangkan.
Contoh programnya : (For.php)
<html>
<head>
<title>Contoh Perulangan For</title>
</head>
<body>
<?php
for ($bil = 1; $bil <= 15; $bil+=3)
{
print("Angka : $bil <br>");
}
?>
</body>
</html>
40
Gambar 2.17 Tampilan program for.php
II.3.2.2 Pernyataan while
Merupakan pernyataan yang digunakan untuk memberikan perintah menjalankan statemen tertentu,
secara berulang-ulang selama syaratnya terpenuhi.
-
Konstruksi while, formatnya : while (kondisi/ekspresi )
{
statemen
}
Kondisi/ekspresi, akan diperiksa terlebih dahulu, jika benar maka statemen yang terdapat
dalam { } akan dijalankan dan kemudian kondisi/ekspresi diperiksa lagi berulang-ulang
sampai kondisi/ekspresi bernilai salah.
Contoh programnya : (While.php)
<html>
<head>
<title>Contoh Perulangan While</title>
</head>
<body>
<?php
$bil=1;
while ($bil < 16)
{
print("Angka : $bil<br>");
$bil+=3;
}
?>
</body>
</html>
Gambar 2.18 Tampilan program while.php
II.3.2.3 Pernyataan do-while
Suatu pernyataan yang fungsinya sama dengan while, namun pada do-while paling tidak statemen
yang berada pada tanda { } akan dijalankan 1 kali.
41
-
Konstruksi do-while, formatnya : do
{
statemen
}
while (kondisi/ekspresi );
Statemen yang terdapat dalam { } akan dijalankan, kemudian kondisi/ekspresi akan diperiksa,
jika benar maka statemen yang terdapat dalam { } akan dijalankan lagi berulang-ulang sampai
kondisi/ekspresi bernilai salah.
Contoh programnya : (DoWhile.php)
<html>
<head>
<title>Contoh Perulangan Do-While</title>
</head>
<body>
<?php
$bil = 1;
do
{
print("Angka :$bil<br>");
$bil+=2;
}
while ($bil <=10);
?>
</body>
</html>
Gambar 2.19 Tampilan program dowhile.php
II.3.3 Perpindahan
Suatu pernyataan yang berguna untuk melakukan suatu perpindahan.
II.3.3.1 Pernyataan break
Pernyataan yang digunakan untuk menghentikan atau keluar dari proses pengulangan (looping).
Contoh programnya : (Break.php)
<html>
<head>
<title>Contoh Perpindahan Break</title>
</head>
<body>
<?php
for($bil=1; $bil<=5; $bil++)
{
print("Angka : $bil <br>");
if ($bil==8)
42
break;
}
print("Perulangan Selesai <br>");
?>
</body>
</html>
Gambar 2.20 Tampilan program break.php
Contoh programnya : (BreakLain.php)
<html>
<head>
<title>Contoh Perpindahan Break dengan Parameter</title>
</head>
<body>
<?php
for ($bil=1; $bil<=10; $bil++)
{
switch ($bil)
{
case 3:
print("Break 1 <br>\n"); break 1;
case 6:
print("Break 2 <br>\n"); break 2;
default:
print("$bil <br>\n"); break;
}
}
print("Perulangan Selesai <br>");
?>
</body>
</html>
Gambar 2.21 Tampilan program breaklain.php
43
II.3.3.2 Pernyataan continue
Pernyataan yang digunakan untuk melewati satu putaran dalam rangkaian pengulangan (looping).
Contoh programnya : (Continue.php)
<html>
<head>
<title>Contoh Perpindahan Continue</title>
</head>
<body>
<?php
for($bil=1; $bil<=8; $bil++)
{
if ($bil>=4 and $bil<=6)
{
continue;
}
print("Angka :$bil <br>\n");
}
?>
</body>
</html>
Gambar 2.22 Tampilan program continue.php
II.3.3.3 Pernyataan exit
Pernyataan yang digunakan untuk mengakhiri pengeksekusian, dengan pemberian perintah ini maka
semua skrip baik PHP maupun HTML tidak akan dikirim ke browser.
Contoh programnya : (Exit.php)
<html>
<head>
<title>Contoh Perpindahan Exit</title>
</head>
<body>
<?php
for($bil = 1; $bil <= 10; $bil++)
{
print("Angka : $bil <br>\n");
if ($bil == 4)
exit;
}
print("Program Selesai <br>\n");
?>
</body>
</html>
44
Gambar 2.23 Tampilan program exit.php
II.3.3.4 Pernyataan return
Merupakan pernyataan yang digunakan untuk memerintahkan kode untuk keluar dari fungsi.
Contoh programnya : (Return.php)
<html>
<head>
<title>Contoh Perpindahan Return</title>
</head>
<body>
<?php
function TesReturn()
{
for($bil = 1; $bil <= 15; $bil++)
{
print("Angka : $bil <br>\n");
{
if ($bil ==3)
return;
}
}
print("Pengulangan Selesai <br>\n");
}
TesReturn ();
print("Pemanggilan Fungsi Selesai <br>\n");
?>
</body>
</html>
Gambar 2.24 Tampilan program return.php
Terlihat bahwa, print("Pengulangan Selesai <br>\n"); tidak dijalankan, menunjukkan bahwa
setelah return dieksekusi, program akan keluar dari fungsi TesReturn() dan mengeksekusi
perintah setelah fungsi TesReturn(), yaitu print("Pemanggilan Fungsi Selesai <br>\n");.
45
II.4 Array
Array adalah kumpulan beberapa data yang disimpan dalam satu variabel. Jadi berbeda dengan
variabel sebelumnya yang hanya menyimpan satu nilai saja, array dapat menampung lebih dari 1
nilai. Sebagai contoh, anda akan menyimpan data teman-teman anda dalam satu variabel $teman, dan
ada 3 orang temen yang akan anda masukkan ke dalam variabel tersebut. Secara visual dapat
digambarkan sebagai berikut :
$teman[0]
Febty
$teman[1]
Abi
$teman
Sari
$teman[2]
Setiap nilai dalam array disebut elemen, akan mempunyai index dan dengan index ini akan digunakan
untuk mengakses elemen tersebut. PHP mengenal 2 macam index, yaitu :
1. Index Numerik, menggunakan angka sebagai index-nya (biasanya dimulai dari 0).
2. Index Asosiatif/String, menggunakan nama masing-masing elemen sebagai index-nya.
II.4.1 Inisialisasi Array
Inisialisasi (mengisi nilai) array seperti contoh diatas, dapat diciptakan dengan cara sebagai berikut :
$teman = array (“Febty”, “Abi”, “Sari”);
Kode diatas menjadikan array $temen berindeks numeric, selain cara ini ada cara lain yaitu :
$teman[] = “Febty”;
$teman[] = ”Abi”;
$teman[] = “Sari”;
Kode diatas akan menjadikan array $temen berindeks numeric juga.
$teman
0
1
2
Febty
Abi
Sari
Untuk membuat array berindeks asosiatif, membutuhkan label atau nama untuk masing-masing
elemen. Dari contoh diatas akan dikembangkan agar dapat menyimpan nomer telepon masing-masing
teman dan menjadikan nama orangnya sebagai indeks. Contohnya adalah sebagai berikut :
$teman = array (“Febty”=>8865267, “Abi”=>543886, “Sari”=>7404188);
atau
$teman[“Febty”] = 8865267;
$teman[”Abi”] = 543886;
$teman[“Sari”]
= 7404188;
Kedua kode diatas akan menjadikan $temen array berindeks asosiatif/string.
$teman
Febty
8865267
Abi
543886
Sari
7404188
46
II.4.2 Navigasi Array
Navigasi (mengakses nilai) array dapat dilakukan dengan menggunakan kalang. Misalnya untuk
menampilkan isi array berindeks numeric diatas :
Contoh programnya : (Array.php)
<html>
<head>
<title>Contoh Mengakses Array dengan Indeks Numerik</title>
</head>
<body>
<?php
$teman = array ("Febty", "Abi", "Sari");
for ($i = 0; $i <count($teman); $i++)
{
print("Array \$teman Indeks [$i] adalah : $teman[$i] <br>");
}
?>
</body>
</html>
Gambar 2.25 Tampilan program array.php
Fungsi count diatas digunakan untuk mendapatkan jumlah array, yaitu 3. Sedangkan untuk
menampilkan seluruh elemen dalam array menggunakan for.
Untuk menampilkan isi array berindeks string, tidak dapat menggunakan kalang for seperti diatas,
karena label/indeks elemen disimpan dalam tipe string (bukan numeric). Contoh kalang untuk
mengakses array berindeks string dapat dilihat dibawah ini :
Contoh program lainnya : (ArrayString.php)
<html>
<head>
<title>Contoh Mengakses Array dengan Indeks String</title>
</head>
<body>
<?php
$teman = array ("Febty"=>8865267, "Abi"=>543886, "Sari"=>7404188);
//Untuk menampilkan semua elemen yang berindeks string
while ( list($indeks, $elemen) = each($teman) )
{
print("Array \$teman indeks : $indeks berisi elemen : $elemen <br>");
}
?>
</body>
</html>
47
Gambar 2.26 Tampilan program arraystring.php
Disini ada 2 fungsi yang terlibat, yaitu : each dan list. Fungsi each digunakan untuk mengakses
masing-masing elemen dalam array dan juga indeksnya yang saling berpasangan. Pasangan elemen
dan indeks ini, akan dipisahkan oleh fungsi list dan dimasukkan kedalam variabel $indeks dan
$elemen.
II.4.3 Fungsi-fungsi Array
Sort, mengurutkan elemen pada array dengan urutan naik (ascending) dan indeksnya numerik, Rsort
mengurutkan elemen pada array dengan urutan turun (descending) dan indeksnya numerik.
Contoh programnya : (Sort&Rsort.php)
<html>
<head>
<title>Pengurutan Elemen degan Sort dan Rsort</title>
</head>
<body>
<?php
$teman = array (“Febty”=>8865267, “Abi”=>543886, “Sari”=>7404188);
// Pengurutan dengan sort
sort($teman);
print("Hasil Pengurutan Naik : <br>");
while ( list($indeks, $elemen) = each($teman) )
{
print("Indeks ke :[$indeks] berisi : $elemen <br>");
}
// Pengurutan dengan rsort
rsort($teman);
print("Hasil Pengurutan Turun : <br>");
while ( list($indeks, $elemen) = each($teman) )
{
print("Indeks ke :[$indeks] berisi : $elemen <br>");
}
?>
</body>
</html>
48
Gambar 2.27 Tampilan program sort&rsort.php
II.4.4 Array Multidimensional
Array Multidimensional, adalah array yang elemennya mengandung array dan bahkan jumlah
elemen array yang terkandung pada elemen array dapat berbeda.
Contoh gambaran array multidimensi :
Mata Kuliah
Pemrograman Web
Pemrograman Visual
Pemrograman Basisdata
Mahasiswa
Andreas, Ridwan, Sita
Andreas, Fafa, Susi
Lina, Dina, Susi, Rini
Contoh programnya : (ArrayMultidimensional.php)
<html>
<head>
<title>Penggunaan Array Multidimensi</title>
</head>
<body>
<?php
// Membuat array berdimensi dua
$Mahasiswa = array
(
"Pemrograman Web" => array("Andreas", "Ridwan", "Sita"),
"Pemrograman Visual" => array("Andreas","Fafa","Susi"),
"Pemrograman Basisdata" => array("Lina","Dina","Susi","Rini"),
);
// Menampilkan isi array
while ( list($indeks1, $elemen1) = each($Mahasiswa) )
{
print("<b>Peserta $indeks1 : </b><br>");
$nomor = 1;
while ( list($indeks2, $elemen2) = each($elemen1) )
{
print("$nomor. $elemen2 <br>");
$nomor++;
}
}
?>
</body>
</html>
49
Gambar 2.28 Tampilan program arraymultidimensional.php
II.5 Fungsi (Function)
Fungsi adalah blok kode (kumpulan beberapa statement) yang dibuat dengan tujuan melaksanakan
satu tugas tertentu. Dengan menciptakan sebuah fungsi sekali saja, fungsi ini akan dapat digunakan
berkali-kali pada bagian manapun dalam skrip dengan cara memanggil nama fungsi tersebut.
II.5.1 Deklarasi Fungsi
Fungsi dideklarasikan dengan menggunakan pernyataan Function.
Formatnya :
function nama_fungsi (parameter)
{
blok kode
}
Hal-hal yang perlu diperhatikan dalam deklarasi fungsi dalam PHP :
-
Nama fungsi (function name), nama yang diberikan pada fungsi yang digunakan untuk
memanggil fungsi tersebut. Aturan penamaan fungsi :
1. Tidak boleh sama dengan nama fungsi yang telah ada dalam PHP.
2. Hanya boleh terdiri dari huruf, angka dan garis bawah.
3. Tidak boleh diawali dengan angka.
-
Parameter, nilai yang akan dimasukkan ke dalam fungsi untuk kemudian diproses,
sehingga akan menhasilkan output sesuai keinginan.
-
Blok kode, berisi instruksi yang harus dilakukan komputer, untuk menghasilkan output
yang diinginkan dan dibatasi oleh sepasang { dan }.
Contoh fungsi :
function penjumlahan($a,$b)
{
$c = ($a + $b);
print ($c);
}
penjumlahan(8,9);
50
Keterangan :
-
function, kata kunci fungsi.
penjumlahan, nama fungsi.
($a,$b), parameter dari fungsi.
{
$c = ($a + $b)
blok kodenya.
print ($c);
}
-
penjumlahan(8,9);, memanggil fungsi penjumlahan dengan memberikan nilai parameter
$a=8 dan $b=9.
Contoh program lainnya : (Fungsi.php)
<html>
<head>
<title>Contoh Fungsi</title>
</head>
<body>
<?php
function penjumlahan($a,$b)
{
$c = ($a + $b);
print ($c);
}
penjumlahan(8,9);
?>
</body>
</html>
Gambar 2.29 Tampilan program fungsi.php
II.5.2 Nilai Balik Fungsi
Nilai yang dihasilkan oleh suatu fungsi, setelah fungsi tersebut dijalankan.
Contoh programnya : (FungsiNilaiBalik.php)
<html>
<head>
<title>Contoh Fungsi dengan Nilai Balik</title>
</head>
<body>
<?php
function penjumlahan($a,$b)
{
$c = ($a + $b);
return ($c); //digunakan untuk memberikan nilai balik fungsi
}
penjumlahan(8,9); //digunakan untuk memanggil fungsi pejumlahan
print (penjumlahan(8,7));
//digunakan untuk memanggil fungsi pejumlahan dan
//menampilkan ke layar
?>
</body>
51
</html>
Gambar 2.30 Tampilan program fungsinilaibalik.php
II.5.3 Nilai Argumen Bawaan.
Nilai bawaan yang dimiliki oleh suatu parameter, bilamana nilai argumennya tidak disebutkan pada
saat fungsi dipanggil.
Contoh programnya : (FungsiNilaiArgumenBawaan.php)
<html>
<head>
<title>Contoh Fungsi dengan Argumen Bawaan</title>
</head>
<body>
<?php
function penjumlahan($a=3,$b=10) //Memberi nilai bawaan untuk argumen a = 3 dan b = 4
{
$c = ($a * $b);
return ($c);
}
print (penjumlahan(8,7)); //Memberi nilai untuk argumen a = 8 dan b = 7
print ("<br>");
print (penjumlahan(8)); //Memberi nilai untuk argumen a = 8 sedangkan argumen b mengambil dari
//nilai bawaannya
print ("<br>");
print (penjumlahan()); //Nilai untuk argumen a dan b dikosongkan, sehingga kedua argument akan
//menggunakan nilai bawaannya
?>
</body>
</html>
Gambar 2.31 Tampilan program fungsinilaiargumenbawaan.php
II.5.4 Fungsi Rekursif
Suatu fungsi yang memanggil dirinya sendiri.
Contoh programnya : (FungsiRekursif.php)
<html>
<head>
<title>Contoh Rekursif</title>
52
</head>
<body>
<?php
function jum_tot($bil)
{
if ($bil==0)
//Jika isi variabel bil = 0, maka nilai balik fungsi jum_tot =0
return 0;
else
return $bil + jum_tot($bil - 1); //Pemanggilan rekursif, fungsi jum_tot
}
printf("Jumlah Total <b>5 </b> Bilangan Pertama = <b>%d <br></b>\n", jum_tot(5));
printf("Jumlah Total <b>10</b> Bilangan Pertama = <b>%d <br></b>\n", jum_tot(10));
?>
</body>
</html>
Gambar 2.32 Tampilan program fungsirekursif.php
II.6 Lingkup Variabel (Variable Scope)
Lingkup variabel adalah menyatakan di mana variabel dapat digunakan dalam program, ada 2 yaitu :
II.6.1 Variabel lokal
Variabel yang hanya dapat digunakan dalam blok tempatnya dideklarasi.
II.6.2 Variabel global
Variabel yang dapat digunakan di mana saja dalam program setelah dideklarasi dan diinisialisasi,
variabel ini akan dapat digunakan berkali-kali pada bagian manapun dalam skrip dengan cara
memanggil nama variabel tersebut.
Contoh programnya : (VariabelLokal.php)
<html>
<head>
<title>Contoh Variabel Lokal</title>
</head>
<body>
<?php
function testvar()
{
$nama = "Fafa"; //variabel nama ini merupakan variabel local yang berisi “Fafa”
return ($nama); //memberikan nilai balik pada fungsi “testvar”
}
$nama = "Abi";
//variabel nama ini merupakan variabel global yang berisi “Abi”
print("$nama");
print("<br>");
print( testvar() );
print("<br>");
print("$nama");
53
?>
</body>
</html>
Gambar 2.33 Tampilan program variabellokal.php
Contoh programnya : (VariabelGlobal.php)
<html>
<head>
<title>Contoh Variabel Global</title>
</head>
<body>
<?php
function testvar()
{
global $nama; //mendeklarasikan variabel nama sebagai variabel global
$nama = "Fafa"; //variabel nama ini telah menjadi variabel global yang berisi “Fafa”
return ($nama); //memberikan nilai balik pada fungsi “testvar”
}
$nama = "Abi"; //variabel nama ini merupakan variabel global yang berisi “Abi”
print("$nama");
print("<br>");
print( testvar() );
print("<br>");
print("$nama");
?>
</body>
</html>
Gambar 2.34 Tampilan program variabelglobal.php
II.6.3 Variabel Statis
Variabel yang hanya dapat diakses oleh fungsi yang telah mendeklarasikan dan isinya tidak akan
hilang saat eksekusi fungsinya berakhir, sehingga akan tetap dikenali pada pemanggilan fungsi pada
tahap berikutnya dengan isi variabelnya sesuai, isi terakhir fungsi di eksekusi.
54
Contoh programnya : (VariabelStatis.php)
<html>
<head>
<title>Contoh Variabel Statis</title>
</head>
<body>
<?php
function penurunan()
{
static $angka = 5; //$angka merupakan variabel statis, yang isinya = 5
return $angka--; //nilai balik pada fungsi “penurunan”, dimana isi variabel angka dikurangi 1
}
printf("%d <br>\n", penurunan());
printf("%d <br>\n", penurunan());
printf("%d <br>\n", penurunan());
printf("%d <br>\n", penurunan());
printf("%d <br>\n", penurunan());
?>
</body>
</html>
Gambar 2.35 Tampilan program variabelstatis.php
II.7 Fungsi untuk mengkonversi tipe data
Tabel berikut ini berisi fungsi-fungsi untuk mengkonversi tipe data :
Tabel 2.8 Fungsi konversi tipe data
Fungsi
doubleval
intval
strval
Keterangan
Mengkonversi ke dalam nilai bertipe double berdasarkan nilai argumennya.
Formatnya : doubleval (argument/variabel).
Mengkonversi ke dalam nilai bertipe integer berdasarkan nilai argumennya.
Formatnya : intval (argument/variabel).
Mengkonversi ke dalam nilai bertipe string berdasarkan nilai argumennya.
Formatnya : strval (argument/variabel).
Contoh programnya : (FungsiKonversi.php)
<html>
<head>
<title>Contoh Fungsi untuk Mengkonversi Tipe Data</title>
</head>
<body>
<?php
$data1 = 27.25;
$data2 = "27.75 persen";
$data3 = 2002;
55
$data4 = "STMIK Akakom";
printf("<b>Tipe data1 ( $data1 ) adalah : %s <br>\n",
gettype($data1));
printf("<b>Data1 dikonversi ke Integer menjadi : %s <br>\n",
intval($data1));
printf("Tipe data2 ( $data2 ) adalah : %s <br>\n",
gettype($data2));
printf("Data2 dikonversi ke double menjadi : %s <br>\n",
doubleval($data2));
printf("Tipe data3 ( $data3 ) adalah : %s <br>\n",
gettype($data3));
printf("Data3 dikonversi ke string menjadi : %s <br>\n",
strval($data3));
printf("Tipe data4 ( $data4 ) adalah : %s <br>\n",
gettype($data4));
printf("Data3 dikonversi ke integer menjadi : %s <br>\n",
intval($data4));
$data3=strval($data3);
printf("Data1 + Data2: %s <br>\n", ($data1 + $data2));
printf("Data1 + Data3: %s <br>\n", ($data1 + $data3));
printf("Data3 + Data4: %s <br>\n", ($data3 + $data4));
?>
</body>
</html>
Gambar 2.36 Tampilan program fungsikonversi.php
II.8 Fungsi-fungsi lainnya
Tabel berikut ini berisi fungsi-fungsi yang lain pada PHP :
Tabel 2.9 Fungsi-fungsi lainnya
Fungsi
empty
isset
unset
Keterangan
Untuk mengetahui elemen variabel, kosong atau tidak. Formatnya : empty (variabel).
Untuk mengetahui elemen variabel, ada atau tidak. Formatnya : isset (variabel).
Untuk menghapus elemen variabel. Formatnya : unset (variabel).
Contoh programnya : (FungsiLain.php)
<html>
<head>
<title>Contoh Fungsi-fungsi Lainnya</title>
</head>
56
<body>
<?php
function ya_atau_tidak($par)
{
if ($par)
return "ya";
else
return "tidak";
}
// Mengecek isi variabel nama
$isi = isset($nama);
printf("1. Apakah isinya ada ? %s<br>\n", ya_atau_tidak($isi));
$nama = "Sari";
$isi = isset($nama);
printf("2. Apakah isinya ada ? %s<br>\n", ya_atau_tidak($isi));
// Mengecek apakah kosong
$isi = empty($nama);
printf("3. Apakah isinya kosong ? %s<br>\n", ya_atau_tidak($isi));
// Menghapus isi variabel nama
unset($nama);
// Mengecek isi variabel nama
$isi = isset($nama);
printf("4. Apakah isinya ada ? %s<br>\n", ya_atau_tidak($isi));
// Mengecek apakah kosong
$isi = empty($nama);
printf("5. Apakah isinya kosong ? %s<br>\n", ya_atau_tidak($isi));
?>
</body>
</html>
Gambar 2.37 Tampilan program fungsilain.php
II.9 Operasi String
Disini akan mempelajari operator-operator untuk memanipulasi string, misalnya : menggabungkan 2
buah string dan untuk memvalidasi keabsahan alamat email.
II.9.1 Operator . dan .=
Operator . berfungsi untuk mengabungkan 2 buah string demikian juga untuk operator .= fungsinya
sama dengan operator ..
Contoh programnya : (OperatorGabung.php)
<html>
<head>
<title>Contoh Penggabungan String</title>
</head>
57
<body>
<?php
$kata = "Selamat";
printf("<b>$kata<br>");
$kalimat = $kata . " " . "Datang,";
printf("$kalimat<br>");
$kalimat .= " di STMIK AKAKOM"; // identik dengan $kalimat = $kalimat . " di STMIK AKAKOM";
printf("$kalimat<br>");
$kalimat = $kalimat . " Yogyakarta";
printf("$kalimat");
?>
</body>
</html>
Gambar 2.38 Tampilan program operatorgabung.php
II.9.2 Menampilkan string.
Untuk menampilkan keluaran pada web browser dapat menggunakan print, printf atau echo, dengan
format string sebagai berikut :
Formatnya : printf (format_string, argument . . .);
Ket : Format_string : untuk menentukan format argumen, dalam tampilan web browser.
Argument : berisi data yang akan ditampilkan.
Tabel 2.10 Format string, yang digunakan dalam fungsi printf
Kode
d
b
o
X
x
c
s
f
%
Keterangan
Bilangan bulat
Bilangan biner bulat
Bilangan octal (berbasis 8)
Bilangan heksadesimal (berbasis 16), dimana huruf dinyatakan dalam huruf besar.
Bilangan heksadesimal (berbasis 16), dimana huruf dinyatakan dalam huruf kecil.
Karakter yang nilai ASCII-nya dinyatakan dalam argument string.
String
Bilangan double (real)
Tanda % tidak perlu ada argumen
Contoh programnya : (FormatString.php)
<html>
<head>
<title>Contoh Format Tampilan Data</title>
</head>
<body>
58
<?php
$data = "58.8 kilometer";
printf("format d : <b>%d</b> <br>\n", $data);
printf("format b : <b>%b</b> <br>\n", $data);
printf("format o : <b>%o</b> <br>\n", $data);
printf("format X : <b>%X</b> <br>\n", $data);
printf("format x : <b>%x</b> <br>\n", $data);
printf("format c : <b>%c</b> <br>\n", $data);
printf("format s : <b>%s</b> <br>\n", $data);
printf("format f : <b>%.3f</b> <br>\n", $data);
?>
</body>
</html>
Gambar 2.39 Tampilan program formatstring.php
II.9.3 Memperoleh panjang atau jumlah karater pada suatu string.
Untuk memperoleh jumlah karater pada suatu string menggunakan fungsi strlen.
Formatnya : strlen (string);
Ket : hasil dari fungsi ini adalah jumlah karater dari string.
Contoh programnya : (PanjangString.php)
<html>
<head>
<title>Contoh Memperoleh Panjang String</title>
</head>
<body>
<?php
$data = "Akakom";
$a =strlen ("$data");
$b =strlen ("STMIK Akakom");
printf ("$a<br>");
printf ("$b<br>");
?>
</body>
</html>
59
Gambar 2.40 Tampilan program panjangstring.php
II.9.4 Mengubah huruf kecil menjadi huruf kapital atau sebaliknya.
Untuk mengubah menjadi huruf kecil menggunakan fungsi strtolower sedangkan untuk mengubah
menjadi huruf kapital menggunakan fungsi strtoupper.
Formatnya : strtolower (string); dan strtoupper (string);
Contoh programnya : (MengubahHuruf.php)
<html>
<head>
<title>Contoh Mengubah Huruf Menjadi Kecil atau Besar</title>
</head>
<body>
<?php
$data = "STMIK Akakom Yogyakarta";
$a =strtolower ("$data");
$b =strtoupper ("$data");
printf ("$data<br>");
printf ("$a<br>");
printf ("$b<br>");
?>
</body>
</html>
Gambar 2.41 Tampilan program mengubahhuruf.php
II.9.5 Menampilkan bagian tertentu dari suatu string.
Untuk mengambil atau menampilkan bagian tertentu dari suatu string dapat menggunakan fungsi
substr.
Formatnya : substr (string, parameter awal, parameter akhir );
Ket : jika parameter awal, tidak menggunakan tanda negatif, ini menunjukkan awal peng-ambilan
karakter (karakter awal dari string sama dengan 0) dan jika menggunakan tanda negatif, berarti
pengambilan karakter dimulai dari akhir string (karakter akhir dari string sama dengan -1),
sebanyak nilai dari parameter awal, jika parameter akhir, tidak menggunakan tanda negatif, ini
60
menunjukkan jumlah pengambilan karakter dan jika menggunakan tanda negatif, ini
menunjukkan akhir pengambilan karakter dan peng-ambilan karakter dimulai dari akhir string
(karakter akhir dari string sama dengan -1), sebanyak nilai dari parameter akhir.
Contoh programnya : (SubString.php)
<html>
<head>
<title>Contoh Menampilkan Bagian Tertentu dari Suatu string </title>
</head>
<body>
<?php
$data =("STMIK Akakom Yogyakarta");
$substring1=substr($data,12);
$substring2=substr($data,6,6);
$substring3=substr($data,-17,12);
$substring4=substr($data,-23,-10);
$substring5=substr($data,6,-5);
print ("<b>$data<br>");
print ("$substring1<br>");
print ("$substring2<br>");
print ("$substring3<br>");
print ("$substring4<br>");
print ("$substring5<br>");
?>
</body>
</html>
Gambar 2.42 Tampilan program substring.php
II.9.6 Mengganti bagian tertentu dari suatu string.
Untuk mengganti bagian tertentu dari suatu string dapat menggunakan fungsi substr_replace.
Formatnya : substr_replace (string, variabel_pengganti, parameter awal, parameter akhir );
Ket : variabel_pengganti digunakan untuk menganti substring yang diambil berdasarkan parameter
awal dan parameter akhir.
Contoh programnya : (ReplaceSubString.php)
<html>
<head>
<title>Contoh Mengganti Bagian Tertentu dari Suatu String </title>
</head>
<body>
<?php
61
$data=("STMIK Akakom Yogyakarta");
$pengganti= ("YES");
$pengganti1=substr_replace($data,$pengganti,12);
$pengganti2=substr_replace($data,$pengganti,6,6);
$pengganti3=substr_replace($data,$pengganti,-17,12);
$pengganti4=substr_replace($data,$pengganti,-23,-10);
$pengganti5=substr_replace($data,$pengganti,6,-5);
print ("<b>$data<br>");
print ("$pengganti1<br>");
print ("$pengganti2<br>");
print ("$pengganti3<br>");
print ("$pengganti4<br>");
print ("$pengganti5<br>");
?>
</body>
</html>
Gambar 2.43 Tampilan program replacesubstring.php
II.9.7 Mengetahui jumlah karakter suatu substring dalam suatu string.
Untuk mengetahui jumlah karakter suatu substring dalam suatu string, dapat menggunakan fungsi
substr_count.
Formatnya : substr_count (string, substring);
Contoh programnya : (JumlahSubString.php)
<html>
<head>
<title>Contoh Mengetahui Jumlah Suatu Substring dari Suatu String </title>
</head>
<body>
<?php
$data=("STMIK Akakom Yogyakarta");
$jumlah1=substr_count($data,"k");
$jumlah2=substr_count($data,"K");
$jumlah3=substr_count($data,"ka");
$jumlah4=substr_count($data,"YES");
print ("<b>$data</b><br>");
print ("Jumlah huruf <b>k</b> : $jumlah1<br>");
print ("Jumlah huruf <b>K</b> : $jumlah2<br>");
print ("Jumlah kata <b>ka</b> : $jumlah3<br>");
print ("Jumlah kata <b>YES</b> : $jumlah4<br>");
?>
</body>
</html>
62
Gambar 2.44 Tampilan program jumlahsubstring.php
II.9.8 Mengecek suatu string dengan menggunakan format tertentu.
Untuk mengecek suatu string dengan menggunakan format tertentu, dapat menggunakan fungsi erg.
Formatnya : erg (format, sumber);
Ket : format digunakan sebagai pola untuk mengecek sumber, misalnya : .+ berarti karakter apa saja
dan berapapun jumlahnya dan \. berarti harus ada titik.
Contoh programnya : (CekString.php)
<html>
<head>
<title>Contoh Pemeriksaan Alamat E-Mail</title>
</head>
<body>
<form>
Masukkan E-mail Anda:
<input type=text name=email><br><br>
<input type=submit value="Cek">
</form>
<?php
if (isset($email))
if (empty($email))
print("Email Belum Anda Isikan...!<br>\n");
else
{
// cek e-mail
if (ereg(".+@.+\..+$", $email))
print("Penulisan Alamat E-mail $email valid <br>\n");
else
print("Penulisan Alamat E-mail $email tidak valid <br>\n");
}
?>
</body>
</html>
63
Gambar 2.45 Tampilan program cekstring.php
II.9.9 Memecah suatu string menjadi array.
Untuk memecah suatu string menjadi array, dapat menggunakan fungsi split.
Formatnya : split (pemisah, sumber);
Ket : pemisah adalah suatu karakter yang digunakan sebagai pemisah dalam sumber.
Contoh programnya : (MemecahString.php)
<html>
<head>
<title>Contoh Memecah Suatu String Menjadi Array</title>
</head>
<body>
<?php
$data = "AKAKOM";
print("$data adalah string yang akan dipecah dengan pemisah <b>K</b>, hasilnya :<br>");
$pembatas = "K";
$karakter =split($pembatas, $data);
for ($j = 0; $j < count($karakter); $j++)
{
print("Karakter ke-$j, adalah : <b>$karakter[$j]</b><br>");
}
?>
</body>
</html>
Gambar 2.46 Tampilan program memecahstring.php
II.10 Enkripsi Data.
Biasa digunakan untuk menangani data yang bersifat rahasia misalnya : password. Enkripsi adalah
proses pengaburan suatu data (password), ke dalam bentuk lain yang tidak mudah ditebak. Contoh
fungsi enkripsi data : crypt dan crc32.
64
Formatnya : crypt (string, pengenkripsi) dan crc32 (string);
Ket : string adalah berisi data/password yang akan di enkripsi, pengenkripsi berfungsi sebagai
pengatur pengenkripsian.
Contoh programnya : (EnkripsiData.php)
<html>
<head>
<title>Contoh crypt dan crc32 untuk Menangani Password</title>
</head>
<body>
<form method=post>
Nama Pemakai : <input type=text name=nama><br>
Password ke-1 : <input type=password name=password1><br>
Password ke-2 : <input type=password name=password2><br>
<input type=submit value="Login">
</form>
<?php
if (isset($password1)and($password2))
{
$validasipwd1 = crypt("kucing",ok);
$validasipwd2 = crc32("macan");
$hasil1 = crypt($password1,ok);
$hasil2 = crc32($password2);
if (($validasipwd1 == $hasil1)and($validasipwd2 == $hasil2))
{
print("Password Benar...!<br>");
print("Anda Masuk dengan User : <b>$nama</b><br>");
print("Password ke-1-nya : <b>$password1</b><br>");
print("Hasil Fungsi crypt terhadap Password ke-1 adalah :$hasil1<br>");
print("Password ke-2-nya : <b>$password2</b><br>");
print("Hasil Fungsi crc32 terhadap Password ke-2 adalah :$hasil2<br>");
}
else
{
print("Password Salah<br>");
print("Anda Masuk dengan User : <b>$nama</b><br>");
print("Password ke-1 yang Dimasukkan : <b>$password1</b> Salah..!<br>");
print("Password ke-2 yang Dimasukkan : <b>$password2</b> Salah..!<br>");
}
}
?>
</body>
</html>
65
Gambar 2.47 Tampilan program enkripsidata.php
II.11 Pernyataan Include.
Digunakan untuk menyertakan isi file yang berupa suatu skrip pada file lainnya.
Formatnya : include (nama_file);
Ket : nama_file adalah nama file yang akan disertakan ke dalam skrip yang meng-include-kan.
Contoh programnya : (Include.php & Meng-include-kan.php)
1. File yang di-include-kan (Include.php).
<?php
print("<b><i>Jumlah Kelas Belum Berubah :</i></b><br>\n");
if (isset($jkti) and isset($jkmi))
{
print("Jumlah Kelas TI = $jkti<br>\n");
print("Jumlah Kelas MI = $jkmi<br>\n");
}
$jkti = 6;
$jkmi = 4;
print("<b><i>Jumlah Kelas Sudah Berubah :</i></b><br>\n");
print("Jumlah Kelas TI = $jkti<br>\n");
print("Jumlah Kelas MI = $jkmi<br>\n");
?>
2. File yang meng-include-kan(Meng-include-kan.php)
<html>
<head>
<title>Contoh Penggunaan Include</title>
</head>
<body>
<?php
$jkti = 3;
$jkmi = 5;
print("<b>Jumlah Kelas Awal :</b><br>\n");
print("Jumlah Kelas TI = $jkti<br>\n");
print("Jumlah Kelas MI = $jkmi<br>\n");
include("ubahjumlah.php");
print("<b>Jumlah Kelas Akhir :</b><br>\n");
print("Jumlah Kelas TI = $jkti<br>\n");
print("Jumlah Kelas MI = $jkmi<br>\n");
66
?>
</body>
</html>
Gambar 2.48 Tampilan program meng-include-kan.php
Bab III. Database MySQL
Menyimpan data dalam file biasa memiliki banyak keterbatasan. Semakin besar ukuran file,
pencarian data menjadi lebih sulit. File biasa juga tidak memiliki kemampuan untuk mengolah data,
misalnya menghitung total nilai, rata-rata, dan lain sebagainya. Dan yang lebih penting, adanya
keterbatasan untuk mengendalikan akses terhadap data. Kita tidak dapat menentukan siapa yang boleh
dan siapa yang tidak boleh mengakses data. Siapa yang boleh membaca dan tidak boleh menulis, dan
sebagainya. Karena itu, sekarang kita akan menggunakan media penyimpanan data yang lebih
mutakhir, yaitu database. Operasi data dalam database umumnya mengikuti pola yang sama, yaitu
melalui rangkaian langkah sebagai berikut :
1. Membuka sambungan dengan database server.
2. Memilih dan membuka database yang diinginkan .
3. Mengirim perintah untuk mengambil/mengubah/menghapus data..
4. Mengakses hasil pengambilan data .
5. Mengakhiri sambungan .
III.1 Menjalankan Server MySQL
Untuk dapat menjalankan server MySQL, tentunya terlebih dahulu server MySQL telah terinstal
terlebih dahulu. Pada contoh ini menggunakan PHPTriad dimana server MySQL-nya secara
otomatis juga sudah terinstal, adapun langkah-langkahnya adalah sebagai berikut :
67
1. Jalankan Command Prompt, dan berikan perintah berikut ini : cd c:\apache\mysql\bin, maka
anda akan menjumpai prompt berikut ini : C:\apache\mysql\bin >__
Gambar 3.1 Tampilan prompt kerja dari MYSQL
2. Menjalankan
file
winmysqladmin.exe,
dengan
cara
memanggilnya
di
prompt
(C:\apache\mysql\bin >winmysqladmin) kemudian tekan <Enter>.
Gambar 3.2 Tampilan untuk menjalankan winmysqladmin
File ini berfungsi untuk memberikan user name dan password hanya pada saat pertamakali
MySQL dijalankan kemudian akan membuat konfigurasi dan perubahan pada file my.ini yang ada
di windows. File ini cukup dijalankan sekali saja, untuk selanjutnya setiap komputer menjalankan
windows maka secara otomatis akan mengeksekusi file winmysqladmin.exe.
3. Langkah selanjutnya mengisikan user name dan password pada kotak dialog WinMySQLAdmin
Quick Setup, misalnya : user name : Adiexs dan password : Kucing, lalu klik OK.
Gambar 3.3 Tampilan kotak dialog WinMySQLAdmin Quick Setup
Pengisihan ini, akan menjadikan user name dan password yang telah diberikan terdaftar pada
server MySQL. Bila tidak diisikan user name dan password-nya, konfigurasi file my.ini tidak
akan mendeteksi direktori utama dan direktori MySQL.
68
4. Setelah diklik tombol OK, maka pada toolbar kanan bawah akan muncul icon seperti lampu
.
traffic light
5. Langkah selanjutnya adalah mengaktifkan database server MySQL, dengan cara klik icon
dan
akan muncul menu pull-down kemudian pilih menu Show me.
Gambar 3.4 Tampilan menu Show me
Kemudian akan muncul kotak dialog WinMySQLadmin 1.0 yang berarti bahwa database server
MySQL telah aktif. Kotak dialog ini berfungsi untuk mengkonfigurasi database server MySQL,
misalnya : konfigurasi my.ini, environment, database dan lain-lain.
Gambar 3.5 Tampilan kotak dialog WinMySQLAdmin 1.0
6. Langkah berikutnya adalah mengecek apakah database server MySQL, telah siap untuk diakses
dengan cara :
-
Jalankan Command Prompt
cd
c:\apache\mysql\bin,
maka
di
Windows, dan berikan perintah berikut ini :
anda
akan
menjumpai
prompt
berikut
ini
:
C:\apache\mysql\bin >mysql.
-
Maka kemudian akan muncul ucapan selamat datang di MySQL, yang berarti kita telah
dapat mengakses database server MySQL. Untuk kembali ke prompt DOS berikan
perintah exit.
69
Gambar 3.6 Tampilan ucapan selamat datang dari MySQL
7. Untuk menonaktifkan, dapat dilakukan dengan cara klik icon
dan akan muncul menu pull-
down kemudian pilih menu Win NT , lalu sub menu ShutDown this Tool.
Gambar 3.7 Tampilan menu ShowDown MySQL
III.2 Penggunaan perintah-perintah SQL pada server MySQL
Setelah selesai mejalankan langkah-langkah diatas, yaitu sampai langkah ke-7 berarti kita telah dapat
mengaktifkan database server MySQL dan dapat menggunakannya dengan cara memberikan perintah
mysql (C:\apache\mysql\bin >mysql).
III.2.1 Melihat daftar database
Perintahnya : show databases;
Gambar 3.8 Tampilan daftar database
Menunjukkan server MySQL, defaultnya telah mempunyai 2 database yaitu : mysql dan test.
III.2.2 Koneksi ke database
Agar dapat memanipulasi suatu database, maka terlebih dahulu harus konek-si ke database tersebut.
Perintahnya : use (nama_database);, misalnya : use mysql; dan use test;
Gambar 3.9 Tampilan konek ke database mysql
Tanggapan Database changed ,menunjukkan koneksi ke database mysql telah dilakukan.
III.2.3 Mengetahui nama-nama tabel dari suatu database
Perintahnya : show tables;
Gambar 3.10 Tampilan tabel-tabel pada database mysql
70
Tampilan ini menunjukkan nama-nama tabel yang terdapat pada database mysql, yaitu columns_priv,
database, host, tables_priv dan user.
III.2.4 Mengetahui struktur dari suatu tabel
Perintahnya : describe (nama_tabel); misalnya : describe user; dan describe host;
Gambar 3.11 Tampilan struktur dari tabel user
Tampilan ini menunjukkan nama-nama field dari tabel user yang terdapat pada database mysql,
yaitu :
a. Host, nama host tempat pemakai melakukan perintah.
b. User, nama pemakai.
c. Password, password pemakai.
d. Select_priv, digunakan untuk menyatakan pemakai dapat menampilkan data pada suatu tabel
atau tidak (SELECT). N berarti tidak bisa dan Y berarti bisa.
e. Insert_priv, digunakan untuk menyatakan pemakai dapat memasukkan data baru pada suatu
tabel atau tidak (INSERT). N berarti tidak bisa dan Y berarti bisa.
f. Update_priv, digunakan untuk menyatakan pemakai dapat memodifikasi data pada suatu
tabel atau tidak (UPDATE). N berarti tidak bisa dan Y berarti bisa.
g. Delete_priv, digunakan untuk menyatakan pemakai dapat menghapus data pada suatu tabel
atau tidak (DELETE). N berarti tidak bisa dan Y berarti bisa.
h. Create_priv, digunakan untuk menyatakan pemakai dapat menciptakan database/tabel atau
tidak. N berarti tidak bisa dan Y berarti bisa.
i. Drop_priv, digunakan untuk menyatakan pemakai dapat menghapus database/tabel atau
tidak. N berarti tidak bisa dan Y berarti bisa.
j. Reload_priv, digunakan untuk menyatakan pemakai dapat menerapkan perubahan
konfigurasi pada database server MySQL atau tidak. N berarti tidak bisa dan Y berarti bisa.
71
k. Shutdown_priv, digunakan untuk menyatakan pemakai dapat mematikan database server
MySQL atau tidak. N berarti tidak bisa dan Y berarti bisa.
l. Proses_priv, digunakan untuk menyatakan pemakai dapat melihat suatu proses yang terjadi
pada database server MySQL atau tidak. N berarti tidak bisa dan Y berarti bisa.
m. File_priv, digunakan untuk menyatakan pemakai dapat membaca dan menulis file pada
database server MySQL atau tidak. N berarti tidak bisa dan Y berarti bisa
n. Grant_priv, digunakan untuk menyatakan pemakai dapat memberikan izin wewenang ke
pemakai lain atau tidak. N berarti tidak bisa dan Y berarti bisa.
o. References_priv, untuk sementara belum digunakan.
p. Index_priv, digunakan untuk menyatakan pemakai dapat melakukan instruksi menciptakan
dan menghapus indeks pada suatu tabel atau tidak. N berarti tidak bisa dan Y berarti bisa.
q. Alter_priv, digunakan untuk menyatakan pemakai dapat mengubah struktur tabel atau tidak.
N berarti tidak bisa dan Y berarti bisa, dan lain-lain.
III.2.5 Mengetahui isi dari suatu tabel
Perintahnya : select * from (nama_tabel); misalnya : select * from user; dan select * from db;
(sebelum menjalankan perintah ini terlebih dahulu harus mengkoneksikan ke database yang berisi
tabel yang isinya akan dilihat).
Gambar 3.12 Tampilan isi dari tabel user
Arti perintah select * from user; diatas adalah akan menampilkan isi semua field/kolom yang
terdapat pada tabel user.
Contoh perintah lainnya : select Host, User, Password from user;, hasilnya dapat dilihat pada
gambar dibawah ini :
72
Gambar 3.13 Tampilan isi dari tabel user pada field host,user dan password
Pada tabel user diatas dapat diketahui beberapa hal berikut ini :
-
Nilai % pada field Host, berarti sembarang host.
-
Nilai kosong pada field Password, berarti user yang mempunyai password kosong dapat
mengakses database tanpa memberi password.
-
Field Host yang berisi localhost, berarti komputer lokal tempat database server MySQL.
-
User Adiexs merupakan user name yang kita isikan pertama kali pada waktu
mengaktifkan database server MySQL, sedangkan pada field Password berisi hasil
enkripsi password yang kita masukkan yaitu Kucing.
Dari beberapa hal diatas dapat disimpulkan bahwa : siapa saja dan dimanapun saja dapat mengakses
database server MySQL tersebut tanpa memberikan password. Untuk itu demi keamanan maka isi
tabel user tersebut perlu dirubah dengan menghapus beberapa user dan memberikan password pada
user root.
III.2.6 Menghapus user (pemakai)
Perintahnya : delete from (nama_tabel) where (kondisi); misalnya : delete from user where User =
’ ‘; (sebelum menjalankan perintah ini terlebih dahulu harus mengkoneksikan ke database yang berisi
tabel yang isinya akan dilihat).
Gambar 3.14 Tampilan perintah menghapus isi tabel user pada field user yang isinya kosong
Tampilan ini menunjukkan perintah query telah dijalankan dan ada 2 baris record yang dihapus,
Maka jika dicek dengan perintah : select Host, User, Password from user; isi tabel user menjadi :
Gambar 3.15 Tampilan isi dari tabel user pada field host,user dan password setelah isi tabel user didelete
Dari tampilan diatas diatas dapat disimpulkan bahwa : user yang dapat mengakses database server
MySQL tersebut hanya user root dan Adiexs tetapi untuk user root boleh mengakases tanpa
memberikan password. Untuk itu demi keamanan maka user root perlu diberi password.
73
III.2.7 Mengisikan password untuk user root
Perintahnya : update (nama_tabel) set (nama_field = isi_data) where (kondisi); misalnya : update
user set Password=password(‘Angsa’) where User=’root’;.
Gambar 3.16 Tampilan perintah meng-update isi tabel user
Tampilan ini menunjukkan perintah query telah dijalankan dan ada 2 baris record yang di-update.
Maka jika dicek dengan perintah : select Host, User, Password from user; isi tabel user menjadi :
Gambar 3.17 Tampilan isi dari tabel user pada field host,user dan password setelah isi tabel user diupdate
Dari tampilan diatas diatas dapat disimpulkan bahwa : user yang dapat mengakses database server
MySQL tersebut hanya user root dan Adiexs tetapi untuk user root boleh mengakses di host mana
saja sedangkan user Adiexs hanya boleh di localhost dan kedua user harus memasukkan passwordnya masing-masing (Angsa dan Kucing), dimana password yang tertampil pada tabel user diatas
telah dienkripsi.
III.2.8 Mengaktifkan konfigurasi atau perubahan
Perintahnya : flush privileges;. Tanpa memberikan perintah ini, maka semua perubahan yang telah
dilakukan pada database tidak akan berpengaruh, sehingga setiap selesai mengkonfigurasi maka
perintah flush privileges; ini harus dijalankan.
Gambar 3.18 Tampilan perintah untuk mengaktifkan konfigursi database
Tampilan diatas menunjukkan, bahwa perintah konfigurasi atau perubahan telah dijalankan, langkah
selanjutnya adalah mencoba perubahan yang telah dilakukan.
III.2.9 Mencoba perubahan yang telah diberikan.
-
Keluarlah dari prompt MySQL dengan memberikan perintah exit.
Gambar 3.19 Tampilan perintah keluar dari prompt MySQL
-
Cobalah masuk kembali ke database server MySQL dengan memberikan perintah mysql.
Gambar 3.20 Tampilan perintah masuk ke prompt MySQL tanpa user dan password
74
Terbukti bahwa jika ada seseorang yang akan masuk tanpa menggunakan user dan password yang
ada pada tabel user, maka tidak akan dapat masuk ke database server MySQL. Sehingga untuk
masuk ke database server MySQL gunakan user yang ada dalam tabel user , misalnya menggunakan
user root maka perintahnya adalah : mysql -u root –p, lalu masukkan password-nya : Angsa, maka
kita akan dapat masuk ke database server MySQL.
Gambar 3.21 Tampilan perintah masuk ke prompt MySQL dengan user dan password
III.3 Membuat database dan table pada server MySQL.
III.3.1 Membuat database
Perintahnya : create database (nama_database); misalnya : create database DataMahasiswa;
Gambar 3.22 Tampilan perintah membuat database DataMahasiswa
Kemudian cek dengan memberikan perintah : show databases;
Gambar 3.23 Tampilan perintah melihat database pada server MySQL
Dari tampilan terlihat sudah ada database baru yaitu : DataMahasiswa.
III.3.2 Membuat tabel
Sebelum memberikan perintah pembuatan tabel terlebih dahulu kita aktifkan database yang akan
menyimpan table tersebut, misalnya : database DataMahasiswa, dengan perintah : use
DataMahasiswa ;
Gambar 3.24 Tampilan perintah untuk mengaktifkan database DataMahasiswa
Setelah itu berikan perintah pembuatan tabel : create table (nama_tabel) (nama-nama fieldnya dan
tipenya); misalnya : create table Datapribadi (NIM int(9) primary key, Nama varchar(25), Kota
varchar(15), Telepon vachar(10));
Gambar 3.25 Tampilan perintah untuk membuat tabel Datapribadi dengan field-fieldnya
Perintah diatas akan membuat suatu tabel dengan nama Datapribadi yang mempunyai field sebagai
berikut :
75
-
NIM, memiliki tipe data integer serta dapat diisi maksimal 9 karakter angka dan field
NIM ini sebagai primary key bagi tabel datapribadi.
-
Nama, memiliki tipe data variabel dan karakter serta dapat diisi maksimal 25 variabel atau
karakter.
-
Kota, memiliki tipe data variabel dan karakter serta dapat diisi maksimal 15 variabel atau
karakter.
-
Telepon, memiliki tipe data variabel dan karakter serta dapat diisi maksimal 10 variabel
atau karakter.
Untuk mengecek apakah tabelnya sudah terbuat berikan perintah : show tables;
Gambar 3.26 Tampilan perintah melihat tabel-tabel pada database DataMahasiswa
Tampilan diatas menunjukkan dalam database DataMahasiswa, hanya ada 1 tabel yaitu tabel
datapribadi. Sedangkan untuk melihat struktur tabelnya berikan perintah : describe datapribadi;
Gambar 3.27 Tampilan perintah melihat struktur tabel datapribadi
III.3.3 Memasukkan data pada tabel
Perintahnya
:
insert
into
datapribadi
values
(35410125,’Indah
Wulan
Sari’,
‘Tasikmalaya’,’0257765241’);
Gambar 3.28 Tampilan perintah memasukan data pada tabel datapribadi
Perintah diatas akan memasukkan data ke tabel datapribadi
dan mengisi field NIM dengan
35410125, Nama dengan Indah Wulan Sari, Kota dengan Tasikmalaya dan Telepon dengan
0257765241. Cobalah untuk memasukkan data lainya dengan perintah berikut ini :
insert into datapribadi values (35410120,’Abi Saputra’, ‘Bekasi’,’0218893705’);
insert into datapribadi values (35410155,’Fafa Indrajaya’, ‘Jakarta’, ’0218865344’);
insert into datapribadi values (35410425,’Febtyana Sudihartini’, ‘Bogor’,’025157241’);
III.3.4 Menampilkan data pada tabel
Perintahnya : select * from datapribadi; perintah ini berarti akan menampilkan semua data yang ada
di tabel datapribadi.
76
Gambar 3.29 Tampilan perintah menampilkan isi data pada tabel datapribadi
III.3.5 Menghapus data pada tabel
Perintahnya : delete from datapribadi where Nama =’Abi Saputra’; perintah ini berarti akan
menghapus record yang field Nama-nya berisi Abi Saputra.
Gambar 3.30 Tampilan perintah menghapus record pada tabel datapribadi
Cek dengan perintah : select * from datapribadi;
Gambar 3.31 Tampilan perintah menampilkan isi data pada tabel datapribadi setalah dilakukan penghapusan
III.3.6 Merubah data pada tabel
Perintahnya : update datapribadi set Nama=’Indah Wulansari’,Kota=’Yogyakarta’ where NIM
=35410125; perintah ini berarti akan merubah data mahasiswa yang NIM =35410125 dimana isi field
Nama dirubah menjadi Indah Wulansari dan Kota dirubah menjadi Yogyakarta.
Gambar 3.32 Tampilan perintah mengupdate record pada tabel datapribadi
Cek dengan perintah : select * from datapribadi;
Gambar 3.33Tampilan perintah menampilkan isi data pada tabel datapribadi setalah dilakukan update
III.3.7 Menampikan isi gabungan 2 tabel.
-
Langkah pertama membuat tabel baru, misalnya : DataOrtu.
Gambar 3.34 Tampilan perintah membuat tabel dataortu
-
Cek dengan perintah : show tables;
77
Gambar 3.35 Tampilan perintah melihat tabel-tabel pada database DataMahasiswa
-
Isikan data pada tabel dataortu dengan perintah :
Insert into dataortu values (35410120,’Panca Sanjaya’);
Insert into dataortu values (35410125,’Suhendra’);
Insert into dataortu values (35410155,’Joko Purnomo’);
Insert into dataortu values (35410425,’Bagus Sudiri’);
-
Cek dengan perintah : select * from dataortu;
Gambar 3.36 Tampilan perintah menampilkan isi pada tabel dataortu
-
Tampilkan isi gabungan 2 tabel datapribadi dan dataortu, dengan perintah : select
datapribadi.Nama,datapribadi.Kota,dataortu.NamaOrtu from datapribadi, dataortu
where datapribadi.NIM=dataortu.NIM order by datapribadi.Nama;
Gambar 3.37 Tampilan perintah menampilkan isi pada tabel datapribadi dan dataortu
III.3.8 Menghapus database dan table
Perintahnya : drop database (nama_database); misalnya : drop database DataMahasiswa; perintah
ini akan mengahapus database yang bernama DataMahasiswa. drop table (nama_tables); misalnya :
drop table datapribadi; perintah ini akan mengahapus tabel yang bernama datapribadi. Bilamana
telah diberikan 2 perintah diatas maka database DataMahasiswa dan tabel datapribadi telah
terhapus.
III.4 Fungsi-fungsi server MySQL
Merupakan fungsi yang digunakan untuk mengakses database MySQL yang diawali mysql_ :
III.4.1 Fungsi mysql_connect
Digunakan untuk melakukan koneksi ke database server MySQL, yang terdapat pada suatu host.
Formatnya : mysql_connect (nama_host, nama_user, password);
78
Ket :
¾
nama_host , menyatakan nama host tempat MySQL diinstal.
¾
nama_user, adalah nama pemakai yang diperbolehkan untuk koneksi dengan database
server MySQL.
¾
password, adalah password yang dimiliki oleh pemakai.
Nilai balik yang dihasilkan true (jika koneksi berhasil dilakukan) dan false (jika koneksi tidak
berhasil dilakukan).
Contoh : $konek = mysql_connect (‘localhost’,’Adiexs’,’Kucing’);
Perintah ini digunakan untuk membentuk koneksi ke database server MySQL yang terdapat pada
localhost dengan user Adiexs dan password = Kucing dan $konek sebagai pengenal hubungan.
III.4.2 Fungsi mysql_close
Digunakan untuk memutus koneksi ke database MySQL.
Formatnya : mysql_close (pengenal_hubungan);
Ket :
¾
pengenal_hubungan,
menyatakan
nama
pengenal
dari
pemanggilan
fungsi
mysql_connect.
Contoh : mysql_close ($konek);
Perintah ini digunakan untuk memutuskan koneksi terhadap database MySQL, yang mempunyai
nama pengenal_hubungan-nya adalah $konek.
Contoh programnya : (FungsiMySQLConnect.php).
<html>
<head>
<title>Koneksi ke Database MySQL</title>
</head>
<body>
<?php
$pemakai = "Adiexs";
$password = "Kucing";
$konek = mysql_connect("localhost",$pemakai,$password);
if ($konek)
print("Database MySQL dapat Terkoneksi<br>");
else
print("Database MySQL tidak dapat Terkoneksi<br>");
$putus = mysql_close($konek);
if ($putus)
print("Pemutusan Berhasil");
else
print("Pemutusan tidak Berhasil");
?>
</body>
</html>
79
Gambar 3.38 Tampilan program konekmysql.php
III.4.3 Fungsi mysql_select_db
Digunakan untuk memilih database yang ada di database server MySQL.
Formatnya : mysql_ select_db (nama_database, pengenal_hubungan);
Ket :
¾
nama_database, menyatakan nama database yang akan dipilih.
¾
pengenal_hubungan,
menyatakan
nama
pengenal
dari
pemanggilan
fungsi
mysql_connect.
Contoh : mysql_ select_db (DataMahasiswa, $konek);
Perintah ini digunakan untuk memilih database yang bernama DataMahasiswa, yang mempunyai
nama pengenal_hubungan-nya adalah $konek.
III.4.4 Fungsi mysql_query
Digunakan untuk menjalankan permintaan terhadap sebuah tabel atau sejumlah table.
Formatnya : mysql_ query (permintaan, pengenal_hubungan);.
Ket :
¾
permintaan, merupakan pernyataan SQL yang digunakan untuk mengakses tabel, dimana
tabel
yang
dapat
diakses
adalah
milik
database
yang
disebutkan
melalui
pemanggilan
fungsi
mysql_select_db.
¾
pengenal_hubungan,
menyatakan
nama
pengenal
dari
mysql_connect.
Contoh : mysql_ query (“select * from datapribadi”, $konek);
Perintah ini digunakan untuk menampilkan semua data yang ada di tabel datapribadi, dimana tabel
datapribadi ini terdapat dalam database yang bernama DataMahasiswa, yang mana database
DataMahasiswa ini telah dipilih sebelumnya dengan perintah mysql_ select_db (DataMahasiswa,
$konek); yang mempunyai nama pengenal_hubungan-nya adalah $konek.
III.4.5 Fungsi mysql_db_query
Digunakan untuk menjalankan permintaan terhadap sebuah database.
Formatnya : mysql_db_query (database,permintaan, pengenal_hubungan);
80
Ket :
¾
database, adalah nama database yang dipilih.
¾
permintaan, merupakan pernyataan SQL yang digunakan untuk mengakses tabel dari
database yang telah dipilih.
¾
pengenal_hubungan,
menyatakan
nama
pengenal
dari
pemanggilan
fungsi
mysql_connect.
Contoh
:
$hasilisitabel
=
mysql_db_query
("DataMahasiswa","select
*
from
datapribadi",$konek);
Perintah ini digunakan untuk memilih database yang bernama DataMahasiswa, kemudian akan
menampilkan semua data yang ada di tabel datapribadi, dimana tabel datapribadi ini terdapat
dalam database yang bernama DataMahasiswa, dengan yang nama pengenal_hubungan-nya
adalah $konek.
III.4.6 Fungsi mysql_num_rows
Digunakan untuk mendapatkan jumlah baris dari hasil permintaan yang menggunakan perintah
select.
Formatnya : mysql_num_rows (pengenal_hasil);
Ket :
¾
pengenal_hasil, adalah nama pengenal yang berisi hasil pemanggilan fungsi
mysql_query dan mysql_db_query.
Contoh : $jumbaris = mysql_num_rows($hasilisitabel);
Perintah ini akan menghasilkan jumlah baris dari hasil perintah select yang telah dijalankan
sebelumnya yang disimpan dalam pengenal_hasil $hasilisitabel.
III.4.7 Fungsi mysql_num_fields
Digunakan untuk mendapatkan jumlah baris dari hasil permintaan yang menggunakan perintah
select.
Formatnya : mysql_num_fields (pengenal_hasil);
Ket :
¾
pengenal_hasil, adalah nama pengenal yang berisi hasil pemanggilan fungsi
mysql_query dan mysql_db_query.
Contoh : $jumkolom = mysql_num_fields($hasilisitabel);
Perintah ini akan menghasilkan jumlah kolom dari hasil perintah select yang telah dijalankan
sebelumnya yang disimpan dalam pengenal_hasil $hasilisitabel.
81
III.4.8 Fungsi mysql_fetch_row
Digunakan untuk menghasilkan suatu array, yang terdiri dari seluruh isi kolom dan baris pada suatu
hasil permintaan. Fungsi ini mempunyai sifat akan membaca baris berikutnya dari hasil permintaan
dan menghasilkan nilai balik bilamana baris yang akan dibaca sudah tidak ada.
Formatnya : mysql_fetch_row (pengenal_hasil);
Ket :
¾
pengenal_hasil, adalah nama pengenal yang berisi hasil pemanggilan fungsi
mysql_query dan mysql_db_query.
Contoh : $array = mysql_fetch_row($hasilisitabel)
Perintah ini akan menghasilkan array, dari hasil perintah yang telah dijalankan sebelumnya yang
disimpan dalam pengenal_hasil $hasilisitabel.
Contoh programnya : (FungsiMySQLFecthRow.php).
<html>
<head>
<title>Menampilkan Isi Tabel dengan Query</title>
</head>
<body>
<?php
$pemakai = "Adiexs";
$password = "Kucing";
$konek = mysql_connect("localhost",$pemakai,$password);
if (! $konek)
print("Database MySQL tidak dapat Terkoneksi<br>");
$pilihDB = mysql_select_db(DataMahasiswa,$konek);
$hasilisitabel = mysql_query ("select * from datapribadi",$konek);
//$hasilisitabel = mysql_db_query ("DataMahasiswa","select * from datapribadi",$konek);
$jumbaris = mysql_num_rows($hasilisitabel);
print ("Jumlah Baris : $jumbaris<br>");
$jumkolom = mysql_num_fields($hasilisitabel);
print ("Jumlah Kolom : $jumkolom<br>");
While ($array = mysql_fetch_row($hasilisitabel))
{
print ("$array[0] || $array[1] || $array[2] || $array[3]<br>");
}
?>
</body>
</html>
Gambar 3.39 Tampilan program FungsiMySQLFecthRow.php
82
III.4.9 Fungsi mysql_affected_rows
Digunakan untuk mendapatkan jumlah baris dari permintaan yang menggunakan perintah insert,
delete dan update.
Formatnya : mysql_affected_rows (pengenal_hubungan);
Ket :
¾
pengenal_
hubungan,
menyatakan
nama
pengenal
dari
pemanggilan
fungsi
mysql_connect.
Contoh : $jumbaris = mysql_affected_rows($konek);
Perintah ini akan menghasilkan jumlah baris yang dikenai perintah insert, delete dan update yang
telah dijalankan sebelumnya.
Contoh programnya : (FungsiMySQLAffectedRows.php).
<html>
<head>
<title>Menampilkan Jumlah Baris dengan Query Insert, Delete dan Update</title>
</head>
<body>
<?php
$pemakai = "Adiexs";
$password = "Kucing";
$konek = mysql_connect("localhost",$pemakai,$password);
if (! $konek)
print("Database MySQL tidak dapat Terkoneksi<br>");
$pilihDB = mysql_select_db(DataMahasiswa,$konek);
/*$Masukkan = "insert into datapribadi(NIM,Nama,Kota,Telepon) values
('35410175','Indraguna','Wates','773425')";
$hasilisitabel = mysql_query ($Masukkan,$konek);*/
//$hasilisitabel = mysql_query ("update datapribadi set Nama='Indraguna,S.Kom',Kota='Yogyakarta'
where NIM = 35410185 ");
$hasilisitabel = mysql_query ("delete from datapribadi where NIM = 35410175");
if ($hasilisitabel)
print("Perintah dapat Dijalankan<br>");
else
print("Perintah tidak dapat Dijalankan<br>");
$jumbaris = mysql_affected_rows($konek);
print ("Jumlah Baris : $jumbaris<br>");
?>
</body>
</html>
Gambar 3.40 Tampilan program FungsiMySQLAffectedRows.php
III.4.10 Fungsi mysql_fetch_field
Digunakan untuk mendapatkan informasi suatu kolom, dimana nilai balik-nya berupa suatu objek.
83
Formatnya : mysql_fetch_field (pengenal_hasil, nomor_kolom);
Ket :
¾
pengenal_hasil, adalah nama pengenal yang berisi hasil pemanggilan fungsi
mysql_query dan mysql_db_query.
¾
nomor_kolom, menyatakan nomor kolom yang informasinya ingin didapatkan. Bila
nomor kolom tidak disebutkan, maka akan mengecek kolom dengan nomor kolom
dimulai dari 0 sampai nomor kolom terakhir.
Contoh : $hasilisikolom = mysql_fetch_field($hasil,0);
Perintah ini akan menghasilkan suatu objek $hasilisikolom, kemudian supaya mendapatkan informasi
maka objek ini harus diberi property antara lain :
Tabel 3.1 Properti dari suatu filed
Properti
not_null
primary_key
numeric
name
max_length
table
Keterangan
Bernilai 1 jika kolom tidak boleh kosong
Bernilai 1 jika kolom adalah primary key
Bernilai 1 jika kolom bertipe numerik
Nama kolom
Panjang maksimal kolom
Nama tabel milik kolom
Contoh programnya : (FungsiMySQLFetchField.php).
<html>
<head>
<title>Menampilkan Informasi Kolom</title>
</head>
<body>
<?php
$pemakai = "Adiexs";
$password = "Kucing";
$konek = mysql_connect("localhost",$pemakai,$password);
if (! $konek)
print("Database MySQL tidak dapat Terkoneksi<br>");
$pilihDB = mysql_select_db(DataMahasiswa,$konek);
$hasil = mysql_query ("select * from datapribadi",$konek);
if (! $hasil)
die("Permintaan tidak dapat Dijalankan");
$hasilisikolom = mysql_fetch_field($hasil,0);
$tidak_kosong = $hasilisikolom->not_null ? "Tidak": "Boleh";
$primary_key = $hasilisikolom->primary_key ? "Ya": "Tidak";
$Numerik = $hasilisikolom->numeric ? "Ya": "Bukan";
print("Nama kolom : <b>$hasilisikolom->name</b><br>");
print("Nama tabelnya : <b>$hasilisikolom->table</b><br>");
print("Panjang isi kolom : <b>$hasilisikolom->max_length</b><br>");
print("Apakah isinya boleh kosong : <b>$tidak_kosong</b><br>");
print("Apakah sebagai kunci primer: <b>$primary_key</b><br>");
print("Apakah tipenya numerik: <b>$Numerik</b><br>");
?>
</body>
</html>
84
Gambar 3.41 Tampilan program FungsiMySQLFetchField.php
III.4.11 Fungsi-fungsi untuk mendapatkan atribut suatu kolom
Tabel 3.2 Fungsi-fungsi untuk mendapatkan atribut suatu kolom
Nama Fungsi
mysql_field_name
mysql_field_len
mysql_field_flags
mysql_field_type
Keterangan
Menghasikan nama kolom.
Menghasilkan panjang maksimal kolom.
Menghasilkan flag kolom yang dimiliki oleh kolom yang dipilih,
misalnya : not_null dan primary_key.
Menghasikan tipe kolom misalnya : int dan string.
Formatnya : nama_fungsi (pengenal_hasil, nomor_kolom);
Ket :
¾
pengenal_hasil, adalah nama pengenal yang berisi hasil pemanggilan fungsi
mysql_query dan mysql_db_query.
¾
nomor_kolom, menyatakan nomor kolom yang informasinya ingin didapatkan.
Contoh : $Nama_kolom
= mysql_field_name($hasil, 2);
Perintah ini akan menghasilkan nama kolom dari hasil perintah yang telah dijalankan sebelumnya
yang disimpan dalam pengenal_hasil $hasil, yang mempunyai nomor kolom 2 (penomoran kolom
dimulai dari 0).
Contoh programnya : (FungsiMySQLFieldName.php).
<html>
<head>
<title>Menampilkan Informasi Kolom</title>
</head>
<body>
<?php
$pemakai = "Adiexs";
$password = "Kucing";
$konek = mysql_connect("localhost",$pemakai,$password);
if (! $konek)
print("Database MySQL tidak dapat Terkoneksi<br>");
$pilihDB = mysql_select_db(DataMahasiswa,$konek);
$hasil = mysql_query ("select * from datapribadi",$konek);
if (! $hasil)
die("Permintaan tidak dapat Dijalankan");
$jum_kolom = mysql_num_fields($hasil);
85
for($i=0; $i<$jum_kolom; $i++)
{
$Nama_kolom = mysql_field_name($hasil, $i);
$Tipe_kolom = mysql_field_type($hasil, $i);
$Panjang_kolom = mysql_field_len($hasil, $i);
$Flag_kolom = mysql_field_flags($hasil, $i);
print("Nama kolomnya : <b>$Nama_kolom</b><br>");
print("Tipe
: <b>$Tipe_kolom</b><br>");
print("Panjang maksimal : <b>$Panjang_kolom</b><br>");
print("Flag kolomnya : <b>$Flag_kolom</b><br>");
print("<br>");
}
?>
</body>
</html>
Gambar 3.42 Tampilan program FungsiMySQLFieldName.php
III.4.12 Fungsi-fungsi MySQL lainya
Tabel 3.3 Fungsi-fungsi MySQL lainnya
Nama Fungsi
mysql_create_db
mysql_list_db
mysql_drop_db
mysql_list_tables
mysql_list_fields
mysql_free_result
Keterangan
Membuat database baru di database server MySQL.
Menghasilkan nama-nama seluruh database yang ada di database server
MySQL.
Menghapus suatu database yang ada di database server MySQL.
Menghasilkan nama-nama tabel dari suatu database yang ada di database
server MySQL.
Menghasilkan nama-nama kolom/fields dari suatu tabel dalam suatu
database yang ada di database server MySQL.
Membebaskan memori dari seluruh hasil proses MySQL .
86
Tugas : Membuat database yang terdiri dari minimal 2 tabel dan masing –masing tabel minimal
terdiri dari 4 field. Yang dikumpulkan :
1. Menulis langkah-langkah pembuatan database tersebut (harus ditulis dengan tangan).
2. Penjelasan setiap perintah SQL yang digunakan dalam pembuatan database (harus ditulis
dengan tangan).
Bab IV. Aplikasi Web Sederhana dengan 1 Tabel
IV.1 Halaman Login (Login.php).
<html>
<head>
<title>Login Pengaturan Data Mahasiswa</title>
</head>
<body bgcolor="aqua">
<center>
<h2>Pengaturan Data Mahasiswa</h2>
<form method="post">
<table >
<tr>
<td>Petugas</td>
<td>
<input type="text" name="petugas">
</td>
</tr>
<tr>
<td>Password</td>
<td>
<input type="password" name="password">
</td>
</tr>
</table>
<input type="submit" value="login">
<input type="reset" value="reset">
</form>
<hr size=15 color="fuchsia" >
<?php
if (isset($password) and isset($petugas) )
{
$validasipwd = crc32("kucing");
$validasiptg = ("Fafa");
$pwd = crc32($password);
$ptg = $petugas;
if (($validasipwd == $pwd) and ($validasiptg == $ptg))
{
include "MenuUtama.html";
}
else
{
print("<b>Login Anda Salah...! <br>");
}
}
?>
</center>
87
</body>
</html>
Gambar 4.1 Tampilan program login.php
IV.2 Halaman Menu Utama (MenuUtama.html).
<html>
<head>
<title>Menu Utama Pengaturan Data Mahasiswa</title>
</head>
<body bgcolor="aqua">
<center>
<h3>Menu Utama Data Mahasiswa</h3>
<hr>
<a href="Masukkan.html">Menambah Data</a><br>
<a href="Cek.html">Mengubah atau Menghapus Data</a><br>
<a href="Login.php">Logout</a>
</center>
</body>
</html>
Gambar 4.2 Tampilan program login.php setelah login dengan benar
88
IV.3 Halaman untuk Menambahkan Data (Masukkan.html).
<html>
<head>
<title>Menambah Data Mahasiswa</title>
</head>
<body bgcolor="aqua">
<center>
<form action="Insert.php" method="post">
<table border="1">
<tr>
<td><b>NIM</td>
<td>
<input type=text name=nim size=9 maxlength=9>
</td>
</tr>
<tr>
<td><b>Nama</td>
<td>
<input type=text name=nama size=25 maxlength=25>
</td>
</tr>
<tr>
<td><b>Kota</td>
<td>
<input type=text name=kota size=15 maxlength=15>
</td>
</tr>
<tr>
<td><b>Telepon</td>
<td>
<input type=text name=tlp size=10 maxlength=10>
</td>
</tr>
</table>
<table border="0">
<tr>
<td>
<input type="submit" value="Simpan">
<input type="reset" value="Reset">
</td>
</tr>
</table>
</center>
</body>
</html>
Gambar 4.3 Tampilan program masukkan.html yang berupa form isian
89
IV.4 Halaman untuk Memproses Data yang akan Dimasukkan(Insert.php).
<html>
<head>
<title>Memasukkan Data Dalam Database</title>
</head>
<body bgcolor="aqua">
<?php
$pemakai = "Adiexs";
$password = "Kucing";
$konek = mysql_connect("localhost",$pemakai,$password);
if (! $konek)
print("Database MySQL tidak dapat Terkoneksi<br>");
$pilihDB = mysql_select_db(DataMahasiswa,$konek);
/*
printf("$nim<br>");
printf("$nama<br>");
printf("$kota<br>");
printf("$tlp<br>");*/
$Masukkan = "insert into datapribadi(NIM,Nama,Kota,Telepon) values
('$nim','$nama','$kota','$tlp')";
$hasilisitabel = mysql_query ($Masukkan,$konek);
if ($hasilisitabel)
print("<font color=red size=4>Data <b>$nama</b> Telah Dimasukkan</font><br>");
else
print("<font color=red size=4> Data Tidak Dapat Dimasukkan</font><br>");
?>
<a href="masukkan.html">Kembali Menu Memasukkan Data</a><br>
</body>
</html>
Gambar 4.4 Tampilan program insert.php
IV.5 Halaman untuk Mengecek Data (Cek.html).
<html>
<head>
<title>Mengecek Data Mahasiswa</title>
</head>
<body bgcolor="aqua">
<center>
<form action="Edit&Hapus.php" method="post">
<table border="1">
<tr>
<td><b>Masukkan NIM</td>
<td>
<input type=text name=nim size=15 maxlength=9 >
</td>
</tr>
</table>
<table border="0">
90
<tr>
<td>
<input type="submit" value="Cek">
</td>
</tr>
</form>
</center>
</body>
</html>
Gambar 4.5 Tampilan program Cek.html
IV.6 Halaman untuk Mengedit dan Menghapus Data (Edit&Hapus.php).
<html>
<head>
<title>Mengedit atau Menghapus Data Mahasiswa</title>
</head>
<body bgcolor="aqua">
<?php
$pemakai = "Adiexs";
$password = "Kucing";
$konek = mysql_connect("localhost",$pemakai,$password);
if (! $konek)
print("Database MySQL tidak dapat Terkoneksi<br>");
$pilihDB = mysql_select_db(DataMahasiswa,$konek);
$hasil= mysql_query ("select NIM,Nama,Kota,Telepon from datapribadi where NIM='$nim'",$konek);
if (! $hasil)
print ("Permintaan gagal");
$baris = mysql_fetch_row($hasil);
if ($baris == false)
print ("Data dengan NIM : <b>$nim</b> Tidak Ada...!");
$nim = $baris[0];
$nama = $baris[1];
$kota = $baris[2];
$tlp = $baris[3];
?>
<center>
<form action="Update.php" method="post">
<table border="1">
<tr>
<td>NIM</td>
<td>
<?php
echo "$nim";
?>
</td>
</tr>
<tr>
<td>Nama</td>
91
<td>
<?php
echo "<input type=text name=nama size=25 maxlength=25 value='$nama'>";
?>
</td>
</tr>
<tr>
<td>Kota</td>
<td>
<?php
echo "<input type=text name=kota size=15 maxlength=15 value='$kota'>";
?>
</td>
</tr>
<tr>
<td>Telepon</td>
<td>
<?php
echo "<input type=text name=tlp size=10 maxlength=10 value='$tlp'>";
?>
</td>
</tr>
</table>
<table border="0">
<?php
echo "<input type=hidden name=nim size=9 maxlength=9 value=$nim>";
?>
<tr>
<td>
<input type="submit" size=29 value="Update">
</td>
</tr>
</form>
<form action="Delete.php" method="post">
<td>
<?php
echo "<input type=hidden name=nim size=9 maxlength=9 value=$nim>";
?>
<input type="submit" size=29 value="Hapus ">
</td>
</form>
</center>
</body>
</html>
Gambar 4.6 Tampilan program edit&hapus.php
92
IV.7 Halaman untuk Memproses Edit Data (Update.php).
<html>
<head>
<title>Mengedit Data Mahasiswa</title>
</head>
<body bgcolor="aqua">
<?php
$pemakai = "Adiexs";
$password = "Kucing";
$konek = mysql_connect("localhost",$pemakai,$password);
if (! $konek)
print("Database MySQL tidak dapat Terkoneksi<br>");
$pilihDB = mysql_select_db(DataMahasiswa,$konek);
$hasilisitabel = mysql_query ("update datapribadi set Nama='$nama',
Kota='$kota',Telepon='$tlp' where NIM=$nim");
if ($hasilisitabel)
print("<font color=red size=4>Data <b>$nama</b> telah Di-Update...!</font><br>");
else
print("<font color=red size=4>Data tidak dapat Di-Update </font><br>");
?>
<a href="cek.html">Kembali Menu Cek</a><br>
</body>
</html>
Gambar 4.7 Tampilan program update.php
IV.8 Halaman untuk Memproses Hapus Data (Delete.php).
<html>
<head>
<title>Menghapus Data Mahasiswa</title>
</head>
<body bgcolor="aqua">
<?php
$pemakai = "Adiexs";
$password = "Kucing";
$konek = mysql_connect("localhost",$pemakai,$password);
if (! $konek)
print("Database MySQL tidak dapat Terkoneksi<br>");
$pilihDB = mysql_select_db(DataMahasiswa,$konek);
$hasilisitabel = mysql_query ("delete from datapribadi where NIM=$nim");
if ($hasilisitabel)
print("<font color=red size=4>Data telah di Hapus...!</font><br>");
else
print("<font color=red size=4>Data tidak dapat di Hapus</font><br>");
?>
<a href="cek.html">Kembali Menu Cek</a><br>
</body>
</html>
93
Gambar 4.8 Tampilan program delete.php
Tugas : Menjelaskan skrip program aplikasi diatas (harus ditulis dengan tangan).
Bab V. Mengenal Sesi
Pada waktu kita browsing menjelajahi website, misalnya e-mail, kita akan diminta memasukkan
username dan password. Prosedur ini hanya dilakukan sekali pada awal proses. Selanjutnya sistem
akan ‘mengingat’ identitas kita, dan menampilkan informasi yang sesuai. Tanpa adanya sesi, sistem
akan salah dan menampilkan data rahasia ke orang yang salah.
Sesi bekerja seperti tempat penitipan barang di supermarket. Kita datang, menitipkan barang bawaan,
dan petugas akan memberikan tanda pengenal. Pada saat kita akan mengambil barang, kita
memberikan tanda pada petugas, dan petugas akan dapat mengambil barang yang dititipkan tanpa
tertukar dengan barang orang lain. Permasalahan yang terjadi adalah, bagaimana “tanda pengenal”
tersebut akan disimpan pada setiap halaman yang diakses user, sehingga dapat diakses oleh sistem
setiap kali user mengklik link.
Beberapa kegunaan dari Sesi :
1. Menyimpan nama User dan Password, sehingga memungkinkan seseorang dapat masuk ke
skrip-skrip lainnya tanpa perlu melakukan login kembali.
2. Menyimpan nama pembeli dan barang-barang yang akan dibeli.
3. Menyimpan pilihan-pilihan yang ditentukan oleh pengunjung.
Untuk membuat sesi dapat menggunakan Session atau Cookies. Keduanya mempunyai fungsi yang
sama yaitu : untuk mencatat aktifitas dari seseorang yang mengakses suatu aplikasi web, agar
informasi yang digunakan untuk mengakses dapat terpelihara atau terjaga.
Perbedaaanya adalah Cookies disimpan di komputer user sedangkan Session disimpan di server.
Sehingga dapat disimpulkan bahwa penggunaan Session lebih aman dari Cookie.
Berikut akan dicontohkan aplikasi yang telah menggunakan Session dengan 2 tabel, bandingkan
dengan aplikasi web sederhana diatas.
94
V.1 Halaman Login (Login.php).
<html>
<head>
<title>Login Pengaturan Data Mahasiswa</title>
</head>
<body bgcolor="aqua">
<center>
<?php
if (!empty($msg))
print("<font color='red'><b>$msg<br>\n</b></font>");
?>
<h2>Pengaturan Data Mahasiswa</h2>
<form action=MenuUtama.php method="post">
<table >
<tr>
<td>Petugas</td>
<td>
<input type="text" name="pemakai">
</td>
</tr>
<tr>
<td>Password</td>
<td>
<input type="password" name="password">
</td>
</tr>
</table>
<input type="submit" value="login">
<input type="reset" value="reset">
</form>
<hr size=15 color="fuchsia" >
</center>
</body>
</html>
Gambar 5.1 Tampilan program login.php
V .2 Halaman Menu Utama(MenuUtama.php).
<?php
include "CekPwd.inc";
session_start();
if (! empty($pemakai))
95
$sesi_pemakai = $pemakai;
if (! empty($password))
$sesi_password = $password;
if (! password_valid($sesi_pemakai,$sesi_password))
{
$alamat = "http://localhost/AplikasiSesi/Index.php";
$msg = "Login Anda Salah, Silahkan Login Kembali...!";
header("location: $alamat?msg=$msg");
exit();
}
session_register("sesi_pemakai");
session_register("sesi_password");
?>
<html>
<head>
<title>Menu Utama Pengaturan Data Mahasiswa</title>
</head>
<body bgcolor="aqua">
<center>
<h3>Menu Utama Data Mahasiswa</h3>
<hr>
<a href="MasukData.php">Menambah Data</a><br>
<a href="CekData.php">Mengubah atau Menghapus Data</a><br>
<a href="Kriteria.php">Menampilkan Data dengan Kriteria</a><br>
<a href="TampilData.php">Menampilkan Semua Data</a><br>
<a href="Index.php">Logout</a>
</center>
</body>
</html>
Gambar 5.2 Tampilan program menuutama.php
V.3 File untuk Validasi Password (CekPwd.php).
<?php
function password_valid($pemakai, $password)
{
if (isset($pemakai) and isset($password) )
{
$validasiptg = ("Fafa");
$validasipwd = crc32("kucing");
$ptg = $pemakai;
$pwd = crc32($password);
if (($validasipwd == $pwd) and ($validasiptg == $ptg))
return true;
96
return false;
}
}
?>
V.4 Halaman atau Form untuk Memasukkan Data(MasukData.php).
<?php
include "CekPwd.inc";
session_start();
if (! password_valid($sesi_pemakai,$sesi_password))
{
$alamat = "http://localhost/AplikasiSesi/Index.php";
$msg = "Login Anda Salah, Silahkan Login Kembali...!";
header("location: $alamat?msg=$msg");
exit();
}
?>
<html>
<head>
<title>Menambah Data Mahasiswa</title>
</head>
<body bgcolor="aqua">
<center>
<form action="insert2.php" method="post">
<table border="1">
<tr>
<td><b>NIM</td>
<td>
<input type=text name=nim size=9 maxlength=9>
</td>
</tr>
<tr>
<td><b>Nama</td>
<td>
<input type=text name=nama size=25 maxlength=25>
</td>
</tr>
<tr>
<td><b>Kota</td>
<td>
<input type=text name=kota size=15 maxlength=15>
</td>
</tr>
<tr>
<td><b>Telepon</td>
<td>
<input type=text name=tlp size=10 maxlength=10>
</td>
</tr>
<tr>
<td><b>Nama Orang Tua</td>
<td>
<input type=text name=naortu size=25 maxlength=25>
</td>
</tr>
<tr>
<td><b>Pekerjaan</td>
<td>
<input type=text name=pkj size=15 maxlength=15>
97
</td>
</tr>
</table>
<table border="0">
<tr>
<td>
<input type="submit" value="Simpan">
<input type="reset" value="Reset">
</td>
</tr>
</table>
</center>
</body>
</html>
Gambar 5.3 Tampilan program masukdata.php
V.5 Halaman untuk Memproses Data yang akan Dimasukkan (Insert2.php).
<?php
include "CekPwd.inc";
session_start();
if (! password_valid($sesi_pemakai,$sesi_password))
{
$alamat = "http://localhost/AplikasiSesi/Index.php";
$msg = "Login Anda Salah, Silahkan Login Kembali...!";
header("location: $alamat?msg=$msg");
exit();
}
?>
<html>
<head>
<title>Memasukkan Data Dalam Database</title>
</head>
<body bgcolor="aqua">
<?php
$pemakai = "Adiexs";
$password = "Kucing";
$konek = mysql_connect("localhost",$pemakai,$password);
if (! $konek)
print("Database MySQL tidak dapat Terkoneksi<br>");
$pilihDB = mysql_select_db(DataMahasiswa,$konek);
$Masuk1 = "insert into datapribadi(NIM,Nama,Kota,Telepon) values
98
('$nim','$nama','$kota','$tlp')";
$hasilisitabel1 = mysql_query ($Masuk1,$konek);
$Masuk2 = "insert into dataortu(NIM,NamaOrtu,Pekerjaan) values
('$nim','$naortu','$pkj')";
$hasilisitabel2 = mysql_query ($Masuk2,$konek);
if (($hasilisitabel1) and ($hasilisitabel1))
print("<font color=red size=4>Data <b>$nama</b> Telah Dimasukkan</font><br>");
else
print("<font color=red size=4> Data Tidak Dapat Dimasukkan</font><br>");
?>
<a href="masukdata.php">Kembali Menu Memasukkan Data</a><br>
</body>
</html>
Gambar 5.4 Tampilan program insert2.php
V.6 Halaman untuk Mengecek Data yang akan Diedit (CekData.php).
<?php
include "CekPwd.inc";
session_start();
if (! password_valid($sesi_pemakai,$sesi_password))
{
$alamat = "http://localhost/AplikasiSesi/Index.php";
$msg = "Login Anda Salah, Silahkan Login Kembali...!";
header("location: $alamat?msg=$msg");
exit();
}
?>
<html>
<head>
<title>Mengecek Data Mahasiswa</title>
</head>
<body bgcolor="aqua">
<center>
<form action="Edit&Hapus2.php" method="post">
<table border="1">
<tr>
<td><b>Masukkan NIM</td>
<td>
<input type=text name=nim size=15 maxlength=9 >
</td>
</tr>
</table>
<table border="0">
<tr>
<td>
<input type="submit" value="Cek">
</td>
</tr>
</form>
99
</center>
</body>
</html>
.
Gambar 5.5 Tampilan program cekdata.php
V.7 Halaman untuk Mengedit atau Menghapus Data (Edit&Hapus2.php).
<?php
include "CekPwd.inc";
session_start();
if (! password_valid($sesi_pemakai,$sesi_password))
{
$alamat = "http://localhost/AplikasiSesi/Index.php";
$msg = "Login Anda Salah, Silahkan Login Kembali...!";
header("location: $alamat?msg=$msg");
exit();
}
?>
<html>
<head>
<title>Mengedit atau Menghapus Data Mahasiswa</title>
</head>
<body bgcolor="aqua">
<?php
$pemakai = "Adiexs";
$password = "Kucing";
$konek = mysql_connect("localhost",$pemakai,$password);
if (! $konek)
print("Database MySQL tidak dapat Terkoneksi<br>");
$pilihDB = mysql_select_db(DataMahasiswa,$konek);
$hasil1= mysql_query ("select NIM,Nama,Kota,Telepon from datapribadi where NIM='$nim'",$konek);
if (! $hasil1)
print ("Permintaan gagal");
$baris1 = mysql_fetch_row($hasil1);
if ($baris1 == false)
printf ("Data dengan NIM : <b>$nim</b> Tidak Ada...!" );
$nim = $baris1[0];
$nama = $baris1[1];
$kota = $baris1[2];
$tlp = $baris1[3];
$hasil2= mysql_query ("select NIM,NamaOrtu,Pekerjaan from dataortu where NIM='$nim'",$konek);
if (! $hasil2)
print ("Permintaan gagal");
$baris2 = mysql_fetch_row($hasil2);
$nim = $baris2[0];
$naortu = $baris2[1];
$pkj = $baris2[2];
?>
<center>
100
<form action="update2.php" method="post">
<table border="1">
<tr>
<td>NIM</td>
<td>
<?php
echo "$nim";
?>
</td>
</tr>
<tr>
<td>Nama</td>
<td>
<?php
echo "<input type=text name=nama size=25 maxlength=25 value='$nama'>";
?>
</td>
</tr>
<tr>
<td>Kota</td>
<td>
<?php
echo "<input type=text name=kota size=15 maxlength=15 value='$kota'>";
?>
</td>
</tr>
<tr>
<td>Telepon</td>
<td>
<?php
echo "<input type=text name=tlp size=10 maxlength=10 value='$tlp'>";
?>
</td>
</tr>
<tr>
<td>Nama Orang Tua</td>
<td>
<?php
echo "<input type=text name=naortu size=25 maxlength=25 value='$naortu'>";
?>
</td>
</tr>
<tr>
<td>Pekerjaan</td>
<td>
<?php
echo "<input type=text name=pkj size=15 maxlength=15 value='$pkj'>";
?>
</td>
</tr>
</table>
<table border="0">
<?php
echo "<input type=hidden name=nim size=9 maxlength=9 value=$nim>";
?>
<tr>
<td>
<input type="submit" size=29 value="Update">
</td>
</tr>
101
</form>
<form action="delete2.php" method="post">
<td>
<?php
echo "<input type=hidden name=nim size=9 maxlength=9 value=$nim>";
?>
<input type="submit" size=29 value="Hapus ">
</td>
</form>
</center>
</body>
</html>
Gambar 5.6 Tampilan program edit&hapus2.php
V.8 Halaman untuk Memproses Data yang akan Diedit (Update2.php).
<?php
include "CekPwd.inc";
session_start();
if (! password_valid($sesi_pemakai,$sesi_password))
{
$alamat = "http://localhost/AplikasiSesi/Index.php";
$msg = "Login Anda Salah, Silahkan Login Kembali...!";
header("location: $alamat?msg=$msg");
exit();
}
?>
<html>
<head>
<title>Mengedit Data Mahasiswa</title>
</head>
<body bgcolor="aqua">
<?php
$pemakai = "Adiexs";
$password = "Kucing";
$konek = mysql_connect("localhost",$pemakai,$password);
if (! $konek)
print("Database MySQL tidak dapat Terkoneksi<br>");
$pilihDB = mysql_select_db(DataMahasiswa,$konek);
$hasilisitabel1 = mysql_query ("update datapribadi set Nama='$nama',
Kota='$kota',Telepon='$tlp' where NIM=$nim");
102
$hasilisitabel2 = mysql_query ("update dataortu set NamaOrtu='$naortu',Pekerjaan='$pkj'where
NIM=$nim");
if (($hasilisitabel2) and ($hasilisitabel2))
print("<font color=red size=4>Data <b>$nama</b> telah Di-Update...!</font><br>");
else
print("<font color=red size=4>Data tidak dapat Di-Update </font><br>");
?>
<a href="cekdata.php">Kembali Menu Cek</a><br>
</body>
</html>
Gambar 5.7 Tampilan program update2.php
V.9 Halaman untuk Memproses Data yang akan Dihapus (Delete2.php).
<?php
include "CekPwd.inc";
session_start();
if (! password_valid($sesi_pemakai,$sesi_password))
{
$alamat = "http://localhost/AplikasiSesi/Index.php";
$msg = "Login Anda Salah, Silahkan Login Kembali...!";
header("location: $alamat?msg=$msg");
exit();
}
?>
<html>
<head>
<title>Menghapus Data Mahasiswa</title>
</head>
<body bgcolor="aqua">
<?php
$pemakai = "Adiexs";
$password = "Kucing";
$konek = mysql_connect("localhost",$pemakai,$password);
if (! $konek)
print("Database MySQL tidak dapat Terkoneksi<br>");
$pilihDB = mysql_select_db(DataMahasiswa,$konek);
$hasilisitabel1 = mysql_query ("delete from datapribadi where NIM=$nim");
$hasilisitabel2 = mysql_query ("delete from dataortu where NIM=$nim");
if (($hasilisitabel1) and ($hasilisitabel2))
print("<font color=red size=4>Data telah di Hapus...!</font><br>");
else
print("<font color=red size=4>Data tidak dapat di Hapus</font><br>");
?>
<a href="cekdata.php">Kembali ke Menu Cek</a><br>
</body>
</html>
103
Gambar 5.8 Tampilan program delete2.php
V.10 Halaman untuk Memasukkan Kriteria (Kriteria.php).
<?php
include "CekPwd.inc";
session_start();
if (! password_valid($sesi_pemakai,$sesi_password))
{
$alamat = "http://localhost/AplikasiSesi/Index.php";
$msg = "Login Anda Salah, Silahkan Login Kembali...!";
header("location: $alamat?msg=$msg");
exit();
}
?>
<html>
<head>
<title>Menampilkan Data dengan Kriteria</title>
</head>
<body bgcolor="aqua">
<center>
<form action="TampilKriteria.php" method="post">
<font size=5 color="red"><b>Silahkan Masukkan Kriterianya...!</font><br><br>
<table border="1">
<tr>
<td><b>Masukkan Kriteria Nama Mahasiswa</td>
<td>
<input type=text name=kritnama size=15 maxlength=9 >
</td>
</tr>
<tr>
<td><b>Masukkan Kriteria Kota</td>
<td>
<input type=text name=kritkota size=15 maxlength=9 >
</td>
</tr>
</table>
<table border="0">
<tr>
<td>
<input type="submit" value="OK">
</td>
</tr>
</table>
</form>
</center>
</body>
<a href="menuutama.php"><font size=2 color="blue"><b>Kembali ke Menu Utama...!</a>
</html>
104
Gambar 5.9 Tampilan program kriteria.php
V.11 Halaman untuk Menampilkan Data dengan Kriteria (TampilData.php).
<?php
include "CekPwd.inc";
session_start();
if (! password_valid($sesi_pemakai,$sesi_password))
{
$alamat = "http://localhost/AplikasiSesi/Index.php";
$msg = "Login Anda Salah, Silahkan Login Kembali...!";
header("location: $alamat?msg=$msg");
exit();
}
?>
<html>
<head>
<title>Menampilkan Data Mahasiswa dengan Kriteria</title>
</head>
<body bgcolor="aqua">
<?php
$pemakai = "Adiexs";
$password = "Kucing";
$konek = mysql_connect("localhost",$pemakai,$password);
if (! $konek)
print("Database MySQL tidak dapat Terkoneksi<br>");
$pilihDB = mysql_select_db(DataMahasiswa,$konek);
$hasil1= mysql_query ("select datapribadi.NIM,datapribadi.Nama,datapribadi.Kota,datapribadi.Telepon,
dataortu.NamaOrtu,dataortu.pekerjaan
from datapribadi, dataortu where datapribadi.NIM=dataortu.NIM and datapribadi.Nama like
'%$kritnama%' and datapribadi.Kota like '%$kritkota%'",$konek);
if (! $hasil1)
print ("Permintaan gagal");
?>
<?php
print ("<center>");
print ("<font size=4><b>Data Lengkap Mahasiswa dan Orang Tua</b><br><br>");
print ("<table border=1 bordercolor=gray width=100% cellspacing=0>");
print ("<tr>");
105
print ("<td width=5%>");
print ("<center>");
print ("<font size=2><b>No </b>");
print ("</td>");
print ("<td width=15%>");
print ("<center>");
print ("<font size=2><b>N I M </b>");
print ("</td>");
print ("<td width=20%>");
print ("<center>");
print ("<font size=2><b>Nama Mahasiswa</b>");
print ("</td>");
print ("<td width=20%>");
print ("<center>");
print ("<font size=2><b>Nama Orang Tua</b>");
print ("</td>");
print ("<td width=7%>");
print ("<center>");
print ("<font size=2><b>Kota </b>");
print ("</td>");
print ("<td width=12%>");
print ("<center>");
print ("<font size=2><b>Telepon </b>");
print ("</td>");
print ("<td width=15%>");
print ("<center>");
print ("<font size=2><b>Pekerjaan </b>");
print ("</td>");
print ("</tr>");
$no=0;
While ($datanya = mysql_fetch_row ($hasil1))
{
$no++;
print ("<tr>");
print ("<td width=5%>");
print ("<center>");
print ("<font size=2>$no ");
print ("</td>");
print ("<td width=15%>");
print ("<left>");
print ("<font size=2>$datanya[0]");
print ("</td>");
print ("<td width=20%>");
print ("<left>");
print ("<font size=2>$datanya[1]");
print ("</td>");
print ("<td width=20%>");
print ("<left>");
print ("<font size=2>$datanya[4]");
print ("</td>");
106
print ("<td width=12%>");
print ("<left>");
print ("<font size=2>$datanya[2]");
print ("</td>");
print ("<td width=10%>");
print ("<left>");
print ("<font size=2>$datanya[3]");
print ("</td>");
print ("<td width=15%>");
print ("<left");
print ("<font size=2>$datanya[5]");
print ("</td>");
print ("</tr>");
}
print ("</table>");
?>
</center>
</body>
</html>
Gambar 5.10 Tampilan program tampilkriteria.php
V.12 Halaman untuk Menampilkan Data dari Kedua Tabel (TampilData.php).
<?php
include "CekPwd.inc";
session_start();
if (! password_valid($sesi_pemakai,$sesi_password))
{
$alamat = "http://localhost/AplikasiSesi/Index.php";
$msg = "Login Anda Salah, Silahkan Login Kembali...!";
header("location: $alamat?msg=$msg");
exit();
}
?>
<html>
<head>
<title>Menampilkan Data Mahasiswa</title>
</head>
<body bgcolor="aqua">
<?php
107
$pemakai = "Adiexs";
$password = "Kucing";
$konek = mysql_connect("localhost",$pemakai,$password);
if (! $konek)
print("Database MySQL tidak dapat Terkoneksi<br>");
$pilihDB = mysql_select_db(DataMahasiswa,$konek);
$hasil1= mysql_query ("select datapribadi.NIM,datapribadi.Nama,datapribadi.Kota,datapribadi.Telepon,
dataortu.NamaOrtu,dataortu.pekerjaan
from datapribadi, dataortu where datapribadi.NIM=dataortu.NIM order by datapribadi.Nama",$konek);
if (! $hasil1)
print ("Permintaan gagal");
?>
<?php
print ("<center>");
print ("<font size=4><b>Data Lengkap Mahasiswa dan Orang Tua</b><br><br>");
print ("<table border=1 bordercolor=gray width=100% cellspacing=0>");
print ("<tr>");
print ("<td width=5%>");
print ("<center>");
print ("<font size=2><b>No </b>");
print ("</td>");
print ("<td width=15%>");
print ("<center>");
print ("<font size=2><b>N I M </b>");
print ("</td>");
print ("<td width=20%>");
print ("<center>");
print ("<font size=2><b>Nama Mahasiswa</b>");
print ("</td>");
print ("<td width=20%>");
print ("<center>");
print ("<font size=2><b>Nama Orang Tua</b>");
print ("</td>");
print ("<td width=7%>");
print ("<center>");
print ("<font size=2><b>Kota </b>");
print ("</td>");
print ("<td width=12%>");
print ("<center>");
print ("<font size=2><b>Telepon </b>");
print ("</td>");
print ("<td width=15%>");
print ("<center>");
print ("<font size=2><b>Pekerjaan </b>");
print ("</td>");
print ("</tr>");
$no=0;
While ($datanya = mysql_fetch_row ($hasil1))
{
$no++;
print ("<tr>");
print ("<td width=5%>");
print ("<center>");
print ("<font size=2>$no ");
print ("</td>");
print ("<td width=15%>");
print ("<left>");
print ("<font size=2>$datanya[0]");
print ("</td>");
print ("<td width=20%>");
108
print ("<left>");
print ("<font size=2>$datanya[1]");
print ("</td>");
print ("<td width=20%>");
print ("<left>");
print ("<font size=2>$datanya[4]");
print ("</td>");
print ("<td width=12%>");
print ("<left>");
print ("<font size=2>$datanya[2]");
print ("</td>");
print ("<td width=10%>");
print ("<left>");
print ("<font size=2>$datanya[3]");
print ("</td>");
print ("<td width=15%>");
print ("<left");
print ("<font size=2>$datanya[5]");
print ("</td>");
print ("</tr>");
}
print ("</table>");
?>
</center>
</body>
</html>
Gambar 5.11 Tampilan program tampildata.php
Tugas : Membuat aplikasi dan dipresentasikan di kelas, dengan ketentuan sebagai berikut :
1. Minimal terdiri dari 3 tabel dan ada relasinya.
2. Terdapat proses input, edit, hapus dan tampil.
3. Adanya proses sesi (bisa dengan Cookie ataupun Session).
4. Aplikasinya selain tentang data mahasiswa.
Download