Anda di halaman 1dari 57

MODUL PRAKTIKUM

PEMROGRAMAN WEB I

Disusun oleh :

Reyhan Achmad Rizal, S.T, M.Kom

Universitas Prima Indonesia


Medan
DAFTAR ISI

DAFTAR ISI ......................................................................................................................... 1


1. Instalasi Paket Perangkat Lunak Web Server (XAMPP) .................................................. 2
2. Variabel dan Operator ....................................................................................................... 8
3. Struktur Kondisi .............................................................................................................. 12
4. Struktur Pengulangan (Looping) ..................................................................................... 16
5. Array ................................................................................................................................ 21
6. Include ............................................................................................................................. 22
7. Session ............................................................................................................................. 24
8. Fungsi ............................................................................................................................. 27
9. Object dan Class ............................................................................................................. 29
10. Mendefiniskan Database dan tabel ................................................................................ 31
11. Membuat menu login dan menu utama ......................................................................... 32
12. Menampilkan data di web page ..................................................................................... 36
13. Menyisipkan data di web page ...................................................................................... 41
14. Mengupdate data di web page ....................................................................................... 47
15. Kartu Peserta Praktikum ................................................................................................ 55

Praktikum Pemrograman Web II-PHP 1


Bab
Instalasi Paket Perangkat Lunak Web Server (XAMPP)
1

Sebelum memulai membuat program kedalam bahasa PHP, terlebih dahulu kita persiapkan
perangkat keras dan perangkat lunak web server yang berfungsi untuk menjalankan
aplikasi web yang akan kita kembangkan, pada praktek kali ini kita menggunakan paket
web server yang banyak digunakan yaitu XAMPP.

Adapun cara menginstalasi paket perangkat lunak web server XAMPP adalah sebagai
berikut :

1. Jalankan file xampp-win32-1.7.0-installer.exe (atau versi lainnya)


2. Kemudian akan tampil seperti layar berikut :

3. Klik tombol Next untuk memulai instalasi hingga muncul tampilan sbb:

Praktikum Pemrograman Web II-PHP 2


4. Perhatikan gambar diatas kita diminta untuk mengisi folder tujuan dari paket
XAMPP ini akan di install (c:\xampp\ sebagai nilai default), klik tombol next untuk
melanjutkan instalasi XAMPP
5. Langkah berikutnya centang service apache dan mysql pada item service section
seperti terlihat pada tampilan berikut :

6. Kemudian klik tombol install untuk memulai proses instalasi


7. Tunggu sesaat hingga muncul tampilan selesai sebagai berikut :

Praktikum Pemrograman Web II-PHP 3


8. Sampai tahap ini, berarti kita sudah menginstal XAMPP. Itu berarti kita sudah
selesai menginstall PHP, APACHE dan MYSQL. Langkah selanjutnya adalah
menjalankan servicenya
9. Jalankan XAMPP Control Panel yang ada di desktop. Atau anda juga dapat
menjalankan XAMPP Control Panel dari menu Start -> All Programs ->
apachefriends -> xampp -> xampp control panel

Praktikum Pemrograman Web II-PHP 4


10. Klik Start pada masing-masing untuk Apache dan MySql, sehingga muncul tanda
Running untuk keduanya. PC lokal Anda kini sudah menjadi server Web lokal

11. Buka web browser anda, lalu ketikkan http://localhost. Jika tampilannya seperti di
bawah ini, maka apache sudah terinstall dengan baik

Praktikum Pemrograman Web II-PHP 5


12. Klik Bahasa English maka akan tampil menu utama XAMPP seperti pada tampilan
layar sbb:

13. Untuk menonaktifkan server lokal Anda, keluar dari XAMPP Control Panel.
Caranya, pada XAMPP Control Panel, klik Stop pada masing-masing Apache dan
MySql, lalu tutup jendela kontrol panel (klik X pada pojok kanan atas) hingga
muncul tampilan berikut:

Praktikum Pemrograman Web II-PHP 6


Soal 1. (Instalasi XAMPP)
Instalasi paket perangkat lunak lengkap XAMPP kedalam mesin (perangkat keras yang
berbeda) dengan memilih full paket dari perangkat lunak XAMPP.

LEMBAR JAWABAN

Praktikum Pemrograman Web II-PHP 7


Bab
Variabel dan Operator
2

Variabel
Dalam setiap bahasa pemrograman kita mengenal variabel, Variabel di PHP diawali
dengan tanda dollar ($) diikuti dengan nama variabel. Yang perlu diperhaitkan dalam
membuat program php nama variabel adalah case-sensitive, artinya huruf besar dan huruf
kecil adalah berbeda.
Program berikut mengimplementasikan variabel sebagai berikut:
index.php
1 <?php
2 $strstring="Selamat Datang di Dunia PHP";
3 echo $strstring; //Hasilnya Selamat Datang di Dunia PHP
4 ?>

Jalankan program diatas dengan menggunakan browser yang ada seperti Firefox Mozilla,
Chrome atau Internet Explorer.

Untuk dapat menggabungkan dua variabel atau lebih gunakan operator titik (.) atau
langsung ditulis diantara tanda kutip yang biasa disebut dengan concate, contoh :
Lat_concate.php
1 <?php
2 $txt1 = "STIKOM CKI";
3 $txt2 = "Radin Inten II-Buaran";
4 $nama = "Si Mahasiswa";
5 echo $txt1."-".$txt2 ; //Hasilnya STIKOMCKI Radin Inten II-Buaran
6 ?>

Operator
Dalam bahasa pemrograman dapat diartikan sebagai simbol yang digunakan untuk
melakukan suatu operasi terhadap nilai data. Simbol Operator dapat berupa karakter atau
kata khusus.

Praktikum Pemrograman Web II-PHP 8


Operator Aritmetik

Digunakan untuk operasi matematis terhadap nilai data. Simbol-simbol yang dapat
digunakan adalah sbb :

Operator Deskripsi Contoh Hasil


+ Penambahan 5+2 7
- Pengurangan 7-3 4
* Pengalian 5*3 15
/ Pembagian 6/3 2
% Modulus (sisa hasil pembagi) 7/4 1
++ Penambahan satu X=3 X= 4
X++
-- Pengurangan satu X=9 X=8
X--
Program berikut adalah latihan untuk operator aritmetik sbb :
lat_operator1.php
1 <?php
2 $x = 8;
3 $y = 2;
4
5 $a = $x + $y;
6 echo $a."<br>"; //hasilnya 10
7
8 $b = $x - $y;
9 echo $b."<br>"; //hasilnya 6
10
11 $c = $x * $y;
12 echo $c."<br>"; //hasilnya 16
13
14 $d = $x / $y;
15 echo $d."<br>"; //hasilnya 4
16
17 $e = $x % $y;
18 echo $e."<br>";
19
20 ?>

Praktikum Pemrograman Web II-PHP 9


Operator Pembanding

Digunakan untuk operasi yang membandingkan nilai data. Simbol-simbol yang digunakan
adalah sbb :

Operator Deskripsi
== Sama dengan
!= Tidak sama dengan
> Lebih besar dari
< Lebih kecil dari
>= Lebih besar sama dengan
<= Lebih kecil sama dengan

Program berikut adalah latihan untuk operator pembanding sbb :


lat_operator2.php
1 <?php
2 $x = 25;
3
4 if($x > 5){
5 echo "X lebih besar dari 5";
6 }else if($x == 5){
7 echo "X sama dengan 5";
8 }else if($x < 5){
9 echo "X kecil dari 5";
10 }
11 ?>
12

Operator Logika

Logika digunakan untuk operasi yang membandingkan suatu perbandingan. Simbol simbol
yang digunakan :
Operator Deskripsi
&& Dan
|| Atau
! Bukan

Program berikut adalah latihan untuk operator aritmetik sbb :


lat_operator3.php
1 <?php
2 $a = 5;
3 $b = 3;
4 if($a > 4 && $b < 2){
5 echo "TRUE";
6 }else{
7 echo "FALSE";

Praktikum Pemrograman Web II-PHP 10


8 }
9 ?>

Soal 2.1. (Operator Aritmetik)


Susun program yang di dalamnya terdapat operator aritmetik untuk melakukan perhitungan
luas segitiga.

Soal 2.2. (Operator Pembanding)


Susun program yang di dalamnya terdapat operator pembanding untuk melakukan
perhitungan luas lingkaran.

Soal 2.3. (Operator Logika)


Susun program yang di dalamnya terdapat operator logika untuk melakukan perhitungan
luas persegi panjang.

LEMBAR JAWABAN

Praktikum Pemrograman Web II-PHP 11


Bab
Struktur Kondisi
3
Kondisional berguna untuk mengecek suatu kondisi dan melakukan suatu kode jika kondisi
tersebut benar atau salah.

3.1. if
Sintaks :
if(kondisi){
kode yang dijalankan jika benar
}

Program berikut adalah latihan untuk struktur kondisi if sbb :


lat_kondisi1.php
1 <?php
2 $x = 10;
3 if($x == 10){
4 echo "Hallo Apa kabar";
5 }
6 ?>

3.2. if - else
Sintaks :
if(kondisi){
kode yang dijalankan jika benar
}else{
kode yang dijalankan jika salah
}

Program berikut adalah latihan untuk struktur kondisi if ... else sbb :
lat_kondisi2.php
1 <?php
2 $x = 5;
3 if($x == 10){
4 echo "Hallo Apa kabar";
5 }else{
6 echo "X tidak sama dengan 10";
7 }
8
9 ?>

Praktikum Pemrograman Web II-PHP 12


3.3. if - else if - else
Jika anda membutuhkan kondisi yang banyak
Sintaks :
if(kondisi 1){
kode yang dijalankan jika kondisi 1 benar
}else if(kondisi 2){
kode yang dijalankan jika kondisi 2 benar
}else if(kondisi 3){
kode yang dijalankan jika kondisi 3 benar
}else{
kode jika salah satu kondisi di atas tidak ada yang benar
}

Program berikut adalah latihan untuk struktur kondisi if ... else if .... else sbb :
lat_kondisi3.php
1 <?php
2 $nilai = 80;
3
4 if($nilai >= 85){
5 echo "A";
6 }else if($nilai >= 70 && $nilai < 85){
7 echo "B";
8 }else if($nilai >= 60 && $nilai < 70){
9 echo "C";
10 }else{
11 echo "D";
12 ?>

3.4. Switch

Pernyataan SWITCH dapat juga dipergunakan untuk menyatakan suatu pernyataan


kondisional atau bersyarat. Selain SWITCH, kita bisa pula menggunakan IF untuk
menyatakan kondisional.
Sama seperti if - else if - else, switch berguna jika membutuhkan kondisi yang banyak

Sintaks :
switch(ekspresi){
case kondisi1 :
kode yang dijalankan jika kondisi1 benar;
break;
case kondisi2 :
kode yang dijalankan jika kondisi2 benar;
break;
case kondisi3 :

Praktikum Pemrograman Web II-PHP 13


kode yang dijalankan jika kondisi3 benar;
break;
}

Program berikut adalah latihan untuk struktur kondisi switch sbb :


lat_kondisi4.php
1 <?php
2 $buah = "mangga";
3 switch ($buah) {
4 case "apple":
5 echo "buahnya adalah apple";
6 break;
7 case "mangga":
8 echo "buahnya adalah mangga";
9 break;
10 case "jambu":
11 echo "buahnya adalah jambu";
12 break;
13 }
14 ?>

Soal 3.1. (Kondisi if)


Susun program yang di dalamnya terdapat struktur kondisi if untuk melakukan perhitungan
luas segitiga.

Soal 3.2. (Kondisi if ... else)


Susun program yang di dalamnya terdapat struktur kondisi if ... else :
1. Untuk melakukan perhitungan luas lingkaran
2. Menghitung total penjualan bila diketahui nilai penjualan lebih besar dari 100 ribu
akan mendapatkan diskon 10% dan bila lebih kecil 100 ribu mendapat diskon 5%

Soal 3.3. (Kondisi if ... else if ... else)


Susun program yang di dalamnya terdapat struktur kondisi if ... else if ... else untuk
melakukan perhitungan total penjualan bila diketahui sbb :
1. Nilai penjualan lebih besar 1 juta akan mendapatkan diskon 15%
2. Nilai penjualan diantara 750 ribu sampai 1 juta mendapat diskon 10%
3. Nilai penjualan dibawah 750 ribu mendapat diskon 7%

Praktikum Pemrograman Web II-PHP 14


Soal 3.4. (Kondisi switch)
Susun program yang di dalamnya terdapat struktur kondisi switch untuk melakukan
penggantian nama hari dari bahasa inggris ke bahasa indonesia.

LEMBAR JAWABAN

Praktikum Pemrograman Web II-PHP 15


Bab
Looping (Pengulangan)
4

Looping atau perulangan digunakan untuk menjalankan suatu statement secara berulang
ulang atau secara terus menerus.
Dalam PHP, kita memiliki pernyataan looping sebagai berikut:

while melakukan pengulangan melalui blok kode sementara kondisi yang ditentukan
benar

do ... while - pengulangan melalui blok kode satu kali, kemudian mengulangi loop selama
kondisi yang ditentukan benar

for - pengulangan melalui blok kode sejumlah tertentu dari kali


foreach - pengulangan melalui blok kode untuk setiap elemen dalam array

4.1. for

Berguna untuk pengulangan yang sudah ditentukan terlebih dahulu awalnya berapa,
dijalankan sampai kondisi bagaimana.

Sintaks :
for(awal; kondisi; penambahan){
kode untuk dijalankan
}

Program berikut adalah latihan untuk pengulangan for sbb :


lat_loop1.php
1 <?php
2 for ($i = 1; $i <= 10; $i++) {
3 echo $i."<br>";
4 }
5
6 ?>

4.2. while

Praktikum Pemrograman Web II-PHP 16


Berguna untuk menjalankan suatu kode terus menerus selama kondisi bernilai TRUE

Sintaks :
while(kondisi){
kode untuk dijalankan;
}

Program berikut adalah latihan untuk pengulangan while sbb :


lat_loop2.php
1 <?php
2 $i=1;
3 while($i<=5)
4 {
5 echo "Nomor : " . $i . "<br />";
6 $i++;
7 }
8
9 ?>

4.3. foreach

Perulangan untuk array yang mempunyai nilai

Sintaks :
foreach (array as $value){
statement
}

atau
foreach (array as $key => $value){
statement
}

Program berikut adalah latihan untuk pengulangan foreach sbb :


lat_loop3.php
1 <?php

Praktikum Pemrograman Web II-PHP 17


2 $angka = array("satu", "dua", "tiga", satu juta);
3 //$i=tujuh;
4 foreach($arr as $key => $value) {
5 echo "Key: $key; Value: $value<br />\n";
6 }
7
8 ?>

Soal 4.1. (pengulangan for)


Susun program yang di dalamnya terdapat pengulangan for untuk menampilkan angka 1
s.d 100.

Soal 4.2. (pengulangan while)


Susun program yang di dalamnya terdapat pengulangan while untuk menampilkan
bilangan ganjil dan genap

Soal 4.3. (pengulangan foreach)


Susun program yang di dalamnya terdapat pengulangan foreach untuk menampilkan semua
element dalam sebuah objek.

LEMBAR JAWABAN

Praktikum Pemrograman Web II-PHP 18


Praktikum Pemrograman Web II-PHP 19
Bab
Array
5
Array adalah merupakan variabel khusus, yang dapat menampung lebih dari satu nilai pada suatu waktu.
dengan array kita dapat mengakses sekumpulan nilai dengan menggunakan satu nama variable. Jika kita
memiliki daftar item (daftar nama mahasiswa, misalnya), menyimpan mahasiswa di variabel tunggal bisa
terlihat seperti ini:
$mhs1="Mahasiswa A";
$mhs2="Mahasiswa B ";
$mhs3="Mahasiswa C";

Program berikut adalah latihan untuk pengunaan array sbb :


lat_array.php
1 <?php
2 $mhs=array("si ali","si ani","si ati");
3 echo "Saya Mengenal " . $mhs[0] . ", " . $mhs[1] . " dan " . $mhs[2] . ".";
4 echo "<br>";
5 $age=array("Peter"=>"35","Ben"=>"37","Joe"=>"43");
6 echo "Peter is " . $age['Peter'] . " years old.";
7
8 ?>

Soal 5.1. (array)


Susun program yang di dalamnya terdapat array untuk menampilkan nama-nama bulan
dalam satu tahun dan kemudian tampilkan nama bulan saat ini.

Soal 5.2. (array)


Susun program yang di dalamnya terdapat array untuk menampilkan nama-nama hari
dalam satu minggu dan kemudian tampilkan nama hari saat ini.

Praktikum Pemrograman Web II-PHP 20


LEMBAR JAWABAN

Praktikum Pemrograman Web II-PHP 21


Bab
Include
6

PHP memungkinkan suatu kode yang disimpan dalam suatu file disertakan ke dalam suatu
script PHP dengan menggunkan pernyataan include. Hal ini sangat berguna kalau kita
mempunyai sederetan kode (misalnya definisi suatu fungsi, definisi suatu konstanta, atau
kode yang lain) yang sering digunakan pada berbagai script PHP yang kita buat. Dalam hal
ini kita cukup menuliskan kode tersebut sekali saja ke dalam sebuah file. Lalu jika
memerlukan kode tersebut kita bisa menggunakan fungsi include

Program berikut adalah latihan untuk penggunaan include sbb :


lat_include1.php
1 <?php
2 echo "selamat datang di website PHP;
3 echo "<br>;
4 ?>

lat_include2.php
1 <?php
2 include 'lat_include1.php';
3 echo "<br>Ini adalah contant atau isi dari website <br>";
4
5 ?>

Soal 6.1. (include)


Susun program yang di dalamnya terdapat file include untuk menampilkan menu user login
dalam sebuah aplikasi.

Praktikum Pemrograman Web II-PHP 22


LEMBAR JAWABAN

Praktikum Pemrograman Web II-PHP 23


Bab
Session
7

Sebuah variabel Session PHP digunakan untuk menyimpan informasi atau mengubah
pengaturan untuk session pengguna. Session variabel menyimpan informasi tentang satu
pengguna tunggal, dan tersedia untuk semua halaman dalam satu aplikasi.
Dalam penanganan session terdapat beberapa proses yang perlu diperhatikan:
Proses pembuatan session
Proses pemeriksaan session
Proses penghapusan session

Program berikut adalah latihan untuk pembuatan session sbb :


lat_session1.php
1 <?php
2 Session_start();
3 If(isset ($_POST[login]))
4 {
5 $user = $_POST[user];
6 $passwd= $_POST[passwd];
7 If ($user == user && $passwd=passuser) {
8 $_SESSION[login] = $user;
9 Echo <h1> anda berhasil login</h1>;
10 Echo <h2>klik <a href=lat_session2.php> disini (lat_session2.php)</a>;
11 }
12 } else {
13 ?>
14
15 <html>
16 <head>
17 <title>login here ... </title>
18 </head>
19 <body>
20 <form action= method=post>
21 <h2> login disini </h2>
22 Username : <input type = text name=user><br>
23 Password : <input type=password name=passwd><br>
24 </form>
25 </body>
26 </html>
27 <?}
28 ?>

Praktikum Pemrograman Web II-PHP 24


Soal 7.1. (session)
Susun program yang di dalamnya terdapat session untuk menyimpan informasi tanggal
sistem saat ini dalam sebuah aplikasi.

Praktikum Pemrograman Web II-PHP 25


LEMBAR JAWABAN

Praktikum Pemrograman Web II-PHP 26


Bab
Fungsi
8
Fungsi (function) merupakan serangkaian script/kode yang mempunyai kegunaan khusus
dan tertentu, merupakan seurutan atau serangkaian kode yang sering dipergunakan/dipakai.
Dengan adanya fungsi ini pemrograman dapat dipermudah karena tidak harus menulis
berulang-ulang .
Sintaks:
Function nama_fungsi(argumen)
{
Kode
}

Program berikut adalah latihan untuk penggunaan function sbb :


lat_fungsi1.php
1 <?php
2 echo "selamat datang di website PHP;
3 echo "<br>;
4 print(cetaktebal(ini latihan cetak tebal));
5
6 function cetaktebal($parameter1)
7 {
8 $strstring = <B>;
9 $strstring .= $parameter1;
10 $strstring .=</B>;
11 Return($strstring
12 }
13
14 ?>

Soal 8.1. (function)


Susun program yang di dalamnya terdapat function untuk membuat fungsi mengambil
tanggal saat ini dari pc/laptop anda.

Praktikum Pemrograman Web II-PHP 27


LEMBAR JAWABAN

Praktikum Pemrograman Web II-PHP 28


Bab
Object dan Class
9
Bagian utama dari sebuah program yang berorientasi objek adalah objects. Sebagai contoh,
sebuah mobil adalah objek. Sebuah mobil mempunyai properties atau bagian di alamnya,
seperti warna, mesin, roda, pintu dsb. Sebuah mobil juga dapat melakukan sesuatu (ada
sesuatu yang bisa dilakukan dengan mobil), seperti mengisi bensin, menyalakan mesin,
berjalan, mengerem dsb. Class merupakan penjelasan atau deskripsi dari object. Di dalam
class, terdapat penjelasan tentang suatu object termasuk properties yang dimilikinya serta
kelakuan atau method yang bisa dilakukan oleh object.

Program berikut adalah latihan untuk penggunaan class sbb :


lat_class1.php
1 <?php
2 class mobil
3 {
4 var $merk = "TOYOTA;
5 var $warna = "Merah";
6 var $harga = "25000000";
7
8 function gantiWarna ($warnaBaru)
9 {
10 $this->warna = $warnaBaru;
11 }
12
13 function tampilWarna ()
14 {
15 echo "Warna mobilnya : " . $this->warna;
16 }
17 }
18 $obja = new mobil();
19 $objb = new mobil();
20 echo "<b>Mobil pertama</b><br>";
21
$obja->tampilWarna();
22
23
echo "<br>Mobil pertama ganti warna<br>";
24 $obja->gantiWarna("Merah");
25 $obja->tampilWarna();
26 //
27 echo "<br><b>Mobil kedua</b><br>";
28 $objb->gantiWarna("Hijau");
29 $objb->tampilWarna();
30 ?>

Praktikum Pemrograman Web II-PHP 29


Soal 9.1. (class dan object)
Susun program yang di dalamnya terdapat class untuk membuat form input sederhana
mengenai daftar mahasiswa dikelas anda.

LEMBAR JAWABAN

Praktikum Pemrograman Web II-PHP 30


Bab
Mendefinisikan Database dan tabel
10
Basis data (atau database) adalah kumpulan informasi yang disimpan di dalam komputer
secara sistematik sehingga dapat diperiksa menggunakan suatu program komputer untuk
memperoleh informasi dari basis data tersebut (http://id.wikipedia.org/wiki/Database).
RDBMS atau Relationship Database Management System merupakan salah satu jenis
DBMS yang mendukung adanya relationship atau hubungan antar tabel.
MySQL adalah sebuah perangkat lunak sistem manajemen basis data SQL atau DBMS
yang multithread, multi-user sebagai perangkat lunak gratis di bawah lisensi GNU General
Public License (GPL).
Terdapat 2 (dua) jenis perintah SQL, yaitu :
1. DDL atau Data Definition Language
DDL merupakan perintah SQL yang berhubungan dengan pendefinisian suatu struktur
database, dalam hal ini database dan table. Beberapa perintah dasar yang termasuk DDL
ini antara lain :

CREATE

ALTER

RENAME

DROP

2. DML atau Data Manipulation Language


DML merupakan perintah SQL yang berhubungan dengan manipulasi atau pengolahan
data atau record dalam table. Perintah SQL yang termasuk dalam DML antara lain :

SELECT

INSERT

UPDATE

DELETE

Praktikum Pemrograman Web II-PHP 31


Program berikut adalah latihan untuk membuat database sbb :
Open phpmyadmin melalui browser dengan mengetik alamat
http://localhost/phpmyadmin/
Klik tombol SQL kemudian ketik perintah berikut : CREATE DATABASE
mahasiswa;

Program berikut adalah latihan untuk membuat tabel sbb :
lat_createtabel1.php
1 <?php
2 ob_start();
3 $host="localhost"; // Host name
4 $username="root"; // Mysql username
5 $password=""; // Mysql password
6 $db_name=" mahasiswa"; // Database name
7
8 mysql_connect("$host", "$username", "$password")or die("cannot connect");
9 mysql_select_db("$db_name")or die("cannot select DB");
10
11 $sql="CREATE TABLE mhs (
12 nim varchar(10) NOT NULL,
13 nama varchar(30) NOT NULL,
14 tgllahir date,
15 alamat text,
16 PRIMARY KEY(nim)
17 );";
18
19 $result=mysql_query($sql);
20 echo membuat tabel sukses;echo exit;
21
22 ob_end_flush();
23 ?>
24

Soal 10.1. (Create tabel)


Susun program yang di dalamnya terdapat perintah untuk membuat tabel jurusan, tabel
mata kuliah dengan mendefinisikan kolom-kolom (field) yang sesuai dengan pengetahuan
anda.

Praktikum Pemrograman Web II-PHP 32


Bab
Membuat menu login dan menu utama
11
Sebelum membuat aplikasi sederhana terlebih dahulu kita akan membuat menu login dan
menu-menu yang akan ditampilkan dalam aplikasi kita nanti. Berikut ini adalah program
untuk membuat menu login sbb :

Program berikut adalah latihan untuk membuat menu login sbb :


index.php
1 <table width="300" border="0" align="center" cellpadding="0" cellspacing="1"
2 bgcolor="#CCCCCC">
3 <tr>
4 <form name="form1" method="post" action="checklogin.php">
5 <td>
6 <table width="100%" border="0" cellpadding="3" cellspacing="1" bgcolor="#FFFFFF">
7 <tr>
8 <td colspan="3"><strong>Login Anggota </strong></td>
9 </tr>
10 <tr>
11 <td width="78">Username</td>
12 <td width="6">:</td>
13 <td width="294"><input name="myusername" type="text" id="myusername"></td>
14 </tr>
15 <tr>
16 <td>Password</td>
17 <td>:</td>
18 <td><input name="mypassword" type="password" id="mypassword"></td>
19 </tr>
20 <tr>
21 <td>&nbsp;</td>
22 <td>&nbsp;</td>
23 <td><input type="submit" name="Submit" value="Login"></td>
24 </tr>
25 </table>
26 </td>
27 </form>
28 </tr>
29 </table>
Perhatikan pada baris ke 4 disitu terdapat perintah action = checklogin.php yang berarti form
akan dijalankan dengan mengeksekusi file checklogin.php, adapun source codenya dapat dilihat
pada tabel dibawah :

Praktikum Pemrograman Web II-PHP 33


checklogin.php
1 <?php
2 ob_start();
3 $host="localhost"; // Host name
4 $username="root"; // Mysql username
5 $password=""; // Mysql password
6 $db_name="db_personil"; // Database name
7 $tbl_name="members"; // Table name
8 // Connect to server and select databse.
9 mysql_connect("$host", "$username", "$password")or die("cannot connect");
10 mysql_select_db("$db_name")or die("cannot select DB");
11 // Define $myusername and $mypassword
12 $myusername=$_POST['myusername'];
13 $mypassword=$_POST['mypassword'];
14 $sql="SELECT * FROM $tbl_name WHERE username='$myusername' and
15 password='$mypassword'";
16 $result=mysql_query($sql);
17 //echo $sql;echo exit;
18 // Mysql_num_row is counting table row
19 $count=mysql_num_rows($result);
20 // If result matched $myusername and $mypassword, table row must be 1 row
21 if($count==1){
22 // Register $myusername, $mypassword and redirect to file "login_success.php"
23 //echo "Username dan password anda valid";
24 session_register("myusername");
25 session_register("mypassword");
26
27 header("location:login_success.php");
28 }
29 else {
30 echo "Wrong Username or Password";
31 }
32 ob_end_flush();
33 ?>
Pada baris 27 perintah diatas diperlukan file login_success.php yang berarti bila user name
dan password di isi benar maka akan mengeksekusi file login_success.php

login_success.php
1
2 <html>
3 <body>
4 Login Successful
5 </body>
6 </html>

Praktikum Pemrograman Web II-PHP 34


Soal 11.1. (Create login dan menu utama)
Susun program yang di dalamnya terdapat perintah untuk membuat menu logout dan menu
utama dari sebuah aplikasi.

LEMBAR JAWABAN

Praktikum Pemrograman Web II-PHP 35


Bab
Menampilkan data di web page
12
Pada praktek kali kita akan menampilkan data dari sebuah tabel harga penjualan dengan
menggunakan konsep class sebagai berikut :

tabelharga.php
1 <?
2 require_once "clstabelharga.php";
3 $mharga = new harga();
4 $mod = $_REQUEST['mod'];
5 switch ($mod)
6 {
7 default :
8 $mharga -> showHarga();
9 break;
14 }
15 ?>

Perhatikan baris ke dua require_once clstabelharga.php yang berarti dalam


menjalankan file tabelharga.php diperlukan file yang namanya clstabelharga.php untuk
itu sebelum program di eksekusi terlebih dahulu kita membuat file dengan nama
clstabelharga.php dengan script seperti berikut :
clstabelharga.php
1 <?php
2 require_once("clsUtil.php");
3
4 class harga extends Util
{
5 function harga()
6 {
7 require_once "koneksi.php";
8 require_once "user_cek.php";
9 }
10
11 function showHarga()
12 {
13 global $db;
14 global $FOOTER_NOTES,$HEADER_NOTES,$TITLE,$PHP_SELF;
global $awal,$jumrow;
15
if ($awal) {
16 $start=$awal;
17 }else{
18 $start=0;
19 }
20 if ($jumrow) {
21 $numrows=$jumrow;
22 }else{
23 $numrows=ITEM_PER_PAGE;
24 }

Praktikum Pemrograman Web II-PHP 36


25 $smarty = new Smarty;
26 $USER = $_SESSION[usernamesession];
27 $smarty->assign("user", $USER);
28 $smarty->assign("HEADER_NOTES", $HEADER_NOTES);
$smarty->assign("FOOTER_NOTES", $FOOTER_NOTES);
29 $smarty->assign("title", $TITLE);
30 $smarty->assign("self_url", $PHP_SELF);
31 $keyword = empty($_POST['keyword']) ? $_REQUEST['keyword'] : $_POST['keyword'];
32 $keyword = str_replace("'","",stripslashes($keyword));
33 $to_search = str_replace("\"","",urlencode($keyword));
34 $smarty -> assign("keyword",$keyword);
35 $smarty -> assign("to_search",$to_search);
36 $sqlUser = "PERNYATAAN SQL STATEMENT UNTUK MENAMPILKAN DATA";
37
38 $rs=mysql_query($sqlUser);
39 if(mysql_num_rows($rs) < 1)
40 {
41 $kosong = 'kosong';
42 $pos_list[] = array(
43 'no'=>$kosong,
44 'id'=>$kosong,
45 'kode'=>$kosong,
46 'asal'=>$kosong,
47 'tujuan'=>$kosong,
48 'jenis'=>$kosong,
'kirim'=>$kosong,
49 'harga'=>$kosong
50 );
51 }
52 else
53 {
54 $no = $awal;
55
56 while($row = (mysql_fetch_assoc($rs))){
57 ++$no;
58
$pos_list[] = array(
59 'no'=>$no,
60 'id'=>$row['id'],
61 'kode'=>$row['kode'],
62 'asal'=>$row['asal'],
63 'tujuan'=>$row['tujuan'],
64 'jenis'=>$row['jenis'],
65 'kirim'=>$row['kirim'],
66 'harga'=>number_format($row['harga'])
67 );
68 }
$nomor = $no;
69 }
70 $smarty->assign("jmlrcd", $nomor);
71 $smarty->assign("pos", $pos_list);
72 $smarty->display("tabelharga.html");
73 }
74 }
75 ?>

Praktikum Pemrograman Web II-PHP 37


Kemudian buat file tabelharga.html pada folder templates sebagai berikut :
tabelharga.html
1 <!DOCTYPE html>
2 <html lang="en">
3 <head>
4 <meta charset="utf-8">
5 <title>{$title}</title>
6 <meta name="viewport" content="width=device-width, initial-scale=1.0">
7 <!-- Bootstrap -->
8 <link href="css/bootstrap.css" rel="stylesheet">
9 <link href="css/bootstrap-responsive.css" rel="stylesheet">
10 <link href="css/docs.css" rel="stylesheet">
11 <link href="css/bootstrap.min.css" rel="stylesheet" media="screen">
12 <link href="css/prettify.css" rel="stylesheet">
13 <link href="css/smartpaginator.css" rel="stylesheet" type="text/css" media="screen"
14 charset="utf-8"/>
15 </head>
16 {literal}
17 <script src="js/bootstrap.min.js"></script>
18 <script src="js/jquery-1.4.4.min.js" type="text/javascript"></script>
19 <script src="js/smartpaginator.js" type="text/javascript"></script>
20 <script src="js/paging.js" type="text/javascript"></script>
21 <!--<script src="http://code.jquery.com/jquery.js"></script>-->
22 <script type="text/javascript">
23 var _gaq = _gaq || [];
24 _gaq.push(['_setAccount', 'UA-146052-10']);
25 _gaq.push(['_trackPageview']);
26 (function() {
27 var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
28 ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-
29 analytics.com/ga.js';
30 var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
31 })();
32 </script>
33 {/literal}
34 <body data-spy="scroll" data-target=".bs-docs-sidebar">
35 <!-- Navbar
36 ================================================== -->
37 <div class="navbar navbar-inverse navbar-fixed-top">
38 <div class="navbar-inner">
39 <div class="container">
40 <button type="button" class="btn btn-navbar" data-toggle="collapse" data-target=".nav-
41 collapse">
42 <span class="icon-bar"></span>
43 <span class="icon-bar"></span>
44 <span class="icon-bar"></span>
45 </button>
46 <!--<a class="brand" href="./index.html">Bootstrap</a>-->
47 <div class="nav-collapse collapse">
48 <ul class="nav">
49 <li class="">
50 <a href="index.php?mod=showMenu">Home</a>
51 </li>
52 <li class="">
53 <a href="kota.php">Master Kota</a>
54 </li>
55 <li class="">
56 <a href="jenis.php">Master Jenis Kendaraan</a>
57 </li>

Praktikum Pemrograman Web II-PHP 38


58 <li class="">
59 <a href="carakirim.php">Master Cara Kirim</a>
60 </li>
61 <li class="active">
62 <a href="tabelharga.php">Tabel Harga</a>
63 </li>
64 <li class="">
65 <a href="tabelorder.php">Tabel Order</a>
66 </li>
67 <li class="">
68 <a href="yahoo.php">Yahoo Email</a>
69 </li>
70 <li class="">
71 <a href="index.php?mod=logout">LOGOUT</a>
72 </li>
73 </ul>
74 </div>
75 </div>
76 </div>
77 </div>
78 <!-- Subhead
79 ================================================== -->
80 <header class="jumbotron subhead" id="overview">
81 <div class="container">
82 <h1>Tabel Harga</h1>
83 <p class="lead">Daftar Biaya Pengiriman Sesuai Dengan Jenis Pengiriman</p>
84 </div>
85 </header>
86 <div class="container">
87 <form name="Form">
88 <input type=hidden name="jmlrcd" value="{$jmlrcd}">
89 <table class="table" style="margin-bottom:0px;">
90 <tr>
91 <td align=left><div class="input-append">
92 <form action=tabelharga.php method=post><input class="span2"
93 type=text name=keyword size=21 value='{$keyword}' placeholder="Cari..."> <input class="btn"
94 type="submit" value="Cari"></form>
95 </div></td>
96 <td><a class="btn"
97 href="tabelharga.php?mod=tambah">Tambah</a></td></tr>
98 </table>
99 <table id="mt" class="table table-striped table-bordered table-hover">
100 <thead>
101 <!--<button style="margin-bottom:10px;" class="btn"
102 type="button">Tambah</button>-->
103 <!-- style="background-color:silver;" -->
104 <tr>
105 <th>No</th>
106 <th>Kode</th>
107 <th>Kota Asal</th>
108 <th>Kota Tujuan</th>
109 <th>Jenis Cargo</th>
110 <th>Cara Kirim</th>
111 <th>Tarif</th>
112 <th>Actions</th>
113 </tr>
114 </thead>
115 <tbody>
116 {section name=detail loop=$pos}

Praktikum Pemrograman Web II-PHP 39


117 <tr>
118 <TD VALIGN=TOP align=center>{$pos[detail].no}</TD>
119 <TD VALIGN=TOP align=center>{$pos[detail].kode}</TD>
120 <TD VALIGN=TOP align=LEFT>{$pos[detail].asal}</TD>
121 <TD VALIGN=TOP align=LEFT>{$pos[detail].tujuan}</TD>
122 <TD VALIGN=TOP align=LEFT>{$pos[detail].jenis}</TD>
123 <TD VALIGN=TOP align=LEFT>{$pos[detail].kirim}</TD>
124 <TD VALIGN=TOP STYLE="text-align:right;">{$pos[detail].harga}</TD>
125 {if $authenticated == 1}
126 <TD align=center>
127 <a class="btn btn-mini btn-success"
128 href="tabelharga.php?mod=ubah&id={$pos[detail].id}">Ubah</a>
129 <a class="btn btn-mini btn-danger" onclick="return confirm('Anda Yakin?');"
130 href="tabelharga.php?mod=hapus&id={$pos[detail].id}">Hapus</a>
131 </TD>
132 </tr>
133 {/if}
134 {/section}
135 </tbody>
136 </table>
137 <div id="green" style="margin: auto;"></div>
138 </div>
139 </body>
140 </html>

Soal 12.1. (Program menampilkan data di web page)


Susun program yang di dalamnya terdapat class untuk menampilkan data produk dari
sebuah database dalam sebuah aplikasi.

LEMBAR JAWABAN

Praktikum Pemrograman Web II-PHP 40


Bab
Menyisipkan data di web page
13
Untuk menyisipkan data kedalam tabel dari sebuah database dalam pemrograman php ini
dapat dilakukan dengan perintah/program sebagai berikut :
Dalam praktek kali ini kita masih menggunakan tabel yang sama yaitu tabel harga, adapun
langkah-langkah yang akan ditempuh sbb:
1. Memodifikasi tabelharga.php dan clstabelharga.php dengan menambahkan beberapa
fungsi
2. Membuat User Interface (tampilan layar) form input harga.

tabelharga.php
1 <?
2 require_once "clstabelharga.php";
3 $mharga = new harga();
4 $mod = $_REQUEST['mod'];
5 switch ($mod)
6 {
7 case "simpan":
8 $mharga -> savePos();
9 break;
10
11 case "tambah":
12 $mharga -> showAddForm();
13 break;
14
15 default :
16 $mharga -> showHarga();
17 break;
18 }
19 ?>

Dari program diatas kita tambahkan dua buah case (kasus) yaitu kasus untuk tambah data
yang bertujuan untuk menampilkan form input dan kasus simpan yang berguna untuk
menyimpan data dari form input kedalam tabel dari sebuah database.

clstabelharga.php
1 <?php
2 require_once("clsUtil.php");
3
4 class harga extends Util
5 {
6 function harga()
7 {
8 require_once "koneksi.php";
9 require_once "user_cek.php";
10 }
11
12

Praktikum Pemrograman Web II-PHP 41


13 function showAddForm()
14 {
15 $smarty = new Smarty;
16 $smarty->display("tabelharga_add.html");
17 }
18
19 function savePos()
20 {
21 global $db;
22 $kode = $_POST['kode'];
23 $asal = $_POST['asal'];
24 $tujuan = $_POST['tujuan'];
25 $sql = "insert into tab_harga (kode, kotaasal, kotatujuan)
26 values ('$kode','$asal','$tujuan')";
27 $rs=mysql_query($sql);
28 if($rs)
29 $inserted = 1;
30 else
31 $inserted = 0;
32 if($inserted)
33 {
34 echo "<script language=javascript>
35 alert('Terima Kasih, berhasil menyimpan data');
36 window.location='tabelharga.php';
37 </script>";
38 }
39 else
40 echo "<script language=javascript>
41 alert('Gagal menyimpan data');
42 window.location='tabelharga.php';
43 </script>";
44 }
45
46
47 function showHarga()
48 {
49 global $db;
50 global $FOOTER_NOTES,$HEADER_NOTES,$TITLE,$PHP_SELF;
51 global $awal,$jumrow;
52 if ($awal) {
53 $start=$awal;
54 }else{
55 $start=0;
56 }
57 if ($jumrow) {
58 $numrows=$jumrow;
59 }else{
60 $numrows=ITEM_PER_PAGE;
61 }
62 $smarty = new Smarty;
63 $USER = $_SESSION[usernamesession];
64 $smarty->assign("user", $USER);
65 $smarty->assign("HEADER_NOTES", $HEADER_NOTES);
66 $smarty->assign("FOOTER_NOTES", $FOOTER_NOTES);
67 $smarty->assign("title", $TITLE);
68 $smarty->assign("self_url", $PHP_SELF);
69 $keyword = empty($_POST['keyword']) ? $_REQUEST['keyword'] : $_POST['keyword'];
70 $keyword = str_replace("'","",stripslashes($keyword));
71 $to_search = str_replace("\"","",urlencode($keyword));

Praktikum Pemrograman Web II-PHP 42


72 $smarty -> assign("keyword",$keyword);
73 $smarty -> assign("to_search",$to_search);
74 $sqlUser = "PERNYATAAN SQL STATEMENT UNTUK MENAMPILKAN DATA";
75
76 $rs=mysql_query($sqlUser);
77
78 if(mysql_num_rows($rs) < 1)
79 {
80 $kosong = 'kosong';
81 $pos_list[] = array(
82 'no'=>$kosong,
83 'id'=>$kosong,
84 'kode'=>$kosong,
85 'asal'=>$kosong,
86 'tujuan'=>$kosong,
87 'jenis'=>$kosong,
88 'kirim'=>$kosong,
89 'harga'=>$kosong
90 );
91 }
92 else
93 {
94 $no = $awal;
95
96 while($row = (mysql_fetch_assoc($rs))){
97 ++$no;
98
99 $pos_list[] = array(
100 'no'=>$no,
101 'id'=>$row['id'],
102 'kode'=>$row['kode'],
103 'asal'=>$row['asal'],
104 'tujuan'=>$row['tujuan'],
105 'jenis'=>$row['jenis'],
106 'kirim'=>$row['kirim'],
107 'harga'=>number_format($row['harga'])
108 );
109 }
110 $nomor = $no;
111 }
112 $smarty->assign("jmlrcd", $nomor);
113 $smarty->assign("pos", $pos_list);
114 $smarty->display("tabelharga.html");
115 }
116 }
117 ?>

Praktikum Pemrograman Web II-PHP 43


Kemudian buat file tabelharga_add.html pada folder templates sebagai berikut :
tabelharga_add.html
1 <!DOCTYPE html>
2 <html lang="en">
3 <head>
4 <meta charset="utf-8">
5 <title>{$title}</title>
6 <meta name="viewport" content="width=device-width, initial-scale=1.0">
7 <!-- Bootstrap -->
8 <link href="css/bootstrap.css" rel="stylesheet">
9 <link href="css/bootstrap-responsive.css" rel="stylesheet">
10 <link href="css/docs.css" rel="stylesheet">
11 <link href="css/bootstrap.min.css" rel="stylesheet" media="screen">
12 <link href="css/prettify.css" rel="stylesheet">
13 </head>
14 {literal}
15 <script src="js/bootstrap.min.js"></script>
16 <!--<script src="http://code.jquery.com/jquery.js"></script>-->
17 <script type="text/javascript">
18 var _gaq = _gaq || [];
19 _gaq.push(['_setAccount', 'UA-146052-10']);
20 _gaq.push(['_trackPageview']);
21 (function() {
22 var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
23 ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-
24 analytics.com/ga.js';
25 var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
26 })();
27 </script>
28 {/literal}
29 <body data-spy="scroll" data-target=".bs-docs-sidebar">
30 <!-- Navbar
31 ================================================== -->
32 <div class="navbar navbar-inverse navbar-fixed-top">
33 <div class="navbar-inner">
34 <div class="container">
35 <button type="button" class="btn btn-navbar" data-toggle="collapse" data-target=".nav-
36 collapse">
37 <span class="icon-bar"></span>
38 <span class="icon-bar"></span>
39 <span class="icon-bar"></span>
40 </button>
41 <!--<a class="brand" href="./index.html">Bootstrap</a>-->
42 <div class="nav-collapse collapse">
43 <ul class="nav">
44 <li class="">
45 <a href="index.php?mod=showMenu">Home</a>
46 </li>
47 <li class="active">
48 <a href="kota.php">Master Kota</a>
49 </li>
50 <li class="">
51 <a href="jenis.php">Master Jenis Kendaraan</a>
52 </li>
53 <li class="">
54 <a href="carakirim.php">Master Cara Kirim</a>
55 </li>
56 <li class="">
57 <a href="tabelharga.php">Tabel Harga</a>

Praktikum Pemrograman Web II-PHP 44


58 </li>
59 <li class="">
60 <a href="tabelorder.php">Tabel Order</a>
61 </li>
62 <li class="">
63 <a href="yahoo.php">Yahoo Email</a>
64 </li>
65 <li class="">
66 <a href="index.php?mod=logout">LOGOUT</a>
67 </li>
68 </ul>
69 </div>
70 </div>
71 </div>
72 </div>
73 <!-- Subhead
74 ================================================== -->
75 <header class="jumbotron subhead" id="overview">
76 <div class="container">
77 <h1>Master Harga</h1>
78 <p class="lead">Daftar Harga dan Wilayah pengiriman</p>
79 </div>
80 </header>
81
82 <div class="container">
83 <form style="margin-top:10px;" class="form-horizontal" method="POST"
84 action="tabelharga.php?mod=simpan">
85 <div class="control-group">
86 <label class="control-label" for="kota">Kode</label>
87 <div class="controls">
88 <input type="text" name="kode" placeholder="Kode">
89 </div>
90 </div>
91 <div class="control-group">
92 <label class="control-label">Kota Asal</label>
93 <div class="controls">
94 <input type="text" name="asal" placeholder="Kota Asal">
95 </div>
96 <div class="control-group">
97 <label class="control-label">Kota Tujuan</label>
98 <div class="controls">
99 <input type="text" name="tujuan" placeholder="tujuan">
100 </div>
101 </div>
102 <div class="control-group">
103 <div class="controls">
104 <button type="submit" class="btn btn-primary">Simpan</button>
105 <input type=button value="Batal" onClick="javascript:history.go(-1)" class="btn">
106 </div>
107 </div>
108 </form>
109 </div>
110 </body>
111 </html>
112

Praktikum Pemrograman Web II-PHP 45


Soal 13.1. (Program menyisipkan data di web page)
Susun program yang di dalamnya terdapat class untuk menyisipkan data pada tabel produk
dari sebuah database dalam sebuah aplikasi.

LEMBAR JAWABAN

Praktikum Pemrograman Web II-PHP 46


Bab
Mengupdate data di web page
14
Untuk mengupdate data kedalam tabel dari sebuah database dalam pemrograman php ini
dapat dilakukan dengan perintah/program sebagai berikut :
Dalam praktek kali ini kita masih menggunakan tabel yang sama yaitu tabel harga, adapun
langkah-langkah yang akan ditempuh sbb:
1. Memodifikasi tabelharga.php dan clstabelharga.php dengan menambahkan beberapa
fungsi
2. Membuat User Interface (tampilan layar) form edit harga.

tabelharga.php
1 <?
2 require_once "clstabelharga.php";
3 $mharga = new harga();
4 $mod = $_REQUEST['mod'];
5 switch ($mod)
6 {
7 case "ubah":
8 $mharga -> showPosEditForm();
9 break;
10
11 case "editproses":
12 $mharga -> saveeditpos();
13 break;
14
15 case "simpan":
16 $mharga -> savePos();
17 break;
18
19 case "tambah":
20 $mharga -> showAddForm();
21 break;
22
23 default :
24 $mharga -> showHarga();
25 break;
26 }
27 ?>

Dari program diatas kita tambahkan dua buah case (kasus) yaitu kasus untuk ubah data
yang bertujuan untuk menampilkan form input dan kasus editproses yang berguna untuk
menyimpan data dari form input kedalam tabel dari sebuah database.

Praktikum Pemrograman Web II-PHP 47


clstabelharga.php
1 <?php
2 require_once("clsUtil.php");
3
4 class harga extends Util
5 {
6 function harga()
7 {
8 require_once "koneksi.php";
9 require_once "user_cek.php";
10 }
11
12
13 function showAddForm()
14 {
15 $smarty = new Smarty;
16 $smarty->display("tabelharga_add.html");
17 }
18
19 function savePos()
20 {
21 global $db;
22 $kode = $_POST['kode'];
23 $asal = $_POST['asal'];
24 $tujuan = $_POST['tujuan'];
25 $sql = "insert into tab_harga (kode, kotaasal, kotatujuan)
26 values ('$kode','$asal','$tujuan')";
27 $rs=mysql_query($sql);
28 if($rs)
29 $inserted = 1;
30 else
31 $inserted = 0;
32 if($inserted)
33 {
34 echo "<script language=javascript>
35 alert('Terima Kasih, berhasil menyimpan data');
36 window.location='tabelharga.php';
37 </script>";
38 }
39 else
40 echo "<script language=javascript>
41 alert('Gagal menyimpan data');
42 window.location='tabelharga.php';
43 </script>";
44 }
45
46 function showPosEditForm()
47 {
48 global $id,$db;
49 global $FOOTER_NOTES,$HEADER_NOTES,$TITLE;
50 $id=$_GET['id'];
51
52 $smarty = new Smarty;
53 $USER = $_SESSION[usernamesession];
54 $smarty->assign("user", $USER);
55 $smarty->assign("HEADER_NOTES", $HEADER_NOTES);
56 $smarty->assign("FOOTER_NOTES", $FOOTER_NOTES);
57 $smarty->assign("title", $TITLE);
58

Praktikum Pemrograman Web II-PHP 48


59 $sql = "SELECT * FROM tab_harga WHERE kode = '$id'";
60 $rs=mysql_query($sql);
61
62 if (mysql_num_rows($rs) > 0)
63 {
64
65 $pos_list = mysql_fetch_array($rs);
66 $asal = $pos_list['kotaasal'];
67 $tujuan = $pos_list['kotatujuan'];
68 $jenis = $pos_list['id_jenis'];
69 $carakirim = $pos_list['id_carakirim'];
70 $smarty->assign("kode", $id);
71 $smarty->assign("asal", $asal);
72 $smarty->assign("tujuan", $pos_list['kotatujuan']);
73 }
74
75 $smarty->display("tabelharga_edit.html");
76 }
77
78 function saveeditpos()
79 {
80 global $db;
81 $kode = $_POST['kode'];
82 $asal = $_POST['asal'];
83 $tujuan = $_POST['tujuan'];
84 $sql = "update tab_harga set kotaasal='$asal',
85 kotatujuan='$tujuan' where kode='$kode'";
86 $rs=mysql_query($sql);
87 if($rs)
88 $inserted = 1;
89 else
90 $inserted = 0;
91 if($inserted)
92 {
93 echo "<script language=javascript>
94 alert('Terima Kasih, berhasil menyimpan data');
95 window.location='tabelharga.php';
96 </script>";
97 }
98 else
99 echo "<script language=javascript>
100 alert('Gagal menyimpan data');
101 window.location='tabelharga.php';
102 </script>";
103 }
104
105 function showHarga()
106 {
107 global $db;
108 global $FOOTER_NOTES,$HEADER_NOTES,$TITLE,$PHP_SELF;
109 global $awal,$jumrow;
110 if ($awal) {
111 $start=$awal;
112 }else{
113 $start=0;
114 }
115 if ($jumrow) {
116 $numrows=$jumrow;
117 }else{

Praktikum Pemrograman Web II-PHP 49


118 $numrows=ITEM_PER_PAGE;
119 }
120 $smarty = new Smarty;
121 $USER = $_SESSION[usernamesession];
122 $smarty->assign("user", $USER);
123 $smarty->assign("HEADER_NOTES", $HEADER_NOTES);
124 $smarty->assign("FOOTER_NOTES", $FOOTER_NOTES);
125 $smarty->assign("title", $TITLE);
126 $smarty->assign("self_url", $PHP_SELF);
127 $keyword = empty($_POST['keyword']) ? $_REQUEST['keyword'] : $_POST['keyword'];
128 $keyword = str_replace("'","",stripslashes($keyword));
129 $to_search = str_replace("\"","",urlencode($keyword));
130 $smarty -> assign("keyword",$keyword);
131 $smarty -> assign("to_search",$to_search);
132 $sqlUser = "PERNYATAAN SQL STATEMENT UNTUK MENAMPILKAN DATA";
133
134 $rs=mysql_query($sqlUser);
135
136 if(mysql_num_rows($rs) < 1)
137 {
138 $kosong = 'kosong';
139 $pos_list[] = array(
140 'no'=>$kosong,
141 'id'=>$kosong,
142 'kode'=>$kosong,
143 'asal'=>$kosong,
144 'tujuan'=>$kosong,
145 'jenis'=>$kosong,
146 'kirim'=>$kosong,
147 'harga'=>$kosong
148 );
149 }
150 else
151 {
152 $no = $awal;
153
154 while($row = (mysql_fetch_assoc($rs))){
155 ++$no;
156
157 $pos_list[] = array(
158 'no'=>$no,
159 'id'=>$row['id'],
160 'kode'=>$row['kode'],
161 'asal'=>$row['asal'],
162 'tujuan'=>$row['tujuan'],
163 'jenis'=>$row['jenis'],
164 'kirim'=>$row['kirim'],
165 'harga'=>number_format($row['harga'])
166 );
167 }
168 $nomor = $no;
169 }
170 $smarty->assign("jmlrcd", $nomor);
171 $smarty->assign("pos", $pos_list);
172 $smarty->display("tabelharga.html");
173 }
174 }
175 ?>

Praktikum Pemrograman Web II-PHP 50


Kemudian buat file tabelharga_edit.html pada folder templates sebagai berikut :
tabelharga_edit.html
1 <!DOCTYPE html>
2 <html lang="en">
3 <head>
4 <meta charset="utf-8">
5 <title>{$title}</title>
6 <meta name="viewport" content="width=device-width, initial-scale=1.0">
7 <!-- Bootstrap -->
8 <link href="css/bootstrap.css" rel="stylesheet">
9 <link href="css/bootstrap-responsive.css" rel="stylesheet">
10 <link href="css/docs.css" rel="stylesheet">
11 <link href="css/bootstrap.min.css" rel="stylesheet" media="screen">
12 <link href="css/prettify.css" rel="stylesheet">
13 </head>
14 {literal}
15 <script src="js/bootstrap.min.js"></script>
16 <!--<script src="http://code.jquery.com/jquery.js"></script>-->
17 <script type="text/javascript">
18 var _gaq = _gaq || [];
19 _gaq.push(['_setAccount', 'UA-146052-10']);
20 _gaq.push(['_trackPageview']);
21 (function() {
22 var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
23 ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-
24 analytics.com/ga.js';
25 var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
26 })();
27 </script>
28 {/literal}
29 <body data-spy="scroll" data-target=".bs-docs-sidebar">
30 <!-- Navbar
31 ================================================== -->
32 <div class="navbar navbar-inverse navbar-fixed-top">
33 <div class="navbar-inner">
34 <div class="container">
35 <button type="button" class="btn btn-navbar" data-toggle="collapse" data-target=".nav-
36 collapse">
37 <span class="icon-bar"></span>
38 <span class="icon-bar"></span>
39 <span class="icon-bar"></span>
40 </button>
41 <!--<a class="brand" href="./index.html">Bootstrap</a>-->
42 <div class="nav-collapse collapse">
43 <ul class="nav">
44 <li class="">
45 <a href="index.php?mod=showMenu">Home</a>
46 </li>
47 <li class="active">
48 <a href="kota.php">Master Kota</a>
49 </li>
50 <li class="">
51 <a href="jenis.php">Master Jenis Kendaraan</a>
52 </li>
53 <li class="">
54 <a href="carakirim.php">Master Cara Kirim</a>
55 </li>

Praktikum Pemrograman Web II-PHP 51


56 <li class="">
57 <a href="tabelharga.php">Tabel Harga</a>
58 </li>
59 <li class="">
60 <a href="tabelorder.php">Tabel Order</a>
61 </li>
62 <li class="">
63 <a href="yahoo.php">Yahoo Email</a>
64 </li>
65 <li class="">
66 <a href="index.php?mod=logout">LOGOUT</a>
67 </li>
68 </ul>
69 </div>
70 </div>
71 </div>
72 </div>
73 <!-- Subhead
74 ================================================== -->
75 <header class="jumbotron subhead" id="overview">
76 <div class="container">
77 <h1>Master Harga</h1>
78 <p class="lead">Daftar Harga dan Wilayah pengiriman</p>
79 </div>
80 </header>
81
82 <div class="container">
83 <form style="margin-top:10px;" class="form-horizontal" method="POST"
84 action="tabelharga.php?mod=editproses">
85 <div class="control-group">
86 <label class="control-label" for="kota">Kode</label>
87 <div class="controls">
88 <input type="text" name="kode" placeholder="Kode" value="{$kode}">
89 </div>
90 </div>
91 <div class="control-group">
92 <label class="control-label">Kota Asal</label>
93 <div class="controls">
94 <input type="text" name="asal" placeholder="Kota Asal" value="{$asal}" >
95 </div>
96 <div class="control-group">
97 <label class="control-label">Kota Tujuan</label>
98 <div class="controls">
99 <input type="text" name="tujuan" placeholder="tujuan" value="{$tujuan}">
100 </div>
101 </div>
102 <div class="control-group">
103 <div class="controls">
104 <button type="submit" class="btn btn-primary">Simpan</button>
105 <input type=button value="Batal" onClick="javascript:history.go(-1)" class="btn">
106 </div>
107 </div>
108 </form>
109 </div>
110 </body>
111 </html>
112

Praktikum Pemrograman Web II-PHP 52


Soal 13.1. (Program mengupdate data di web page)
Susun program yang di dalamnya terdapat class untuk mengupdate data pada tabel produk
dari sebuah database dalam sebuah aplikasi.

Praktikum Pemrograman Web II-PHP 53


LEMBAR JAWABAN

Praktikum Pemrograman Web II-PHP 54


KARTU PESERTA PRAKTIKUM
PEMROGRAMAN WEB II

NAMA MAHASISWA :
NIM :

TANGGAL NILAI TANDA


NO PERCOBAAN TANGA
ASISTEN

10

11

12

Praktikum Pemrograman Web II-PHP 55


13

14

Mengetahui,
Dosen pengampu

----------------------------

Praktikum Pemrograman Web II-PHP 56