Anda di halaman 1dari 23

LEMBAR KERJA PRAKTIKUM

Disusun Oleh,

ARYANTO, SE, MTI, Ak


NIP. 19740814 200112 1 003

LABORATORIUM KOMPUTER
FAKULTAS EKONOMI
UNIVERSITAS SRIWIJAYA

2014
Latihan 1 : Installasi Server PHP & MySQL

Mahasiswa diharapkan mampu mengaktifkan server PHP & MySQL. Aplikasi yang dapat digunakan adalah
appserv 2.5.10 atau XAMPP 1.7.7

1. Installlah aplikasi appserv 2.5.10 atau XAMPP (disarankan menggunakan XAMPP)


2. Jalankan aplikasi tersebut sehingga alamat http://localhost dapat diakses dari browser tanpa
menggunakan koneksi ke internet (No Internet Connection)
3. Hasil yang ditampilkan saat memanggil http://localhost seperti gambar berikut.

4. Hasil yang ditampilkan saat memanggil alamat http://localhost/phpmyadmin adalah sebagai berikut.

e
Latihan 2 : Hello World

Mahasiswa mampu memahami pemrograman dasar-dasar HTML (mengenal tag-tag dasar HTML)

1. Persiapkan sebuah folder dengan nama belajar1 di dalam folder xampp/htdocs.


2. Kemudian ketiklah kode dibawah ini dan simpan dengan nama file index.php ke dalam folder
belajar1.

<html>
<head>
<title>Program HTML-1</title>
</head>
<body>
HELLO WORLD
</body>
</html>

3. Kemudian panggil alamat http://localhost/belajar1 dari browser, maka akan ditampilkan tampilan
seperti gambar di bawah ini.
Latihan 3 : Hyperlink

Mahasiswa mampu membuat Hyperlink yang menghubungkan 2 dokumen atau lebih

1. Pada latihan ini kita akan mencoba menghubungkan 3 file PHP yang terdiri dari file index.php,
strorg.php dan sejarah.php. Perincian tampilan detil dapat dilihat dibawa ini.

 Tampilan file index.php.

PT. ANGIN RIBUT


PALEMBANG – 30139

MENU UTAMA

1. Sejarah Organisasi
2. Struktur Organisasi

 Tampilan file sejarah.php.

PT. ANGIN RIBUT


PALEMBANG – 30139

SEJARAH ORGANISASI

Ini Isi file SEJARAH ORGANISASI.

[Home] [Sejarah]

 Tampilan file strorg.php.

PT. ANGIN RIBUT


PALEMBANG – 30139

STRUKTUR ORGANISASI

Ini Isi file STRUKTUR ORGANISASI.

[Home] [Struktur Organisasi]

2. Persiapkan sebuah folder dengan nama belajar2 di dalam folder xampp/htdocs.


3. Kemudian ketiklah kode dibawah ini dan simpan dengan nama file index.php ke dalam folder
belajar2.

<html>
<head>
<title>PT. ANGIN RIBUT</title>
</head>
<body>
<b>PT. ANGIN RIBUT<br>
PALEMBANG - 30139<br><br>
MENU UTAMA</b><br><br>
1. <a href="sejarah.php">Sejarah Organisasi</a><br>
2. <a href="strorg.php">Struktur Organisasi</a><br>
</body>
</html>

4. Listing kode file sejarah.php.

<html>
<head>
<title>PT. ANGIN RIBUT</title>
</head>
<body>
<b>PT. ANGIN RIBUT<br>
PALEMBANG - 30139<br><br>
SEJARAH ORGANISASI</b><br><br>
Ini Isi file SEJARAH ORGANISASI.<br><br>
[<a href="index.php">Home</a>] [<a href="strorg.php">Struktur Organisasi</a>]
</body>
</html>

5. Listing kode file strorg.php.

<html>
<head>
<title>PT. ANGIN RIBUT</title>
</head>
<body>
<b>PT. ANGIN RIBUT<br>
PALEMBANG - 30139<br><br>
STRUKTUR ORGANISASI</b><br><br>
Ini Isi file STRUKTUR ORGANISASI.<br><br>
[<a href="index.php">Home</a>] [<a href="sejarah.php">Sejarah Organisasi</a>]
</body>
</html>

6. Hasilnya dapat dilihat pada gambar di bawah ini.

Index.php Sejarah.php

Strorg.php Folder dan Daftar file


Latihan 4 : Form Input / Output

Mahasiswa mampu membuat Form Input dan Menampilkan Data yang diinput (OUTPUT)

1. Buat sebuah folder di xampp/htdocs dengan nama folder input01.


2. Kemudian, didalam folder input01 tersebut buatlah 6 (enam) buah file dengan nama file sebagai
berikut:

Tabel 4.1.
Daftar Nama File dan Keterangan Latihan 3

Nama File Keterangan


index.php Merupakan file untuk menampilkan layar utama yang berisikan berbagai informasi
atau profile perusahaan, namun didalamnya disediakan link untuk login ke dalam
sistem.
frm_login.php Berfungsi untuk menampilkan form login ke dalam sistem
frm_otentikasi.php Bertugas untuk memeriksa kebenaran data login yang diinput oleh user
cek_login.php Berfungsi untuk memeriksa apakah user telah login atau belum.
menu.php Berfungsi untuk menampilkan menu utama sistem. Hanya user yang telah login yang
dapat mengakses menu ini (lewat pemeriksaan melalui file cek_login.php)
frm_logout.php Bertugas untuk menghapus sesi login user.

3. Tampilan yang diharapkan adalah sebagai berikut


 Pada saat http://localhost/input01 dipanggil maka akan menampilkan gambar sebagai berikut.
(index.php)

PT. ANGIN RIBUT


PALEMBANG – 30139

SISTEM APLIKASI PENGGAJIAN

Login

 Tampilan Login (frm_login.php)

 Tampilan Menu Utama (menu.php)

PT. ANGIN RIBUT


PALEMBANG – 30139

MENU UTAMA

1. Input Data Pegawai


2. Edit Data Pegawai
3. Hapus Data Pegawai
4. Display Data Pegawai
5. Logout
4. Isi file index.php

<html>
<head>
<title>PT. ANGIN RIBUT</title>
</head>

<body>
PT. ANGIN RIBUT<br>
PALEMBANG - 30139<br><br>
SISTEM APLIKASI PENGGAJIAN<br><br>

<a href="frm_login.php">Login</a>
</body>
</html>

5. Isi file frm_login.php

<html>
<head>
<title>PT. ANGIN RIBUT</title>
</head>

<body>
PT. ANGIN RIBUT<br>
PALEMBANG - 30139<br><br>
Enter Young Password<br><br>
<form name="frminput" method="post" action="frm_otentikasi.php">
User ID: <input type="text" name="iduser" maxlength="20"><br>
Password: <input type="password" name="idpsw" maxlength="10"><br>
<input type="submit" name="submit" value="Login">
</form>

</body>
</html>

6. Isi file frm_otentikasi.php.

<?php
//buka sessi
session_start();

//buka ambil paket data


$iduser = $_POST['iduser'];
$idpsw = $_POST['idpsw'];

//cek security input mencegah sql_injection


$iduser = mysql_real_escape_string($iduser);
$idpsw = mysql_real_escape_string($idpsw);

$mess="";
if ( empty($iduser) )
$mess=$mess . "<br>- ID User Kosong";

if ( empty($idpsw) )
$mess=$mess . "<br>- PASSWORD kosong";

if ( ! empty($mess) )
{
$mess="Login Tidak Valid !<br>" . $mess;
print($mess . "<br>[ <a href=frm_login.php>Login</a> ]");
die("");
}

if ( $iduser=="admin" and $idpsw=="admin")


{
$_SESSION['iduser']=$iduser;
//redirect to menu
header('location: menu.php');
}
else
{
$mess="User ID atau Password Tidak Valid !";
print($mess . "<br>[ <a href=frm_login.php>Login</a> ]");
die("");
}
?>

7. Isi File cek_login.php.

<?php
//aktifkan sessi
session_start();

//jika sessi iduser belum dibuat atau kosong


if( !isset($_SESSION['iduser']) or empty($_SESSION['iduser']) )
{
//redirect to login
header('location:frm_login.php');
}
?>

8. Isi file menu.php.

<?php
include('cek_login.php');
?>
<html>
<head>
<title>PT. ANGIN RIBUT</title>
</head>
<body>
PT. ANGIN RIBUT<br>
PALEMBANG - 30139<br><br>
MENU UTAMA<br><br>
1. Input Data Pegawai<br>
2. Edit Data Pegawai<br>
3. Hapus Data Pegawai<br>
4. Display Data Pegawai<br>
5. <a href="frm_logout.php">Log out</a><br><br>
<?php
print("
<marquee>Nama Pengguna: <b>" . $_SESSION['iduser'] . "</b></marquee");
?>
</body>
</html>

9. Isi file frm_logout.php.

<?php
session_start();

session_destroy();

header('location:frm_login.php');
?>
Latihan 5 : Membaca Data Password dari sebuah Tabel

Mahasiswa mampu membuat aplikasi sederhana untuk Membaca data password melalui sebuah tabel

1. Siapkan sebuah database dengan nama dbgaji


Create database dbgaji;

2. Di dalam database dbgaji buatlah sebuah tabel dengan nama tbl_user dengan struktur sebagai
berikut:
Tabel 5.1.
Struktur Tabel tbl_user

Field
No.
Name Type Size Default
1. iduser Varchar 18 ""
2. idname varchar 40 ""
3. password varchar 41 ""
Primary key: iduser

create table tbl_user


(iduser varchar(18) not null default "",
idname varchar(40) not null default "",
password varchar(41) not null default "",
primary key (iduser));

3. Tambahkan data dibawah ini ke dalam tabel tbl_user.

Tabel 5.2.
Data User
iduser idname Password
200407112014011001 M. LUTHFI. AF 123456
201304212014012002 L. MAHIRAH NADHIFAH 789012

insert into tbl_user


(iduser,idname,password) values
("200407112014011001","M. LUTHFI. AF",password("123456")),
("201304212014012002","L. MAHIRAH NADHIFAH",password("789012"));

4. Buatlah sebuah folder di dalam xampp/htdocs dengan nama folder aplikasi01.


5. Buatlah sebuah file php dengan nama config.php yang berisikan kode dibawah ini. File ini berfungsi
untuk menyimpan prosedur koneksi antara aplikasi PHP dengan database MySQL.

<?php
$mserver= "localhost";
$muser= "root";
$mpassword= "";
$mdatabase= "dbgaji";

$conn=mysql_connect($mserver, $muser, $mpassword);


if (! $hasil)
{
print("Gagal Melakukan Koneksi ke Database !!!");
die("");
}

$conn_db=mysql_select_db($mdatabase);
if ( ! $conn_db)
{
print("Gagal Mengaktifkan Database !!!");
die("");
}
?>
6. Copy semua file Latihan 4 ke dalam folder aplikasi01. Jika pada latihan 4, user namenya adalah
admin dan password juga admin maka pada latihan 5 ini user name dan password akan ditentukan
melalui tabel tbl_user.

7. Edit file frm_otentikasi.php seperti kode dibawah ini.

<?php
//buka sessi
session_start();

//buka ambil paket data


$iduser = $_POST['iduser'];
$idpsw = $_POST['idpsw'];

//cek security input mencegah sql_injection


$iduser = mysql_real_escape_string($iduser);
$idpsw = mysql_real_escape_string($idpsw);

$mess="";
if ( empty($iduser) )
$mess=$mess . "<br>- ID User Kosong";

if ( empty($idpsw) )
$mess=$mess . "<br>- PASSWORD kosong";

if ( ! empty($mess) )
{
$mess="Login Tidak Valid !<br>" . $mess;
print($mess . "<br>[ <a href=frm_login.php>Login</a> ]");
die("");
}

//siapkan koneksi
include("config.php");

//siapkan perintah sql untuk mencari data password ke tabel


$csql="select * from tbl_user where iduser='" . $iduser . "'" .
" and password=password('" . $idpsw . "')";

//cek dalam database


$mess="";
$csqlcek=mysql_query($csql);
if( ! $csqlcek)
$mess="Gagal menjalankan Query";
else
{
if( mysql_num_rows($csqlcek)==0 )
{
$mess="Password Tidak Valid";
}
}
if( ! empty($mess))
{
$mess="User ID atau Password Tidak Valid !";
print($mess . "<br>[ <a href=frm_login.php>Login</a> ]");
die("");
}
//baca data user
$ctbl_user=mysql_fetch_array($csqlcek);
$_SESSION['iduser']=$ctbl_user[iduser];
$_SESSION['idname']=$ctbl_user[idname];

header('location: menu.php');
?>

8. Edit file menu.php seperti kode dibawah ini.


<?php
include('cek_login.php');
?>
<html>
<head>
<title>PT. ANGIN RIBUT</title>
</head>
<body>
PT. ANGIN RIBUT<br>
PALEMBANG - 30139<br><br>
MENU UTAMA<br><br>
1. Input Data Pegawai<br>
2. Edit Data Pegawai<br>
3. Hapus Data Pegawai<br>
4. Display Data Pegawai<br>
5. <a href="frm_logout.php">Log out</a><br><br>

<?php
print("
<marquee>ID: <b>" . $_SESSION['iduser'] . "</b> Nama: <b>" .
$_SESSION['idname'] . "</b></marquee");
?>

</body>
</html>

9. Cobalah untuk menjalankan program aplikasi dengan memanggil alamat http://localhost/aplikasi01


lewat browser. Hasil untuk menu utama nampak seperti gambar berikut.

Dari latihan 5 ini data pengguna / user dapat ditambah dan dikurangi sesuai keperluan.
Latihan 6 : Pengolahan Data Pegawai – Input Data Pegawai

Mahasiswa mampu membuat aplikasi sederhana untuk pengolahan data Pegawai

Latihan 6 merupakan kelanjutan dari latihan 5. Pada latihan 6 ini kita akan belajar membuat aplikasi untuk
menyimpan data pegawai yang baru. Bentuk tampilan yang diinginkan seperti gambar form input dibawah
ini.

1. Buat tabel tbl_pegawai ke dalam database dbgaji dengan struktur tabel seperti dibawah ini.

Tabel 6.1.
Struktur Tabel tbl_pegawai

Field
No.
Name Type Size Default
1. nip Varchar 18 ""
2. nama varchar 40 ""
3. alamat varchar 100 ""
Primary key: nip

create table tbl_pegawai


(nip varchar(18) not null default "",
nama varchar(40) not null default "",
alamat varchar(100) not null default "",
primary key (nip));

2. Buatlah form input dengan nama pegawai01.php, kemudian ketikkan kode dibawah ini ke dalam
file pegawai01.php.

<?php
//agar file ini tidak bisa diakses tanpa login
include('cek_login.php');
?>
<html>
<head>
<title>INPUT DATA PEGAWAI</title>
</head>
<body>
PT. ANGIN RIBUT<br>
PALEMBANG - 30139<br><br>
INPUT DATA PEGAWAI<br><br>
<form name="frm01" method="post" action="pegawai01_save.php">
<table>
<tr>
<td>NIP</td>
<td>:</td>
<td><input type="text" name="nip" maxlength="18"></td>
</tr>
<tr>
<td>N a m a</td>
<td>:</td>
<td><input type="text" name="nama" maxlength="40"></td>
</tr>
<tr>
<td>Alamat</td>
<td>:</td>
<td><input type="text" name="alamat" maxlength="100"></td>
</tr>
<tr>
<td></td>
<td></td>
<td><input type="submit" name="submit" value="SIMPAN"> [<a
href="menu.php">Menu</a>]</td>
</tr>
</table>
</form>
</html>

3. Buat file pegawai01_save.php dengan kode seperti dibawah ini.

<?php
//buka ambil paket data
$nip = $_POST['nip'];
$nama = $_POST['nama'];
$alamat = $_POST['alamat'];

//cek security input mencegah sql_injection


$nip = mysql_real_escape_string($nip);
$nama = mysql_real_escape_string($nama);
$alamat = mysql_real_escape_string($alamat);

//validasi input
$mess="";
if ( empty($nip) )
$mess=$mess . "<br>- NIP Kosong";

if ( empty($nama) )
$mess=$mess . "<br>- NAMA kosong";

if ( empty($alamat) )
$mess=$mess . "<br>- ALAMAT kosong";

if ( ! empty($mess) )
{
$mess="DATA Tidak Valid !<br>" . $mess;
print($mess . "<br>[ <a href=pegawai01.php>Ulangi</a> ]");
die("");
}

//siapkan koneksi
include("config.php");

//siapkan perintah sql untuk untuk menambahkan data ke dalam tabel


$csql="insert into tbl_pegawai (nip,nama,alamat) " .
"values ('$nip','$nama','$alamat')";

//simpan data
$mess="";
$csqlcek=mysql_query($csql);
if( ! $csqlcek)
{
$mess="<b>Gagal menjalankan Query</b><br>Informasi:<br>" .
"1. NIP telah ada dalam tabel<br>" .
"2. Koneksi terputus";
}
else
{
$mess="Data Telah DISIMPAN.";
}

print($mess . "<br>INPUT LAGI ? [<a href=pegawai01.php>Ya</a>]" .


"[<a href=menu.php>Tidak</a>]");
die("");
?>

4. Edit file menu.php untuk membuat link ke file pegawai01.php, sehingga hasilnya seperti kode
dibawah ini.

<?php
include('cek_login.php');
?>
<html>
<head>
<title>PT. ANGIN RIBUT</title>
</head>
<body>
PT. ANGIN RIBUT<br>
PALEMBANG - 30139<br><br>
MENU UTAMA<br><br>
1. <a href="pegawai01.php">Input Data Pegawai</a><br>
2. Edit Data Pegawai<br>
3. Hapus Data Pegawai<br>
4. Display Data Pegawai<br>
5. <a href="frm_logout.php">Log out</a><br><br>

<?php
print("
<marquee>ID: <b>" . $_SESSION['iduser'] . "</b> Nama: <b>" .
$_SESSION['idname'] . "</b></marquee");
?>

</body>
</html>

5. Sekarang cobalah untuk menguji aplikasi yang telah dibuat dengan mengetikkan alamat
http://localhost/aplikasi01.
Latihan 7 : Pengolahan Data Pegawai – Edit Data Pegawai

Mahasiswa mampu membuat aplikasi sederhana untuk Mengedit Data

Pada latihan 7 kita akan membuat aplikasi untuk melakukan perubahan (editing) pada data pegawai.
Flowchart untuk melakukan proses editing dapat dilihat dibawah ini.

START 1

EDIT DATA
NIP
PEGAWAI

CARI DATA SIMPAN


PEGAWAI
PEGAWAI DATA

Y DATA
DITEMUKAN
?

1 STOP

1. Dari gambar flowchart di atas, aplikasi diawali dengan pengisian NIP yang akan di edit. Siapkan
sebuah file dengan nama pegawai02.php dengan tampilan seperti gambar dibawah ini. File action
diberi nama pegawai02_getdata.php.

Keterangan:
User akan memasukkan data NIP yang akan diedit pada kotak input. Pada saat tombol EDIT ditekan
maka secara otomatis paket data NIP akan dikirimkan sebagai variabel pada file
pegawai02_getdata.php.

Jawaban:
<?php
//agar file ini tidak bisa diakses tanpa login
include('cek_login.php');
?>
<html>
<head>
<title>EDIT DATA PEGAWAI</title>
</head>
<body>
PT. ANGIN RIBUT<br>
PALEMBANG - 30139<br><br>
EDIT DATA PEGAWAI<br><br>
<form name="frm02" method="post" action="pegawai02_getdata.php">
<table>
<tr>
<td>NIP</td>
<td>:</td>
<td><input type="text" name="nip" maxlength="18"></td>
</tr>
<tr>
<td></td>
<td></td>
<td><input type="submit" name="submit" value="EDIT"> [<a
href="menu.php">Menu</a>]</td>
</tr>
</table>
</form>
</html>

2. File pegawai02_getdata.php berisikan prosedur untuk memvalidasi data input dan membaca /
mencari data nip yang dimasukkan ke dalam tabel pegawai. File ini juga berisikan prosedur untuk
menampilkan form edit jika data ditemukan. Listing kodenya dapat dilihat dibawah ini. Pada saat
penekan tombol SAVE EDIT DATA, maka dibutuhkan file pegawai02_save.php untuk menyimpan
data ke dalam tabel.

<?php
//buka ambil paket data
$nip = $_POST['nip'];

//cek security input mencegah sql_injection


$nip = mysql_real_escape_string($nip);

//validasi input
$mess="";
if ( empty($nip) )
$mess=$mess . "<br>- NIP Kosong";

if ( ! empty($mess) )
{
$mess="DATA Tidak Valid !<br>" . $mess;
print($mess . "<br>[ <a href=pegawai02.php>Ulangi</a> ]");
die("");
}

//siapkan koneksi
include("config.php");

//siapkan perintah sql untuk untuk menambahkan data ke dalam tabel


$csql="select * from tbl_pegawai where nip='" . $nip . "'";

//jalankan query untuk mengakses data


$mess="";
$csqlcek=mysql_query($csql);
if( ! $csqlcek)
{
$mess="<b>Gagal menjalankan Query</b><br>";
}
else
{
if( mysql_num_rows($csqlcek)==0 )
{
$mess="Data NIP: " . $nip . " Tidak Ditemukan.";
}
}

if( ! empty($mess) )
{
print($mess . "<br>EDIT LAGI ? [<a href=pegawai02.php>Ya</a>]" .
"[<a href=menu.php>Tidak</a>]");
die("");
}

//baca data
$ctblpeg=mysql_fetch_array($csqlcek);

print("
PT. ANGIN RIBUT<br>
PALEMBANG - 30139<br><br>
EDIT DATA PEGAWAI<br><br>
<form name=frm021 method=post action=pegawai02_save.php>
<table>
<tr>
<td>NIP</td>
<td>:</td>
<td><b>$ctblpeg[nip]</b><input type=hidden name=nip value='$ctblpeg[nip]'></td>
</tr>
<tr>
<td>NAMA</td>
<td>:</td>
<td><input type=text name=nama maxlength=40 value='$ctblpeg[nama]'></td>
</tr>
<tr>
<td>ALAMAT</td>
<td>:</td>
<td><input type=text name=alamat maxlength=40 value='$ctblpeg[alamat]'></td>
</tr>
<tr>
<td></td>
<td></td>
<td><input type=submit name=submit value='SAVE EDIT DATA'><br>
[ <a href=pegawai02.php>Edit Data Yang Lain</a> ]<br>
[ <a href=menu.php>Menu</a> ]</td>
</tr>
</table>
</form>
");
?>

3. File pegawai02_save.php berfungsi untuk menyimpan data yang telah di edit ke dalam tabel
pegawai. Listing kode dapat dilihat di bawah ini.

<?php
//buka ambil paket data
$nip = $_POST['nip'];
$nama = $_POST['nama'];
$alamat = $_POST['alamat'];

//cek security input mencegah sql_injection


$nip = mysql_real_escape_string($nip);
$nama = mysql_real_escape_string($nama);
$alamat = mysql_real_escape_string($alamat);

//validasi input
$mess="";
if ( empty($nip) )
$mess=$mess . "<br>- NIP Kosong";

if ( empty($nama) )
$mess=$mess . "<br>- NAMA kosong";

if ( empty($alamat) )
$mess=$mess . "<br>- ALAMAT kosong";

if ( ! empty($mess) )
{
$mess="DATA Tidak Valid !<br>" . $mess;
print($mess . "<br>[ <a href=pegawai02.php>Ulangi</a> ]");
die("");
}

//siapkan koneksi
include("config.php");

//siapkan perintah sql untuk untuk update data ke dalam tabel


$csql="update tbl_pegawai set " .
"nama='" . $nama . "'," .
"alamat='" . $alamat . "' " .
"where nip='" . $nip . "'";
//simpan data
$mess="";
$csqlcek=mysql_query($csql);
if( ! $csqlcek)
{
$mess="<b>Gagal menjalankan Query</b>";
}
else
{
$mess="Data Telah DIUPDATE.";
}

print($mess . "<br>EDIT LAGI ? [<a href=pegawai02.php>Ya</a>]" .


"[<a href=menu.php>Tidak</a>]");
die("");
?>

4. Contoh gambar tampilan Editing.

5. Edit file menu.php untuk menambahkan link koneksi ke file pegawai02.php.

<?php
include('cek_login.php');
?>
<html>
<head>
<title>PT. ANGIN RIBUT</title>
</head>
<body>
PT. ANGIN RIBUT<br>
PALEMBANG - 30139<br><br>
MENU UTAMA<br><br>
1. <a href="pegawai01.php">Input Data Pegawai</a><br>
2. <a href="pegawai02.php">Edit Data Pegawai</a><br>
3. Hapus Data Pegawai<br>
4. Display Data Pegawai<br>
5. <a href="frm_logout.php">Log out</a><br><br>
<?php
print("
<marquee>ID: <b>" . $_SESSION['iduser'] . "</b> Nama: <b>" . $_SESSION['idname'] .
"</b></marquee");
?>
</body>
</html>
Latihan 8 : Pengolahan Data Pegawai – Hapus Data Pegawai

Mahasiswa mampu membuat aplikasi sederhana untuk Menghapus Data

Pada latihan 8 kita akan membuat aplikasi untuk melakukan penghapusan (delete) pada data pegawai.
Flowchart untuk melakukan proses delete dapat dilihat dibawah ini.

START 1

Tampilkan
Data Pegawai
NIP

DATA T
DIHAPUS 2
CARI DATA ?
PEGAWAI
PEGAWAI
Y

HAPUS
T DATA DATA
DITEMUKAN
?

1 STOP

1. Dari gambar flowchart di atas, aplikasi diawali dengan pengisian NIP yang akan dihapus / delete.
Siapkan sebuah file dengan nama pegawai03.php dengan tampilan seperti gambar dibawah ini. File
action diberi nama pegawai03_getdata.php.

Keterangan:
User akan memasukkan data NIP yang akan dihapus pada kotak input. Pada saat tombol HAPUS
ditekan maka secara otomatis paket data NIP akan dikirimkan sebagai variabel pada file
pegawai03_getdata.php.

Jawaban:
<?php
//agar file ini tidak bisa diakses tanpa login
include('cek_login.php');
?>
<html>
<head>
<title>HAPUS DATA PEGAWAI</title>
</head>
<body>
PT. ANGIN RIBUT<br>
PALEMBANG - 30139<br><br>
HAPUS DATA PEGAWAI<br><br>
<form name="frm02" method="post" action="pegawai03_getdata.php">
<table>
<tr>
<td>NIP</td>
<td>:</td>
<td><input type="text" name="nip" maxlength="18"></td>
</tr>
<tr>
<td></td>
<td></td>
<td><input type="submit" name="submit" value="HAPUS"> [<a
href="menu.php">Menu</a>]</td>
</tr>
</table>
</form>
</html>

2. File pegawai03_getdata.php berisikan prosedur untuk memvalidasi data input dan membaca /
mencari data nip yang dimasukkan ke dalam tabel pegawai. File ini juga berisikan prosedur untuk
menampilkan data ke layar monitor jika data ditemukan, hal ini berguna sebagai validasi apakah user
betul-betul yakin untuk menghapus data dengan detil yang ditampilkan dilayar. Listing kodenya
dapat dilihat dibawah ini. Pada saat penekan tombol HAPUS DATA, maka dibutuhkan file
pegawai03_hapus.php untuk menghapus data dari dalam tabel.

<?php
//buka ambil paket data
$nip = $_POST['nip'];

//cek security input mencegah sql_injection


$nip = mysql_real_escape_string($nip);

//validasi input
$mess="";
if ( empty($nip) )
$mess=$mess . "<br>- NIP Kosong";

if ( ! empty($mess) )
{
$mess="DATA Tidak Valid !<br>" . $mess;
print($mess . "<br>[ <a href=pegawai03.php>Ulangi</a> ]");
die("");
}

//siapkan koneksi
include("config.php");

//siapkan perintah sql untuk untuk menambahkan data ke dalam tabel


$csql="select * from tbl_pegawai where nip='" . $nip . "'";

//jalankan query untuk mengakses data


$mess="";
$csqlcek=mysql_query($csql);
if( ! $csqlcek)
{
$mess="<b>Gagal menjalankan Query</b><br>";
}
else
{
if( mysql_num_rows($csqlcek)==0 )
{
$mess="Data NIP: " . $nip . " Tidak Ditemukan.";
}
}

if( ! empty($mess) )
{
print($mess . "<br>HAPUS LAGI ? [<a href=pegawai03.php>Ya</a>]" .
"[<a href=menu.php>Tidak</a>]");
die("");
}

//baca data
$ctblpeg=mysql_fetch_array($csqlcek);
print("

PT. ANGIN RIBUT<br>


PALEMBANG - 30139<br><br>
HAPUS DATA PEGAWAI<br><br>
<form name=frm031 method=post action=pegawai03_hapus.php>
<table>
<tr>
<td>NIP</td>
<td>:</td>
<td><b>$ctblpeg[nip]</b><input type=hidden name=nip value='$ctblpeg[nip]'></td>
</tr>
<tr>
<td>NAMA</td>
<td>:</td>
<td><b>$ctblpeg[nama]</b></td>
</tr>
<tr>
<td>ALAMAT</td>
<td>:</td>
<td><b>$ctblpeg[alamat]</b></td>
</tr>
<tr>
<td></td>
<td></td>
<td><input type=submit name=submit value='HAPUS DATA'><br>
[ <a href=pegawai03.php>Hapus Data Yang Lain</a> ]<br>
[ <a href=menu.php>Menu</a> ]</td>
</tr>
</table>
</form>
");
?>

6. File pegawai03_hapus.php berfungsi untuk menghapus data dari dalam tabel.

<?php
//buka ambil paket data yg dikirmkan diam-diam (hide)
$nip = $_POST['nip'];

//validasi input
$mess="";
if ( empty($nip) )
$mess=$mess . "<br>- NIP Kosong";

if ( ! empty($mess) )
{
$mess="DATA Tidak Valid !<br>" . $mess;
print($mess . "<br>[ <a href=pegawai03.php>Ulangi</a> ]");
die("");
}

//siapkan koneksi
include("config.php");

//siapkan perintah sql untuk untuk menghapus data ke dalam tabel


$csql="delete from tbl_pegawai where nip='" . $nip . "'";

//hapus data
$mess="";
$csqlcek=mysql_query($csql);
if( ! $csqlcek)
{
$mess="<b>Gagal menjalankan Query</b>";
}
else
{
$mess="Data Telah DIHAPUS.";
}

print($mess . "<br>HAPUS LAGI ? [<a href=pegawai03.php>Ya</a>]" .


"[<a href=menu.php>Tidak</a>]");
die("");
?>
7. Edit menu.php untuk membuat link ke pegawai03.php (hapus data).

<?php
include('cek_login.php');
?>
<html>
<head>
<title>PT. ANGIN RIBUT</title>
</head>
<body>
PT. ANGIN RIBUT<br>
PALEMBANG - 30139<br><br>
MENU UTAMA<br><br>
1. <a href="pegawai01.php">Input Data Pegawai</a><br>
2. <a href="pegawai02.php">Edit Data Pegawai</a><br>
3. <a href="pegawai03.php">Hapus Data Pegawai</a><br>
4. Display Data Pegawai<br>
5. <a href="frm_logout.php">Log out</a><br><br>
<?php
print("
<marquee>ID: <b>" . $_SESSION['iduser'] . "</b> Nama: <b>" . $_SESSION['idname'] .
"</b></marquee");
?>
</body>
</html>
Latihan 9 : Pengolahan Data Pegawai – Display Data Pegawai

Mahasiswa mampu membuat aplikasi sederhana untuk Menampilkan (display) data pegawai

Berdasarkan contoh-contoh yang telah diberikan silahkan membuat sendiri aplikasi untuk menampilkan data
pegawai ke monitor, cari berbagai contoh menampilkan isi tabel dengan perintah SQL lewat internet atau
buku-buku yang terkait. Selamat mencoba

Anda mungkin juga menyukai