Modul Praktikum - PHP MySQL v1.1

46

Click here to load reader

Transcript of Modul Praktikum - PHP MySQL v1.1

Page 1: Modul Praktikum - PHP MySQL v1.1

Departemen Komunikasi dan Informatika Japan International Cooperation Agency Republik Indonesia

DIKLAT DATABASE DAN APLIKASI

Praktikum:Aplikasi PHP MySQL

Page 2: Modul Praktikum - PHP MySQL v1.1

Modul ini disusun untuk Diklat Database dan Aplikasi

Tahun 2005. Dapat dikutip sebagian atau seluruh isinya asal dengan

mencantumkan sumbernya.

Judul Modul:

Praktikum :

APLIKASI PHP MySQL

Disusun Oleh:

Muhammad Muchlis,

Gelar Wirabuana*)

*) Penyusun adalah Konsultan di bidang Teknologi Informasi dan telah mengajar di

beberapa diklat bidang TIK bagi aparatur pemerintah. Bekerja di Chelonind

Systems, Bandung.

E-mail : [email protected], [email protected]

Telp/Fax : 022 – 7301276

Page 3: Modul Praktikum - PHP MySQL v1.1

Daftar Isi

I. Data Access 1

1.1 Koneksi PHP ke Database MySQL 1

1.2 Fungsi-fungsi MySQL di PHP 1

II. Implementasi fungsi-fungsi MySQL 2

2.1 Fungsi Koneksi, Seleksi Database dan Tutup Koneksi 2

2.2 Fungsi Query , Fetch Object dan Free Result 3

III. Implementasi DML di PHP MySQL 4

3.1 Aplikasi Kepegawaian 4

3.2 Pembuatan Database Kepegawaian 4

3.3 Koneksi ke MySQL Server 5

3.4 Membuat Database Kepegawaian. 5

3.5 Menggunakan Database Kepegawaian / Seleksi Database 5

3.6 Table-Tabel Database Kepegawaian 5

3.7 Tabel Golongan 6

3.8 Tabel Satker 6

3.9 Tabel Jabatan 7

3.10 Tabel Pegawai. 8

IV. Pembuatan Script Aplikasi kepegawaian 9

4.1 Halaman Index kepegawaian. 9

4.2 Script Open Koneksi ke Database MySQL 10

4.3 Script Tutup Koneksi Database 10

4.4 Halaman Form Golongan 10

4.5 Halaman Form Satker 14

4.6 Halaman Form Jabatan 18

4.7 Halaman Form Pegawai 23

4.8 Halaman Report Gaji 33

V. Daftar Pustaka 36

Page 4: Modul Praktikum - PHP MySQL v1.1

Praktikum – PHP MySQL 1

I. Data Access

I.1 Koneksi PHP ke Database MySQL

Ketika sebuah Aplikasi Web memerlukan media penyimpanan maka engine PHP

memerlukan sebuah konektifitas ke dalam database server dalam hal ini

dinamakan Data Access, Data Access dianalogikan sebagai jembatan

penghubung dari sebuah database ke PHP.

Sebuah contoh script sederhana untuk koneksi PHP ke Database MySQL :

Script MySQL_connect diatas dinamakan Fungsi. Ketika menuliskan

sebuah fungsi harus di beri tanda kurung seperti di atas, dimana di dalam

kurung ini ada sebuah Argumen yang harus di isi.

I.2 Fungsi-fungsi MySQL di PHP

Di bawah ini merupakan Fungsi-fungsi MySQL di PHP yang terpenting.

Nama Fungsi Keterangan

mysql_connect Fungsi untuk koneksi ke Database MySQL Server

mysql_close Menutup Koneksi Database

mysql_select_db Mengseleksi DataBase Yang akan digunakan

mysql_query Mengeksekusi Sebuah Script SQL

mysql_fetch_object Menampilkan Sebuah Nilai objek yang telah di eksekusi

oleh Query

Depkominfo RI - JICA

PHP Data

Access

Data Base

MYSQL

WebServerServer API

Web

Browser

<?

mysql_connect(string NamaServer,string UserName,string Password);

?>

Page 5: Modul Praktikum - PHP MySQL v1.1

Praktikum – PHP MySQL 2

mysql_free_result Membersihkan Result hasil Query Select dari memory.

II. Implementasi fungsi-fungsi MySQL

II.1 Fungsi Koneksi, Seleksi Database dan Tutup Koneksi

Pada Script di atas terdapat fungsi die(), fungsi ini berfungsi untuk

mengeluarkan pesan error ketika ada masalah dalam argumen fungsi MySQL.

Fungsi die() merupakan fungsi general untuk mengeluarkan error di PHP.

Jika script diatas sukses maka akan tampil seperti di bawah ini.

II.2 Fungsi Query , Fetch Object dan Free Result

Depkominfo RI - JICA

<?

$serverName=”localhost”;

$userName=”root”;

$password=”chelonind”;

$dbName=”test”;

$conn=mysql_connect($serverName, $userName,$password) or

die(“Koneksi gagal”);

echo “Koneksi Sukses”;

$db=mysql_select_db($dbName,$conn) or

die(“Database tidak tersedia”);

mysql_close($conn);

?><?

$serverName=”localhost”;

$userName=”root”;

$password=”chelonind”;

$dbName=”mysql”;

$conn=mysql_connect($serverName, $userName,$password) or

die(“Koneksi gagal”);

$db=mysql_select_db($dbName,$conn) or

die(“DataBase tidak tersedia”);

$sql=”SELECT host,user FROM user ”;

$result=mysql_query($sql);

echo “<table border=\”1\” align=\"center\" width=\”500\” cellpadding=\”0\”

cellspacing=\”0\”>”;

echo “<tr><td>Server Name</td><td>User Name</td></tr>”;

while($row=mysql_fetch_object($result) ){

echo “<tr><td>”.$row->host.”</td><td>”.$row->user.”</td></tr>”;

}

echo “</table>”;

mysql_free_result($result);

mysql_close($conn);

?>

Page 6: Modul Praktikum - PHP MySQL v1.1

Praktikum – PHP MySQL 3

Jika script sudah berhasil di eksekusi , maka akan tampil seperti di bawah ini.

III. Implementasi DML di PHP MySQL

Depkominfo RI - JICA

Page 7: Modul Praktikum - PHP MySQL v1.1

Praktikum – PHP MySQL 4

Pada sesi kali ini kita akan mencoba mengimplementasikan (Data Manipulation

Language) DML di PHP. Aplikasi yang akan kita pakai adalah aplikasi

kepegawaian secara sederhana.

III.1 Aplikasi Kepegawaian

Kebutuhan yang harus disediakan ketika membuat Aplikasi ini adalah:

1. Webserver Apache

2. PHP 5.0.x.x

3. MySQL 4.1.x.x

4. Editor (seperti : Notepad, DreamWeaver, Front Page dll).

5. Browser (seperti : IE,Mozila dll).

III.2 Pembuatan Database Kepegawaian

Jika Instalasi MySQL sudah dilakukan.masuklah ke command prompt,

ketika anda melihat command prompt. Ketik-kan cd

III.3 Koneksi ke MySQL Server

mysql>mysql –u root –p

Depkominfo RI - JICA

Page 8: Modul Praktikum - PHP MySQL v1.1

Praktikum – PHP MySQL 5

III.4 Membuat Database Kepegawaian.

mysql> create database kepegawaian;

III.5 Menggunakan Database Kepegawaian / Seleksi Database

mysql> use kepegawaian;

III.6 Table-Tabel Database Kepegawaian

a. Tabel Golongan

b. Tabel Satuan kerja (Satker)

c. Tabel Jabatan

d. Tabel Pegawai

III.7 Tabel Golongan

CREATE TABLE golongan

(

Depkominfo RI - JICA

Page 9: Modul Praktikum - PHP MySQL v1.1

Praktikum – PHP MySQL 6

ID_Golongan varchar(10) NOT NULL,

GajiPokok decimal(10,0) NOT NULL,

PRIMARY KEY (ID_Golongan)

) TYPE=InnoDB;

III.8 Tabel Satker

CREATE TABLE satker (

ID_Satker int(11) NOT NULL auto_increment,

NamaSatker varchar(100) NOT NULL ,

Alamat varchar(150) default NULL,

Telepon varchar(50) default NULL,

PRIMARY KEY (ID_Satker)

)TYPE=INNODB;

III.9 Tabel Jabatan

CREATE TABLE Jabatan (

IDJabatan int(11) NOT NULL auto_increment,

Depkominfo RI - JICA

Page 10: Modul Praktikum - PHP MySQL v1.1

Praktikum – PHP MySQL 7

ID_Satker int(11) NOT NULL,

NamaJabatan varchar(100) default NULL,

TunjanganJabatan decimal NOT NULL ,

PRIMARY KEY (IDJabatan),

INDEX parent_satker (ID_Satker),

FOREIGN KEY (ID_Satker)

REFERENCES satker (ID_Satker)

ON DELETE CASCADE

) TYPE=INNODB;

III.10 Tabel Pegawai.

CREATE TABLE pegawai (

NIP varchar(20)NOT NULL ,

IDJabatan int(11) ,

Depkominfo RI - JICA

Page 11: Modul Praktikum - PHP MySQL v1.1

Praktikum – PHP MySQL 8

ID_Golongan varchar(10) ,

NamaPegawai varchar(100) ,

Alamat varchar(150) ,

TempatLahir varchar(50) ,

TglLahir date NOT NULL,

Status varchar(50) ,

Agama varchar(50) ,

HandPhone varchar(50) ,

Telepon varchar(50) ,

PRIMARY KEY (NIP),

INDEX parent_jabatan (IDJabatan),

INDEX parent_golongan (ID_Golongan),

FOREIGN KEY (IDJabatan) REFERENCES jabatan (IDJabatan) ON DELETE

CASCADE,

FOREIGN KEY (ID_Golongan) REFERENCES golongan (id_golongan) ON

DELETE CASCADE

) TYPE=InnoDB;

IV. Pembuatan Script Aplikasi kepegawaian

Simpanlah script-script di bawah ini di dokumen root web server Apache yang

telah di buat sebelumnya.

IV.1 Halaman Index kepegawaian.

Simpanlah dengan nama File index.php

Depkominfo RI - JICA

Page 12: Modul Praktikum - PHP MySQL v1.1

Praktikum – PHP MySQL 9

Hasil dari script di atas adalah sebagai berikut:

IV.2 Script Open Koneksi ke Database MySQL

Simpanlah dengan nama connect.php

Depkominfo RI - JICA

<html><head><title>Kepegawaian</title><meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"></head>

<body><h1 align="center"><strong>KEPEGAWAIAN</strong> </h1><ul> <li><a href="golongan.php" style="text-decoration:none;color:black">Data Golongan</a></li> <li><a href="satker.php" style="text-decoration:none;color:black">Data Satker</a></li> <li><a href="jabatan.php" style="text-decoration:none;color:black">Data Jabatan</a></li> <li><a href="pegawai.php" style="text-decoration:none;color:black">Data Pegawai </a></li> <li><a href="reportGaji.php" style="text-decoration:none;color:black">Report Gaji</a></li></ul></body></html>

<?

$serverName="localhost";

$userName="root";

$password="chelonind";

$dbName="kepegawaian2";

$conn=mysql_connect($serverName, $userName,$password) or

die("Koneksi gagal");

$db=mysql_select_db($dbName,$conn) or

die("DataBase tidak tersedia");

?>

Page 13: Modul Praktikum - PHP MySQL v1.1

Praktikum – PHP MySQL 10

IV.3 Script Tutup Koneksi Database

IV.4 Halaman Form Golongan

simpanlah dengan nama file golongan.php

Depkominfo RI - JICA

<?

mysql_close($conn);

?>

<?include_once "connect.php";$SQL_1="Select ID_Golongan,GajiPokok from golongan";if(isset($_GET['status'])){ if($_GET['status']=="ubah"){$SQL_2="Select ID_Golongan,GajiPokok from golongan where ID_Golongan='".$_GET['id']."'";$result_2=mysql_query($SQL_2); $value_form=mysql_fetch_object($result_2);if(isset($_POST['btnSimpan'])){

$sqlUpdate="Update golongan Set "."ID_Golongan='".$_POST['IDGolongan']."',"."GajiPokok=".$_POST['GajiPokok']." where ID_Golongan='".$_GET['id']."'";$resultUpdate=mysql_query($sqlUpdate)or die("Update Data gagal.");header("Location: golongan.php");

}

}if($_GET['status']=="new"){

if(isset($_POST['btnSimpan'])){$SQL_3="INSERT INTO golongan(ID_Golongan,GajiPokok)".

" VALUES("."'".$_POST['IDGolongan']."',"."".$_POST['GajiPokok']."".")";

$result_3=mysql_query($SQL_3)or die("Data baru Gagal Di Simpan");header("Location: golongan.php");

}}if($_GET['status']=="hapus"){

$sqlDelete="Delete from golongan where ID_Golongan='".$_GET['id']."'";$result_delete=mysql_query($sqlDelete)or die("Gagal Di Hapus");header("Location: golongan.php");

}}?>

Page 14: Modul Praktikum - PHP MySQL v1.1

Praktikum – PHP MySQL 11

Depkominfo RI - JICA

<html><head><title>Golongan</title><meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"></head><body><form name="form1" method="post" action=""> <h1 align="center">Golongan </h1> <table width="300" border="1" align="center" cellpadding="0" cellspacing="0"> <tr> <td align="center"><table width="99%" border="0" align="center" cellpadding="0" cellspacing="2" style="font-family:arial;font-size:12px;color:black;font-weight:lighter">

<?

$result_1=mysql_query($SQL_1);

while($row=mysql_fetch_object($result_1)){

?>

<tr bgcolor="#00CCFF">

<td><? print $row->ID_Golongan?></td>

<td><? print $row->GajiPokok?></td>

<td><input name="btnHapus" type="submit" id="btnHapus" style="font-

family:arial;font-size:12px;color:black;font-weight:lighter;width:50"

onclick="javaScript:location.href='golongan.php?status=hapus&id=<? print

$row->ID_Golongan?>'" value="Hapus">

<input name="btnUbah" type="submit" id="btnUbah" style="font-

family:arial;font-size:12px;color:black;font-weight:lighter;width:50"

onclick="javaScript:location.href='golongan.php?status=ubah&id=<? print $row-

>ID_Golongan?>'" value="Ubah"></td>

</tr>

<? } ?>

</table>

<br>

<a href="index.php" style="font-family:arial;font-size:12px;text-

decoration:none;color:#000000">Menu

Utama</a></html>

<? include "disconnect.php"; ?>

Page 15: Modul Praktikum - PHP MySQL v1.1

Praktikum – PHP MySQL 12

Depkominfo RI - JICA

<tr>

<td width="31%">ID Golongan</td>

<td width="69%"><input name="IDGolongan" type="text"

id="IDGolongan" style="font-family:arial;font-size:12px;color:black;font-

weight:lighter;width:80" value="<? print @$value_form->ID_Golongan;

?>"></td>

</tr>

<tr>

<td>Gaji Pokok</td>

<td><input name="GajiPokok" type="text" id="GajiPokok" style="font-

family:arial;font-size:12px;color:black;font-weight:lighter;width:100" value="<?

print @$value_form->GajiPokok;?>"></td>

</tr>

<tr>

<td>&nbsp;</td>

<td>&nbsp;</td>

</tr>

<tr>

<td>&nbsp;</td>

<td><input name="btnSimpan" type="submit" id="btnSimpan"

value="Simpan">

<input type="button" value="Tambah" name="btnTambah"

onClick="javaScript:location.href='golongan.php?status=new'"></td>

</tr>

</table></td>

</tr>

</table>

</form>

<table width="407" id="table1" style="font-family:arial;font-

size:12px;color:black;font-weight:lighter">

<tr bgcolor="#CCCCCC">

<td width="127" height="22">ID Golongan</td>

<td width="111">Gaji Pokok</td>

<td width="24">&nbsp;</td>

</tr>

Page 16: Modul Praktikum - PHP MySQL v1.1

Praktikum – PHP MySQL 13

Depkominfo RI - JICA

Page 17: Modul Praktikum - PHP MySQL v1.1

Praktikum – PHP MySQL 14

IV.5 Halaman Form Satker

Simpanlah dengan nama file satker.php.

Depkominfo RI - JICA

<?include_once "connect.php";

$SQL_1="Select ID_Satker,NamaSatker,Alamat,Telepon from satker";

if(isset($_GET['status'])){

if($_GET['status']=="ubah"){$SQL_2="Select ID_Satker,NamaSatker,Alamat,Telepon from satker where ID_Satker='".$_GET['id']."'";$result_2=mysql_query($SQL_2);$value_form=mysql_fetch_object($result_2);if(isset($_POST['btnSimpan'])){

$sqlUpdate="Update satker Set "."NamaSatker='".$_POST['NamaSatker']."',"."Alamat='".$_POST['Alamat']."',"."Telepon='".$_POST['Telepon']."'"." where ID_Satker=".$_GET['id'];

$resultUpdate=mysql_query($sqlUpdate)or die("Update Data gagal.");header("Location: satker.php");

}}if($_GET['status']=="new"){

if(isset($_POST['btnSimpan'])){ $SQL_3="INSERT INTO satker(NamaSatker,Alamat,Telepon)".

" VALUES("."'".$_POST['NamaSatker']."',"."'".$_POST['Alamat']."',"."'".$_POST['Telepon']."'".")";if($_POST['NamaSatker']!=NULL){

$result_3=mysql_query($SQL_3)or die("Data baru Gagal Di Simpan");

header("Location: satker.php");}

}}if($_GET['status']=="hapus"){

$sqlDelete="Delete from satker where ID_Satker='".$_GET['id']."'";$result_delete=mysql_query($sqlDelete)or die("Gagal Di Hapus");header("Location: satker.php");

}}?><html><head><title>Satker</title><meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"></head><body><form name="form1" method="post" action=""> <h1 align="center">Satuan Kerja</h1> <table width="500" border="1" align="center" cellpadding="0" cellspacing="0">

Page 18: Modul Praktikum - PHP MySQL v1.1

Praktikum – PHP MySQL 15

Depkominfo RI - JICA

<tr> <td align="center"><table width="99%" border="0" align="center" cellpadding="0" cellspacing="2" style="font-family:arial;font-size:12px;color:black;font-weight:lighter"> <tr> <td width="31%">Nama Satker</td> <td width="69%"><input name="NamaSatker" type="text" id="NamaSatker" style="font-family:arial;font-size:12px;color:black;font-weight:lighter;width:200" value="<? print @$value_form->NamaSatker;?>"></td> </tr> <tr> <td valign="top">Alamat</td> <td><textarea name="Alamat" id="Alamat" style="font-family:arial;font-size:12px;color:black;font-weight:lighter;width:300"><? print @$value_form->Alamat;?></textarea></td> </tr> <tr> <td>Telepon</td> <td><input name="Telepon" type="text" id="Telepon" style="font-family:arial;font-size:12px;color:black;font-weight:lighter;width:100" value="<? print @$value_form->Telepon;?>"></td> </tr> <tr> <td>&nbsp;</td> <td>&nbsp;</td> </tr> <tr> <td>&nbsp;</td> <td><input name="btnSimpan" type="submit" id="btnSimpan" value="Simpan"> <input type="button" value="Tambah" name="btnTambah" onClick="javaScript:location.href='satker.php?status=new'"></td> </tr> </table></td> </tr> </table></form>

Page 19: Modul Praktikum - PHP MySQL v1.1

Praktikum – PHP MySQL 16

Depkominfo RI - JICA

<table width="700" id="table1" style="font-family:arial;font-

size:12px;color:black;font-weight:lighter">

<tr bgcolor="#CCCCCC">

<td width="227" height="22">Nama Satuan Kerja</td>

<td width="203">Alamat</td>

<td width="103">Telepon</td>

<td width="147">&nbsp;</td>

</tr>

<?

$result_1=mysql_query($SQL_1);

while($row=mysql_fetch_object($result_1)){

?>

<tr bgcolor="#00CCFF">

<td><? print $row->NamaSatker?></td>

<td><? print $row->Alamat?></td>

<td><? print $row->Telepon?></td>

<td><input name="btnHapus" type="submit" id="btnHapus" style="font-

family:arial;font-size:12px;color:black;font-weight:lighter;width:50"

onclick="javaScript:location.href='satker.php?status=hapus&id=<? print $row-

>ID_Satker?>'" value="Hapus">

<input name="btnUbah" type="submit" id="btnUbah" style="font-

family:arial;font-size:12px;color:black;font-weight:lighter;width:50"

onclick="javaScript:location.href='satker.php?status=ubah&id=<? print $row-

>ID_Satker?>'" value="Ubah"></td>

</tr>

<? } ?>

</table>

<br>

<a href="index.php" style="font-family:arial;font-size:12px;text-

decoration:none;color:#000000">Menu

Utama</a></html>

<? include "disconnect.php"; ?>

Page 20: Modul Praktikum - PHP MySQL v1.1

Praktikum – PHP MySQL 17

Depkominfo RI - JICA

Page 21: Modul Praktikum - PHP MySQL v1.1

Praktikum – PHP MySQL 18

IV.6 Halaman Form Jabatan

Simpanlah dengan nama file jabatan.php

Depkominfo RI - JICA

<?

include_once "connect.php";

$SQL_1="SELECT

jbtn.IDJabatan,

jbtn.ID_Satker,

jbtn.NamaJabatan,

jbtn.TunjanganJabatan,

sat.NamaSatker

FROM

jabatan jbtn

left join

satker sat

on

jbtn.ID_Satker=sat.ID_Satker";

if(isset($_GET['status'])){

if($_GET['status']=="ubah"){

$SQL_2="SELECT

jbtn.IDJabatan,

jbtn.ID_Satker,

jbtn.NamaJabatan,

jbtn.TunjanganJabatan,

sat.NamaSatker

FROM

jabatan jbtn

left join

satker sat

on

jbtn.ID_Satker=sat.ID_Satker

where jbtn.IDJabatan=".$_GET['id'];

$result_2=mysql_query($SQL_2) or die("Error Filter");

$value_form=mysql_fetch_object($result_2);

if(isset($_POST['btnSimpan'])){

$sqlUpdate="Update jabatan Set ".

"ID_Satker='".$_POST['ID_Satker']."',".

"NamaJabatan='".$_POST['NamaJabatan']."',".

"TunjanganJabatan=".$_POST['TunjanganJabatan'].

" where IDJabatan=".$_GET['id'];

$resultUpdate=mysql_query($sqlUpdate)

or die("Update Data gagal.");

header("Location: jabatan.php");

}

}

Page 22: Modul Praktikum - PHP MySQL v1.1

Praktikum – PHP MySQL 19

Depkominfo RI - JICA

if($_GET['status']=="new"){

if(isset($_POST['btnSimpan'])){

$SQL_3="INSERT INTO

jabatan(ID_Satker,NamaJabatan,TunjanganJabatan)".

" VALUES(".

"'".$_POST['ID_Satker']."',".

"'".$_POST['NamaJabatan']."',".

$_POST['TunjanganJabatan'].

")";

if($_POST['NamaJabatan']!=NULL){

$result_3=mysql_query($SQL_3)or die("Data baru

Gagal Di Simpan");

header("Location: jabatan.php");

}

}

}

if($_GET['status']=="hapus"){

$sqlDelete="Delete from jabatan where IDJabatan='".$_GET['id']."'";

$result_delete=mysql_query($sqlDelete)or die("Gagal Di Hapus");

header("Location: jabatan.php");

}

}

?>

<html>

<head>

<title>Jabatan</title>

<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">

</head>

<body>

<form name="form1" method="post" action="">

<h1 align="center">Jabatan</h1>

<table width="500" border="1" align="center" cellpadding="0"

cellspacing="0">

<tr>

Page 23: Modul Praktikum - PHP MySQL v1.1

Praktikum – PHP MySQL 20

Depkominfo RI - JICA

<td align="center"><table width="99%" border="0" align="center"

cellpadding="0" cellspacing="2" style="font-family:arial;font-

size:12px;color:black;font-weight:lighter">

<tr>

<td width="31%" height="25">Satuan Kerja</td>

<td width="69%">

<select name="ID_Satker" id="ID_Satker" style="font-family:arial;font-

size:12px;color:black;font-weight:lighter;width:100">

<?

$satkerIDSelected=@$_GET['idSat'];

$SQL_satker="Select ID_Satker,NamaSatker from satker";

$resultSatker=mysql_query($SQL_satker);

while($rowSatker=mysql_fetch_object($resultSatker)){

?>

<option value="<? print $rowSatker->ID_Satker?>" <?

if($satkerIDSelected==$rowSatker->ID_Satker){?>selected <? } ?>>

<? print $rowSatker->NamaSatker;?></option>

<? } ?>

</select>

</td>

</tr>

<tr>

<td>Nama Jabatan</td>

<td><input name="NamaJabatan" type="text" id="NamaJabatan" style="font-

family:arial;font-size:12px;color:black;font-weight:lighter;width:250" value="<?

print @$value_form->NamaJabatan;?>"></td>

</tr>

<tr>

<td>Tunjangan Jabatan</td>

<td>

<input name="TunjanganJabatan" type="text" id="TunjanganJabatan" style="font-

family:arial;font-size:12px;color:black;font-weight:lighter;width:100"

value="<?print @$value_form->TunjanganJabatan;?>"></td>

</tr>

<tr>

<td>&nbsp;</td>

<td>&nbsp;</td>

Page 24: Modul Praktikum - PHP MySQL v1.1

Praktikum – PHP MySQL 21

Depkominfo RI - JICA

<tr>

<td>&nbsp;</td>

<td><input name="btnSimpan" type="submit" id="btnSimpan" value="Simpan">

<input type="button" value="Tambah" name="btnTambah"

onClick="javaScript:location.href='jabatan.php?status=new'"></td>

</tr>

</table></td>

</tr>

</table>

</form>

<table width="800" id="table1" style="font-family:arial;font-size:12px;color:black;font-

weight:lighter">

<tr bgcolor="#CCCCCC">

<td width="224" height="22">Nama Satuan Kerja</td>

<td width="213">Nama Jabatan</td>

<td width="236">Tunjangan</td>

<td width="107">&nbsp;</td>

</tr>

<?

$result_1=mysql_query($SQL_1);

while($row=mysql_fetch_object($result_1)){

?>

<tr bgcolor="#00CCFF">

<td><? print $row->NamaSatker?></td>

<td><? print $row->NamaJabatan?></td>

<td><? print $row->TunjanganJabatan?></td>

<td><input name="btnHapus" type="submit" id="btnHapus" style="font-

family:arial;font-size:12px;color:black;font-weight:lighter;width:50"

onclick="javaScript:location.href='jabatan.php?status=hapus&id=<? print $row-

>IDJabatan?>'" value="Hapus">

<input name="btnUbah" type="submit" id="btnUbah" style="font-family:arial;font-

size:12px;color:black;font-weight:lighter;width:50"

onclick="javaScript:location.href='jabatan.php?status=ubah&id=<? print $row-

>IDJabatan?>&idSat=<? print $row->ID_Satker;?>'" value="Ubah"></td>

</tr>

<? } ?>

</table>

Page 25: Modul Praktikum - PHP MySQL v1.1

Praktikum – PHP MySQL 22

Depkominfo RI - JICA

<br>

<a href="index.php" style="font-family:arial;font-size:12px;text-

decoration:none;color:#000000">Menu

Utama</a></html>

<? include "disconnect.php"; ?>

Page 26: Modul Praktikum - PHP MySQL v1.1

Praktikum – PHP MySQL 23

IV.7 Halaman Form Pegawai

Simpanlah dengan nama file pegawai.php

Depkominfo RI - JICA

<?include_once "connect.php";$SQL_1="SELECT peg.NIP,peg.IDJabatan,peg.ID_Golongan,peg.NamaPegawai,peg.Alamat,peg.TempatLahir,peg.TglLahir,peg.Status,peg.Agama,peg.HandPhone,peg.Telepon,jab.NamaJabatan as jabatan,gol.ID_Golongan as golongan

FROM

pegawai peg

left join

jabatan jab

on

peg.IDJabatan=jab.IDJabatan

left join golongan gol

on

peg.ID_Golongan=gol.ID_Golongan

";

if(isset($_GET['status'])){

//--Status Update

if($_GET['status']=="ubah"){

$SQL_2="SELECT

peg.NIP,

peg.IDJabatan,

peg.ID_Golongan,

peg.NamaPegawai,

peg.Alamat,

peg.TempatLahir,

peg.TglLahir,

peg.Status,

peg.Agama,

peg.HandPhone,

peg.Telepon,

jab.NamaJabatan as jabatan,

gol.ID_Golongan as golongan

FROM

pegawai peg

left join

jabatan jab

on

peg.IDJabatan=jab.IDJabatan

left join golongan gol

on

peg.ID_Golongan=gol.ID_Golongan

where NIP='".$_GET['id']."'";

Page 27: Modul Praktikum - PHP MySQL v1.1

Praktikum – PHP MySQL 24

Depkominfo RI - JICA

$result_2=mysql_query($SQL_2);

$value_form=mysql_fetch_object($result_2);

if(isset($_POST['btnSimpan'])){

$sqlUpdate="Update pegawai Set ".

"NIP='".$_POST['NIP']."',".

"IDJabatan='".$_POST['Jabatan']."',".

"ID_Golongan='".$_POST['Golongan']."',".

"NamaPegawai='".$_POST['NamaPegawai']."',".

"Alamat='".$_POST['Alamat']."',".

"TempatLahir='".$_POST['TempatLahir']."',".

"TglLahir='".$_POST['TanggalLahir']."',".

"Status='".$_POST['StatusPerkawinan']."',".

"Agama='".$_POST['Agama']."',".

"HandPhone='".$_POST['HP']."',".

"Telepon='".$_POST['Telp']."'".

" where NIP='".$_GET['id']."'";

$resultUpdate=mysql_query($sqlUpdate)or die("Update Data

gagal.");

header("Location: pegawai.php");

}

}

if($_GET['status']=="new"){

if(isset($_POST['btnSimpan'])){

$SQL_3="INSERT INTO

pegawai(NIP,IDJabatan,ID_Golongan,NamaPegawai,Alamat,TempatLahir,TglLahir,Status,Aga

ma,Handphone,Telepon)".

" VALUES(".

"'".$_POST['NIP']."',".

"'".$_POST['Jabatan']."',".

"'".$_POST['Golongan']."',".

"'".$_POST['NamaPegawai']."',".

"'".$_POST['Alamat']."',".

"'".$_POST['TempatLahir']."',".

"'".$_POST['TanggalLahir']."',".

"'".$_POST['StatusPerkawinan']."',".

Page 28: Modul Praktikum - PHP MySQL v1.1

Praktikum – PHP MySQL 25

Depkominfo RI - JICA

"'".$_POST['Agama']."',".

"'".$_POST['HP']."',".

"'".$_POST['Telp']."'".

")";

if($_POST['NIP']!=NULL){

$result_3=mysql_query($SQL_3)or die("Data baru Gagal Di

Simpan");

header("Location: pegawai.php");

}

}

}

if($_GET['status']=="hapus"){

$sqlDelete="Delete from pegawai where NIP='".$_GET['id']."'";

$result_delete=mysql_query($sqlDelete)or die("Gagal Di Hapus");

header("Location: pegawai.php");

}

}

?>

<html>

<head>

<title>Pegawai</title>

<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">

</head>

<body>

<form name="formPegawai" method="post" >

<h1 align="center">Pegawai </h1>

<table width="500" border="1" align="center" cellpadding="0" cellspacing="0">

<tr><td>

<table width="99%" border="0" align="center" cellpadding="0" cellspacing="2"

style="font-family:arial;font-size:12px;color:black;font-weight:lighter;">

<tr>

Page 29: Modul Praktikum - PHP MySQL v1.1

Praktikum – PHP MySQL 26

Depkominfo RI - JICA

<td width="22%">NIP</td>

<td width="78%"><input name="NIP" type="text" id="NIP" style="font-

family:arial;font-size:12px;color:black;font-weight:lighter;width:120" value="<? print

@$value_form->NIP;?>"></td>

</tr>

<tr>

<td>Jabatan</td>

<td>

<select name="Jabatan" style="font-family:arial;font-size:12px;color:black;font-

weight:lighter;">

<?

$jabatanIDSelected=@$value_form->IDJabatan;

$SQL_jabatan="Select IDJabatan,NamaJabatan from jabatan";

$resultJabatan=mysql_query($SQL_jabatan);

while($rowJabatan=mysql_fetch_object($resultJabatan)){

?>

<option value="<? print $rowJabatan->IDJabatan?>" <?

if($jabatanIDSelected==$rowJabatan->IDJabatan){?>selected <? } ?>>

<? print $rowJabatan->NamaJabatan;?></option>

<? } ?>

</select>

</td>

</tr>

<tr>

<td>Golongan</td>

<td>

<select name="Golongan" style="font-family:arial;font-size:12px;color:black;font-

weight:lighter;">

<?

$golonganIDSelected=@$value_form->ID_Golongan;

$SQL_golongan="Select ID_golongan from golongan";

$resultGolongan=mysql_query($SQL_golongan);

while($rowGolongan=mysql_fetch_object($resultGolongan)){

?>

<option value="<? print $rowGolongan->ID_golongan?>" <?

if($golonganIDSelected==$rowGolongan->ID_golongan){?>selected <? } ?>>

<? print $rowGolongan->ID_golongan;?></option>

<? } ?>

Page 30: Modul Praktikum - PHP MySQL v1.1

Praktikum – PHP MySQL 27

Depkominfo RI - JICA

</select>

</td>

</tr>

<tr>

<td>Nama Lengkap</td>

<td><input name="NamaPegawai" type="text" id="NamaPegawai" style="font-

family:arial;font-size:12px;color:black;font-weight:lighter;width:200" value="<? print

@$value_form->NamaPegawai;?>"></td>

</tr>

<tr>

<td valign="top">Alamat</td>

<td><textarea name="Alamat" id="Alamat" style="font-family:arial;font-

size:12px;color:black;font-weight:lighter;width:200"><? print @$value_form->Alamat;?

></textarea></td>

</tr>

<tr>

<td>Tempat Lahir</td>

<td><input name="TempatLahir" type="text" id="TempatLahir" style="font-

family:arial;font-size:12px;color:black;font-weight:lighter;width:200" value="<? print

@$value_form->TempatLahir;?>"></td>

</tr>

<tr><td>Tanggal Lahir</td><td><input name="TanggalLahir" type="text"

id="TanggalLahir" style="font-family:arial;font-size:12px;color:black;font-

weight:lighter;width:120" value="<? print @$value_form->TglLahir;?>">

<font color="#FF0000">Thn-Bln-Tgl</font></td>

</tr>

<tr>

<td>Status</td>

<td><select name="StatusPerkawinan" id="StatusPerkawinan" style="font-

family:arial;font-size:12px;color:black;font-weight:lighter;width:120">

<option value="Menikah" <? if(@$value_form->Status=="Menikah"){?

>selected<? }?> >Menikah</option>

<option value="Belum Menikah" <? if(@$value_form->Status=="Belum Menikah"){?

>selected<? }?>>Belum Menikah</option>

Page 31: Modul Praktikum - PHP MySQL v1.1

Praktikum – PHP MySQL 28

Depkominfo RI - JICA

<option value="Janda" <? if(@$value_form->Status=="Janda"){?>selected<? }?

>>Janda</option>

<option value="Duda" <? if(@$value_form->Status=="Duda"){?>selected<? }?

>>Duda</option>

</select></td>

</tr>

<tr>

<td>Agama</td>

<td><select name="Agama" id="Agama" style="font-family:arial;font-

size:12px;color:black;font-weight:lighter;width:120">

<option value="Islam">Islam</option>

<option value="Budha">Budha</option>

<option value="Hindu">Hindu</option>

<option value="Katolik">Katolik</option>

<option value="Protestan">Protestan</option>

</select></td>

</tr>

<tr>

<td>Hand Phone</td>

<td><input name="HP" type="text" id="HP" style="font-family:arial;font-

size:12px;color:black;font-weight:lighter;" value="<? print @$value_form->HandPhone;?

>"></td>

</tr>

<tr>

<td>Telepon</td>

<td><input name="Telp" type="text" id="Telp" style="font-family:arial;font-

size:12px;color:black;font-weight:lighter;width:120" value="<? print @$value_form-

>Telepon;?>"></td>

</tr>

<tr>

<td>&nbsp;</td>

<td>&nbsp;</td>

</tr>

<tr>

<td>&nbsp;</td>

Page 32: Modul Praktikum - PHP MySQL v1.1

Praktikum – PHP MySQL 29

Depkominfo RI - JICA

<td><input name="btnSimpan" type="submit" id="btnSimpan"

value="Simpan">&nbsp;<input type="button" value="Tambah" name="btnTambah"

onclick="javaScript:location.href='pegawai.php?status=new'"></td>

</tr>

</table>

</td></tr></table>

</form>

<?

$result_1=mysql_query($SQL_1);

while($row=mysql_fetch_object($result_1)){

?>

<table width="500" border="0" align="center" cellpadding="0" cellspacing="2"

style="font-family:arial;font-size:12px;color:black;font-weight:lighter;">

<tr>

<td width="136">NIP</td>

<td width="358">:

<? print $row->NIP;?>

</td>

</tr>

<tr>

<td>Jabatan</td>

<td>: <? print $row->jabatan;?> </td>

</tr>

<tr>

<td>Golongan</td>

<td>: <? print $row->golongan;?> </td>

</tr>

<tr>

<td>Nama Lengkap</td>

<td> : <? print $row->NamaPegawai;?> </td>

</tr>

<tr>

<td>Alamat</td>

<td>: <? print $row->Alamat;?> </td>

</tr>

Page 33: Modul Praktikum - PHP MySQL v1.1

Praktikum – PHP MySQL 30

Depkominfo RI - JICA

<tr>

<td>Tempat Lahir</td>

<td>: <? print $row->TempatLahir;?> </td>

</tr>

<tr>

<td>Tanggal Lahir</td>

<td>: <? print $row->TglLahir;?> </td>

</tr>

<tr>

<td>Status</td>

<td>: <? print $row->Status;?> </td>

</tr>

<tr>

<td>Agama</td>

<td>: <? print $row->Agama;?> </td>

</tr>

<tr>

<td>Hand Phone</td>

<td>: <? print $row->HandPhone;?> </td>

</tr>

<tr>

<td>Telepon</td>

<td>: <? print $row->Telepon;?> </td>

</tr>

<tr>

<td>&nbsp;</td>

<td> <input name="btnHapus" type="submit" id="btnHapus" style="font-

family:arial;font-size:12px;color:black;font-weight:lighter;width:50"

onclick="javaScript:location.href='pegawai.php?status=hapus&id=<? print $row-

>NIP;?>'" value="Hapus">

<input name="btnUbah" type="submit" id="btnUbah" style="font-

family:arial;font-size:12px;color:black;font-weight:lighter;width:50"

onclick="javaScript:location.href='pegawai.php?status=ubah&id=<? print $row-

>NIP;?>'" value="Ubah"></td>

</tr>

Page 34: Modul Praktikum - PHP MySQL v1.1

Praktikum – PHP MySQL 31

Depkominfo RI - JICA

<tr>

<td>&nbsp;</td>

<td>&nbsp;</td>

</tr>

</table>

<? } ?>

<a href="index.php" style="font-family:arial;font-size:12px;text-

decoration:none;color:#000000">Menu

Utama</a>

</body>

</html>

<? include "disconnect.php"; ?>

Page 35: Modul Praktikum - PHP MySQL v1.1

Praktikum – PHP MySQL 32

IV.8 Halaman Report Gaji

Simpanlah dengan nama file reportGaji.php

Depkominfo RI - JICA

<? include_once "connect.php"; ?>

<html>

<head>

<title>Report Gaji</title>

<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">

</head>

<body>

<h1 align="center"><strong>Report Gaji</strong> </h1>

<table width="700" border="1" align="center" style="font-family:arial;font-

size:12px;color:black;font-weight:lighter;">

<tr bgcolor="#CCCCCC">

<td>NIP</td>

<td>Nama</td>

<td>Jabatan</td>

<td>Golongan</td>

<td>Gaji Pokok</td>

<td>Tunjangan</td>

<td>Gaji Bersih</td>

</tr>

<?

$sql="SELECT

peg.NIP,

peg.NamaPegawai,

jab.NamaJabatan as jabatan,

gol.ID_Golongan as golongan,

gol.GajiPokok,

jab.TunjanganJabatan as Tunjangan,

(gol.GajiPokok+jab.TunjanganJabatan) as GajiBersih

FROM pegawai peg left join jabatan jab on peg.IDJabatan=jab.IDJabatan left join golongan

gol on peg.ID_Golongan=gol.ID_Golongan

";

$result=mysql_query($sql);

while($row=mysql_fetch_object($result)){

?>

Page 36: Modul Praktikum - PHP MySQL v1.1

Praktikum – PHP MySQL 33

Depkominfo RI - JICA

<tr bgcolor="#00CCFF">

<td><a href="pegawai.php?status=ubah&id=<? print $row->NIP;?>"

style="text-decoration:none;color:black;"> <? print $row->NIP;?></a></td>

<td>

<? print $row->NamaPegawai;?>

</td>

<td>

<? print $row->jabatan;?>

</td>

<td>

<? print $row->golongan;?>

</td>

<td>

<? print $row->GajiPokok;?>

</td>

<td>

<? print $row->Tunjangan;?>

</td>

<td>

<? print $row->GajiBersih;?>

</td>

</tr>

<? } ?>

</table>

<p align="center"><a href="index.php" style="font-family:arial;font-

size:12px;text-decoration:none;color:#000000">Menu

Utama</a> </p>

</body>

</html>

<? include "disconnect.php"; ?>

Page 37: Modul Praktikum - PHP MySQL v1.1

Praktikum – PHP MySQL 34

Hasil dari script di atas adalah sebagai berikut:

Depkominfo RI - JICA

Page 38: Modul Praktikum - PHP MySQL v1.1

Praktikum – PHP MySQL 35

V. Daftar Pustaka

Brain, Marshall (2005). How Web Servers Work. http://computer.howstuffworks.com/dns.html.

How Stuff Works (2005). Setting the Stage. http://computer.howstuffworks.com/web-page.htm

Farid Azis. M, 2001.BelajarSendiri Pemrograman PHP 4 Jakarta : PT Elex Media Komputindo

Depkominfo RI - JICA