52

Click here to load reader

E-Book Rental PHP PDO MYSQL - sixghakreasi.com Rental... · PDO-PHP APLIKASI RENTAL MOBIL PHP MYSQL Pengenalan singkat PDO Dari sekian banyak tutorial lokal mengenai PHP dan MyS menggunakan

  • Upload
    doanque

  • View
    288

  • Download
    16

Embed Size (px)

Citation preview

Page 1: E-Book Rental PHP PDO MYSQL - sixghakreasi.com Rental... · PDO-PHP APLIKASI RENTAL MOBIL PHP MYSQL Pengenalan singkat PDO Dari sekian banyak tutorial lokal mengenai PHP dan MyS menggunakan

1JAMMEMBUAT

APLIKASI RENTAL MOBIL

DENGAN PHP DAN MYSQL

SIGIT DWI PRASETYO

Page 2: E-Book Rental PHP PDO MYSQL - sixghakreasi.com Rental... · PDO-PHP APLIKASI RENTAL MOBIL PHP MYSQL Pengenalan singkat PDO Dari sekian banyak tutorial lokal mengenai PHP dan MyS menggunakan

SixghaKreasi Madigondo RT 26/10, Sidoharjo, Samigaluh, Kulon Progo , DI Yogyakarta 55673

081-895-6973 [email protected]

DAFTAR ISI

Hal. 3 Pengenalan singkat PDO

Hal. 3 Membuat Database

Hal. 4 Membuat Layout

Hal. 5 Membuat Koneksi ke Database

Hal. 6 Membuat File Index

Hal. 1 2 Membuat File Content

Hal. 1 3 Membuat Menu

Hal. 1 5 Membuat Halaman Utaman

Hal. 4 9 Membuat Laporan

Page 3: E-Book Rental PHP PDO MYSQL - sixghakreasi.com Rental... · PDO-PHP APLIKASI RENTAL MOBIL PHP MYSQL Pengenalan singkat PDO Dari sekian banyak tutorial lokal mengenai PHP dan MyS menggunakan

PDO-PHP APLIKASI RENTAL MOBIL PHP MYSQL

Pengenalan singkat PDO

Dari sekian banyak tutorial lokal mengenai PHP dan MySmenggunakan extension mysql extensionMungkin ada sedikit yang mulai beralih kecara yang lebih baik dan dianjurkan daripada menggunakan extension mySQL dan MySQLi yaitu menggunakan PDO (PHP Data Object)tapi bisa mendukung ke DBMS yang lain. Dan banyak framework PHP yang sudah menggunakan PDO secara default, salah satunya yii fr

Mengapa Menggunakan PDO PHP sebagai Koneksi Database?, maka jawaban yang paling singkat, padat dan jelas adalah karena fungsi mysql_*() sudah deprecated sejak PHP versi 5.1 dan akan segera dihilangkan dari PHP pada versimenggunakan PDO sebagai salah satu metode mengakses basis data (dalam hal ini mysql).

“PDO : PHP Data Objek adalah sebuah lapisan akses basis data yang menyeragamkan metode untuk mengakses banyak database. “

PDO tidak memperhitungkan sintaks database secara spesifik, tetapi dapat memungkinkan untuk proses switching database dan platform yang biasanya dihindari oleh programmer, secara mudah adalah dengan melakukan deklarasi koneksi untuk beberapa database sekaligusdatabase berikut ini.

PDO_DBLIB ( FreeTDS / Microsoft SQL Server / Sybase ) PDO_FIREBIRD ( Firebird/Interbase 6 ) PDO_IBM ( IBM DB2 ) PDO_INFORMIX ( IBM Informix Dynamic Server ) PDO_MYSQL ( MySQL 3.x/4.x/5.x ) PDO_OCI ( Oracle Call Interfa PDO_ODBC ( ODBC v3 (IBM DB2, unixODBC and win32 ODBC) ) PDO_PGSQL ( PostgreSQL ) PDO_SQLITE ( SQLite 3 and SQLite 2 ) PDO_4D ( 4D )

Membuat Database

Sebelum memulai coding pastikan terlebih dahulu, Anda sudah membuatbernama rental. Di dalamnya mesti ada lima tabel ini:

APLIKASI RENTAL MOBIL PHP MYSQL

3

Dari sekian banyak tutorial lokal mengenai PHP dan MySQL di Internet, hampir semuanya mysql extension. Padahal kalo dilihat, extension itu sudah old school.

Mungkin ada sedikit yang mulai beralih ke MySQLi extension. Sebenernya mulai PHP 5.1 sudah ada cara yang lebih baik dan dianjurkan daripada menggunakan extension mySQL dan MySQLi yaitu

Object). PDO sendiri tidak bergantung kepada database MySQL saja, tapi bisa mendukung ke DBMS yang lain. Dan banyak framework PHP yang sudah menggunakan PDO

yii framework.

Mengapa Menggunakan PDO PHP sebagai Koneksi Database?, maka jawaban yang paling singkat, padat dan jelas adalah karena fungsi mysql_*() sudah deprecated sejak PHP versi 5.1 dan akan segera dihilangkan dari PHP pada versi-versi berikutnya. Untuk itu pada tulisan ini saya akan menggunakan PDO sebagai salah satu metode mengakses basis data (dalam hal ini mysql).

“PDO : PHP Data Objek adalah sebuah lapisan akses basis data yang menyeragamkan metode untuk

memperhitungkan sintaks database secara spesifik, tetapi dapat memungkinkan untuk proses switching database dan platform yang biasanya dihindari oleh programmer, secara mudah adalah dengan melakukan deklarasi koneksi untuk beberapa database sekaligus

PDO_DBLIB ( FreeTDS / Microsoft SQL Server / Sybase ) PDO_FIREBIRD ( Firebird/Interbase 6 )

PDO_INFORMIX ( IBM Informix Dynamic Server ) PDO_MYSQL ( MySQL 3.x/4.x/5.x ) PDO_OCI ( Oracle Call Interface ) PDO_ODBC ( ODBC v3 (IBM DB2, unixODBC and win32 ODBC) )

PDO_SQLITE ( SQLite 3 and SQLite 2 )

pastikan terlebih dahulu, Anda sudah membuatdalamnya mesti ada lima tabel ini:

QL di Internet, hampir semuanya . Padahal kalo dilihat, extension itu sudah old school.

. Sebenernya mulai PHP 5.1 sudah ada cara yang lebih baik dan dianjurkan daripada menggunakan extension mySQL dan MySQLi yaitu

. PDO sendiri tidak bergantung kepada database MySQL saja, tapi bisa mendukung ke DBMS yang lain. Dan banyak framework PHP yang sudah menggunakan PDO

Mengapa Menggunakan PDO PHP sebagai Koneksi Database?, maka jawaban yang paling singkat, padat dan jelas adalah karena fungsi mysql_*() sudah deprecated sejak PHP versi 5.1 dan akan

u pada tulisan ini saya akan menggunakan PDO sebagai salah satu metode mengakses basis data (dalam hal ini mysql).

“PDO : PHP Data Objek adalah sebuah lapisan akses basis data yang menyeragamkan metode untuk

memperhitungkan sintaks database secara spesifik, tetapi dapat memungkinkan untuk proses switching database dan platform yang biasanya dihindari oleh programmer, secara mudah adalah dengan melakukan deklarasi koneksi untuk beberapa database sekaligus. PDO mendukung

pastikan terlebih dahulu, Anda sudah membuat database yang

Page 4: E-Book Rental PHP PDO MYSQL - sixghakreasi.com Rental... · PDO-PHP APLIKASI RENTAL MOBIL PHP MYSQL Pengenalan singkat PDO Dari sekian banyak tutorial lokal mengenai PHP dan MyS menggunakan

PDO-PHP APLIKASI RENTAL MOBIL PHP MYSQL

CREATE TABLE `user` (

`id_user` varchar(10) NOT NULL,

`nama_user` varchar(20) NOT NULL,

`username` varchar(20) NOT NULL,

`password` varchar(50) NOT NULL,

`level` enum('admin','user') NOT NULL DEFAULT 'admin'

)

CREATE TABLE `level` (

`id_level` int(3) NOT NULL,

`level` varchar(10) NOT NULL

)

CREATE TABLE `mobil` (

`id_mobil` varchar(7) NOT NULL,

`nama_mobil` varchar(20) NOT NULL,

`nopol` varchar(100) NOT NULL,

`harga` decimal(10,2) NOT NULL,

`status` enum('Tersedia','Disewa') NOT NULL DEFAULT 'Tersedia'

)

CREATE TABLE `pelanggan` (

`id_pelanggan` varchar(7) NOT NULL,

`nama_pelanggan` varchar(20) NOT NULL,

`alamat` varchar(100) NOT NULL

)

CREATE TABLE `transaksi` (

`id_transaksi` varchar(10) NOT NULL,

`id_pelanggan` varchar(10) NOT NULL,

`id_mobil` varchar(10) NOT NULL,

`lama_sewa` int(3) NOT NULL,

`harga_sewa` decimal(10,2) NOT NULL,

`total_sewa` decimal(10,2) NOT NULL,

`denda` decimal(10,2) NOT NULL,

`status_mobil` enum('Open','Disewa','Dikembalikan') NOT NULL DEFAULT 'Open',

`tanggal_transaksi` datetime NOT NULL,

`tanggal_sewa` varchar(10) NOT NULL,

`tanggal_kembali` varchar(10) NOT NULL

)

Membuat Layout

APLIKASI RENTAL MOBIL PHP MYSQL

4

`level` enum('admin','user') NOT NULL DEFAULT 'admin'

`status` enum('Tersedia','Disewa') NOT NULL DEFAULT 'Tersedia'

`nama_pelanggan` varchar(20) NOT NULL,

`id_transaksi` varchar(10) NOT NULL,

`id_pelanggan` varchar(10) NOT NULL,

`harga_sewa` decimal(10,2) NOT NULL,

`total_sewa` decimal(10,2) NOT NULL,

`status_mobil` enum('Open','Disewa','Dikembalikan') NOT NULL DEFAULT 'Open',

`tanggal_transaksi` datetime NOT NULL,

`tanggal_sewa` varchar(10) NOT NULL,

`tanggal_kembali` varchar(10) NOT NULL

Page 5: E-Book Rental PHP PDO MYSQL - sixghakreasi.com Rental... · PDO-PHP APLIKASI RENTAL MOBIL PHP MYSQL Pengenalan singkat PDO Dari sekian banyak tutorial lokal mengenai PHP dan MyS menggunakan

PDO-PHP APLIKASI RENTAL MOBIL PHP MYSQL

Untuk layout saya menggunakan template gratis dari template yang sering digunakan oleh developer sebagai template backend nya, dulu nya template ini berbayar tapi entah kenapa sekarang template ini tidak dijual lagi jaddikembangkan lagi, walaupun begitu kita masih tetap bisa menggunakan nya sebagai salah satu pilihan untuk template backend.

Buatlah folder baru dengan nama “rental” aceAdmin didalamnya.

Membuat Koneksi ke Database

Karena PDO adalah fungsi/fitur PHP yang ditulis menggunakan objek, maka untuk membuat koneksi antara PHP dengan MySQL, kita menggunakandari class PDO (menggunakan keyword:Berikut adalah struktur dasar cara penulisan $conn = new PDO('mysql:host=lokasi_db;dbname=nama_database',

"nama_user", "password_user");

Variabel $conn adalah variabel yang akan menjadisebagai “Database Handler”. Object inilah yang nantinya akan kita gunakan untuk menjalankan perintah-perintah PDO. Nama variabel boleh bebas, dan tidak harusArgumen dari constructor PDO terdiri dari 3 bagian, bagian pertama berisiserver(misalnya:mysql) kemudian diikuti dengan

APLIKASI RENTAL MOBIL PHP MYSQL

5

Untuk layout saya menggunakan template gratis dari Aceadmin. Aceadmin adalah salah satu template yang sering digunakan oleh developer sebagai template backend nya, dulu nya template ini berbayar tapi entah kenapa sekarang template ini tidak dijual lagi jadi sudah otomatis tidak dikembangkan lagi, walaupun begitu kita masih tetap bisa menggunakan nya sebagai salah satu pilihan untuk template backend.

dengan nama “rental” di htdocs xampp, kemudian copy folder asset template

dengan PDO contructor

adalah fungsi/fitur PHP yang ditulis menggunakan objek, maka untuk membuat koneksi antara PHP dengan MySQL, kita menggunakan PDO constructor, yakni dengan membuat objek baru dari class PDO (menggunakan keyword: new). Berikut adalah struktur dasar cara penulisan PDO constructor untuk database MySQL:

= new PDO('mysql:host=lokasi_db;dbname=nama_database',

adalah variabel yang akan menjadi object PDO. Object ini biasa disebut . Object inilah yang nantinya akan kita gunakan untuk menjalankan

perintah PDO. Nama variabel boleh bebas, dan tidak harus $conn. PDO terdiri dari 3 bagian, bagian pertama berisi

(misalnya:mysql) kemudian diikuti dengan alamat server dan nama database

Aceadmin adalah salah satu template yang sering digunakan oleh developer sebagai template backend nya, dulu nya template ini

i sudah otomatis tidak dikembangkan lagi, walaupun begitu kita masih tetap bisa menggunakan nya sebagai salah satu

copy folder asset template

adalah fungsi/fitur PHP yang ditulis menggunakan objek, maka untuk membuat koneksi yakni dengan membuat objek baru

untuk database MySQL:

. Object ini biasa disebut . Object inilah yang nantinya akan kita gunakan untuk menjalankan

PDO terdiri dari 3 bagian, bagian pertama berisi nama database nama database, semuanya di

Page 6: E-Book Rental PHP PDO MYSQL - sixghakreasi.com Rental... · PDO-PHP APLIKASI RENTAL MOBIL PHP MYSQL Pengenalan singkat PDO Dari sekian banyak tutorial lokal mengenai PHP dan MyS menggunakan

PDO-PHP APLIKASI RENTAL MOBIL PHP MYSQL

dalam 1 string. Untuk argumen kedua diisi denganuser. OK kita lanjut ke next step, Buatlah folder config dan file konekconfig/koneksi.php silahkan buka text editor anda lalu ketikan kode di bawah ini. <?php

class DB{

private $dbHost = "127.0.0.1";

private $dbUsername = "root";

private $dbPassword = "qwerty";

private $dbName = "rental";

public function __construct(){

if(!isset($this->db)){

// Connect to the database

try{

$conn = new PDO("mysql:host=".$this-

$conn -> setAttribute(PDO::ATTR_ERRMODE, P

$this->db = $conn;

}catch(PDOException $e){

die("Failed to connect with MySQL: " . $e

}

}

}

public function getmyDB()

{

if ($this->db instanceof PDO)

{

return $this->db;

}

}

?>

...dst Koding bisa dilihat di source code lengkap.

Membuat File Index

File index.php adalah sebuah file yang menjadi indeks sebuah aplikasi ini file index.php berisi form login.

APLIKASI RENTAL MOBIL PHP MYSQL

6

dalam 1 string. Untuk argumen kedua diisi dengan nama user, dan argumen ketiga berisi

Buatlah folder config dan file koneksi.php sehingga struktur foldernya

anda lalu ketikan kode di bawah ini.

private $dbHost = "127.0.0.1";

// Connect to the database

->dbHost.";dbname=".$this->dbName, $this->dbUsername, $this

> setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);

die("Failed to connect with MySQL: " . $e->getMessage());

...dst Koding bisa dilihat di source code lengkap.

adalah sebuah file yang menjadi indeks sebuah aplikasi berbasis aplikasi ini file index.php berisi form login.

ketiga berisi password

.php sehingga struktur foldernya

>dbUsername, $this->dbPassword);

aplikasi berbasis website. Didalam

Page 7: E-Book Rental PHP PDO MYSQL - sixghakreasi.com Rental... · PDO-PHP APLIKASI RENTAL MOBIL PHP MYSQL Pengenalan singkat PDO Dari sekian banyak tutorial lokal mengenai PHP dan MyS menggunakan

PDO-PHP APLIKASI RENTAL MOBIL PHP MYSQL

<form id="login" name="login" method="POST" action="login">

<fieldset>

<label class="block clearfix">

<span class="block input-icon input-icon

<input type="text" class="form-control" placeholder="Username" name="username" required="required"/>

<i class="ace-icon fa fa-user"></i>

</span>

</label>

<label class="block clearfix">

<span class="block input-icon input-icon

<input type="password" class="form-control" name="password" id="password" required="required"/>

<i class="ace-icon fa fa-lock"></i>

</span>

</label>

<div class="space"></div>

<div class="clearfix">

<button type="submit" class="width-35 pull

<i class="ace-icon fa fa-key"></i>

<span class="bigger-110">Login</span>

</button>

</div>

<div class="space-4"></div>

</fieldset>

</form>

Membuat otentikasi untuk mengecek apakah user sudah login atau belum,username / benar atau salah. jika sudah selesai pengecekkanmaka akan kembali ke index.php

Buatlah folder halaman/hal_user/cek_login.php

APLIKASI RENTAL MOBIL PHP MYSQL

7

<form id="login" name="login" method="POST" action="login">

icon-right">

control" placeholder="Username" name="username" required="required"/>

icon-right">

control" name="password" id="password" required="required"/>

35 pull-right btn btn-sm btn-primary">

110">Login</span>

Membuat otentikasi untuk mengecek apakah user sudah login atau belum,username / selesai pengecekkan maka akan diarahkan ke site.php dan jika

akan kembali ke index.php.

Buatlah folder halaman/hal_user/cek_login.php

control" placeholder="Username" name="username" required="required"/>

control" name="password" id="password" required="required"/>

Membuat otentikasi untuk mengecek apakah user sudah login atau belum,username / password ke site.php dan jika gagal

Page 8: E-Book Rental PHP PDO MYSQL - sixghakreasi.com Rental... · PDO-PHP APLIKASI RENTAL MOBIL PHP MYSQL Pengenalan singkat PDO Dari sekian banyak tutorial lokal mengenai PHP dan MyS menggunakan

PDO-PHP APLIKASI RENTAL MOBIL PHP MYSQL

<?php

include "../../config/koneksi.php";

$db = new DB();

$username = $db->anti_injection($_POST['username']);

$password = $db->anti_injection($_POST['password']);

$r = $db->getRows('user',array('where'=>

array('username'=>$username,'password'=>$password),'return_type'=>'single'));

$ketemu = $db->getRows('user',array('where'=>

array('username'=>$username,'password'=>$password),'return_type'=>'count'));

if ($ketemu > 0){ session_start();

// bikin variabel session

$_SESSION['username'] = $r['id_user'];

$_SESSION['passuser'] = $r['passw

$_SESSION['namauser'] = $r['nama_user'];

$_SESSION['leveluser'] = $r['level'];

// bikin id_session yang unik dan mengupdatenya agar slalu berubah

// agar user biasa sulit untuk mengganti password Administrator

$sid_lama = session_id();

session_regenerate_id();

$sid_baru = session_id();

header("location:home");

}

else{ header("location:login-failed");}

?>

Membuat File site

Jika pengecekkan lolos dari cek_login.php maka <?php

//error_reporting(0);

session_start();

// Apabila user belum login

if (empty($_SESSION['namauser']) AND empty($_SESSION['passuser'])){

echo "<h1>Untuk mengakses halaman, Anda harus login dulu.</h1><p><

}

// Apabila user sudah login dengan benar, maka terbentuklah session

else{

$act = isset($_GET['act']) ? $_GET['act'] : '';

?>

<!DOCTYPE html>

<html lang="en">

<head>

<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" />

<meta charset="utf-8" />

<title> Administrator </title>

APLIKASI RENTAL MOBIL PHP MYSQL

8

>anti_injection($_POST['username']);

>anti_injection($_POST['password']);

>getRows('user',array('where'=>

array('username'=>$username,'password'=>$password),'return_type'=>'single'));

user',array('where'=>

array('username'=>$username,'password'=>$password),'return_type'=>'count'));

$_SESSION['username'] = $r['id_user'];

$_SESSION['passuser'] = $r['password'];

$_SESSION['namauser'] = $r['nama_user'];

$_SESSION['leveluser'] = $r['level'];

// bikin id_session yang unik dan mengupdatenya agar slalu berubah

// agar user biasa sulit untuk mengganti password Administrator

failed");}

Jika pengecekkan lolos dari cek_login.php maka akan diarahkan ke file site.php

if (empty($_SESSION['namauser']) AND empty($_SESSION['passuser'])){

echo "<h1>Untuk mengakses halaman, Anda harus login dulu.</h1><p><a href=\"index.php\">LOGIN</a></p>";

// Apabila user sudah login dengan benar, maka terbentuklah session

$act = isset($_GET['act']) ? $_GET['act'] : '';

Compatible" content="IE=edge,chrome=1" />

">LOGIN</a></p>";

Page 9: E-Book Rental PHP PDO MYSQL - sixghakreasi.com Rental... · PDO-PHP APLIKASI RENTAL MOBIL PHP MYSQL Pengenalan singkat PDO Dari sekian banyak tutorial lokal mengenai PHP dan MyS menggunakan

PDO-PHP APLIKASI RENTAL MOBIL PHP MYSQL

<meta name="description" content="Static &amp; Dynamic Tables" />

<meta name="viewport" content="width=device

<!-- bootstrap & fontawesome -->

<link rel="stylesheet" href="assets/css/bootstrap.css" />

<link rel="stylesheet" href="assets/font

<!-- page specific plugin styles --

<link rel="stylesheet" href="assets/css/jquery

<link rel="stylesheet" href="assets/css/chosen.min.css

<link rel="stylesheet" href="assets/css/bootstrap

<!-- text fonts -->

<link rel="stylesheet" href="assets/css/fonts.googleapis.com.css" />

<!-- ace styles -->

<link rel="stylesheet" href="assets/css/ace.mi

<!--[if lte IE 9]>

<link rel="stylesheet" href="assets/css/ace

<![endif]-->

<link rel="stylesheet" href="assets/css/ace

<link rel="stylesheet" href="assets/css/ace

<!--[if lte IE 9]>

<link rel="stylesheet" href="assets/css/ace

<![endif]-->

<!-- inline styles related to this page

<!-- ace settings handler -->

<script src="assets/js/ace-extra.min.js"></script>

<!-- HTML5shiv and Respond.js for IE8 to support HTML5 elements and media queries

<!--[if lte IE 8]>

<script src="assets/js/html5shiv.min.js"></script>

<script src="assets/js/respond.min.js"></script>

<![endif]-->

</head>

<body class="no-skin">

<div id="navbar" class="navbar navbar

<div class="navbar-container ace-save

<button type="button" class="navbar

<span class="sr-only">Toggle sidebar</span>

<span class="icon-bar"></span>

<span class="icon-bar"></span>

<span class="icon-bar"></span>

</button>

<div class="navbar-header pull-left">

<a href="?halamane=beranda" class="navbar

</div>

<div class="navbar-buttons navbar-

<ul class="nav ace-nav">

<li class="light-blue dropdown-modal">

<a data-toggle="dropdown" href="#" class="dropdown

APLIKASI RENTAL MOBIL PHP MYSQL

9

<meta name="description" content="Static &amp; Dynamic Tables" />

meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0" />

<link rel="stylesheet" href="assets/css/bootstrap.css" />

link rel="stylesheet" href="assets/font-awesome/4.5.0/css/font-awesome.min.css" />

-->

<link rel="stylesheet" href="assets/css/jquery-ui.custom.min.css" />

<link rel="stylesheet" href="assets/css/chosen.min.css" />

<link rel="stylesheet" href="assets/css/bootstrap-datepicker3.min.css" />

<link rel="stylesheet" href="assets/css/fonts.googleapis.com.css" />

<link rel="stylesheet" href="assets/css/ace.min.css" class="ace-main-stylesheet" id="main-

<link rel="stylesheet" href="assets/css/ace-part2.min.css" class="ace-main-stylesheet" />

<link rel="stylesheet" href="assets/css/ace-skins.min.css" />

<link rel="stylesheet" href="assets/css/ace-rtl.min.css" />

<link rel="stylesheet" href="assets/css/ace-ie.min.css" />

inline styles related to this page -->

extra.min.js"></script>

HTML5shiv and Respond.js for IE8 to support HTML5 elements and media queries -->

<script src="assets/js/html5shiv.min.js"></script>

ond.min.js"></script>

<div id="navbar" class="navbar navbar-default ace-save-state">

save-state" id="navbar-container">

button type="button" class="navbar-toggle menu-toggler pull-left" id="menu-toggler" data-

only">Toggle sidebar</span>

left">

<a href="?halamane=beranda" class="navbar-brand"><small>Aplikasi Rental Mobil</small></a>

-header pull-right" role="navigation">

modal">

toggle="dropdown" href="#" class="dropdown-toggle">

scale=1.0" />

-ace-style" />

-target="#sidebar">

Page 10: E-Book Rental PHP PDO MYSQL - sixghakreasi.com Rental... · PDO-PHP APLIKASI RENTAL MOBIL PHP MYSQL Pengenalan singkat PDO Dari sekian banyak tutorial lokal mengenai PHP dan MyS menggunakan

PDO-PHP APLIKASI RENTAL MOBIL PHP MYSQL

<img class="nav-user-photo" src="assets/images/avatars/avatar2.png" alt="Jason's Photo" />

<span class="user-info">

<small>Welcome,</small>

<?php echo"$_SESSION[namauser]"; ?>

</span>

<i class="ace-icon fa fa-caret-down"></i>

</a>

<ul class="user-menu dropdown-menu

<li><a href="#"><i class="ace-icon fa fa

<li class="divider"></li>

<li><a href="logout"><i class="ace

</ul>

</li>

</ul>

</div>

</div><!-- /.navbar-container -->

</div>

<!-- start .nav-list -->

<div class="main-container ace-save

<script type="text/javascript">

try{ace.settings.loadState('main-container')}catch(e){}

</script>

<div id="sidebar" class="sidebar responsive ace

<script type="text/javascript">

try{ace.settings.loadState('sidebar')}catch(e){}

</script>

<!-- \.nav-list -->

<ul class="nav nav-list">

<?php include "menu/menu_active.php

<!--LEVEL ADMIN-->

<?php

if ($_SESSION['leveluser']=='admin'){include "menu/menu_admin.php";}

//Jika level ada user

else {include "menu/menu_user.php";}

?>

</ul>

<!-- /.nav-list -->

<div class="sidebar-toggle sidebar

<i id="sidebar-toggle-icon" class="ace

data-icon1="ace-icon fa fa-angle-double

</div>

</div>

<!--isi dari halaman conten -->

<div class="main-content">

<div class="main-content-inner">

<div class="breadcrumbs ace-save-state" id="breadcrumbs">

<ul class="breadcrumb">

<li><i class="ace-icon fa fa-home home

<li><a href="#"><?php echo"".strtoupper($_GET['halamane'])."";?></a></li>

<li class="active">

<?php if ($act==''){ echo"View Data";}

</ul><!-- /.breadcrumb -->

</div>

APLIKASI RENTAL MOBIL PHP MYSQL

10

photo" src="assets/images/avatars/avatar2.png" alt="Jason's Photo" />

<?php echo"$_SESSION[namauser]"; ?>

down"></i>

menu-right dropdown-menu dropdown-yellow dropdown-caret dropdown

icon fa fa-user"></i>Profile</a></li>

<li><a href="logout"><i class="ace-icon fa fa-power-off"></i>Logout</a></li>

save-state" id="main-container">

container')}catch(e){}

div id="sidebar" class="sidebar responsive ace-save-state">

try{ace.settings.loadState('sidebar')}catch(e){}

<?php include "menu/menu_active.php";?>

if ($_SESSION['leveluser']=='admin'){include "menu/menu_admin.php";}

else {include "menu/menu_user.php";}

toggle sidebar-collapse" id="sidebar-collapse">

icon" class="ace-icon fa fa-angle-double-left ace-save-state"

double-left" data-icon2="ace-icon fa fa-angle-double-right"></i

state" id="breadcrumbs">

home home-icon"></i><a href="home">Home</a></li>

<li><a href="#"><?php echo"".strtoupper($_GET['halamane'])."";?></a></li>

<?php if ($act==''){ echo"View Data";} else{echo"$act";}?></li>

photo" src="assets/images/avatars/avatar2.png" alt="Jason's Photo" />

caret dropdown-close">

right"></i>

Page 11: E-Book Rental PHP PDO MYSQL - sixghakreasi.com Rental... · PDO-PHP APLIKASI RENTAL MOBIL PHP MYSQL Pengenalan singkat PDO Dari sekian banyak tutorial lokal mengenai PHP dan MyS menggunakan

PDO-PHP APLIKASI RENTAL MOBIL PHP MYSQL

<div class="page-content">

<div class="ace-settings-container" id="ace

<div class="btn btn-app btn-xs btn

<i class="ace-icon fa fa-cog bigger

</div>

<div class="ace-settings-box clearfix" id="ace

<div class="pull-left width-50">

<div class="ace-settings-item">

<input type="checkbox" class="ace ace

autocomplete="off" />

<label class="lbl" for="ace-settings

</div>

<div class="ace-settings-item">

<input type="checkbox" class="ace ace

autocomplete="off" />

<label class="lbl" for="ace-settings

</div>

<div class="ace-settings-item">

<input type="checkbox" class="ace ace

autocomplete="off" />

<label class="lbl" for="ace-settings

</div>

</div><!-- /.pull-left -->

</div><!-- /.ace-settings-box -->

</div><!-- /.ace-settings-container

<div class="page-header">

</div><!-- /.page-header -->

<div class="row">

<div class="col-xs-12">

<!-- PAGE CONTENT BEGINS -->

<?php include "content.php"; ?>

<!-- PAGE CONTENT ENDS -->

</div><!-- /.col -->

</div><!-- /.row -->

</div><!-- /.page-content -->

</div>

</div><!-- /.main-content -->

<!--Akhir isi dari halaman conten

<div class="footer">

<div class="footer-inner">

<div class="footer-content">

<span class="bigger-120">

<span class="blue bolder">sixghakreasi&copy; 2018</span>

</span>

</div>

</div>

</div>

<a href="#" id="btn-scroll-up" class="btn

<i class="ace-icon fa fa-angle-double

APLIKASI RENTAL MOBIL PHP MYSQL

11

container" id="ace-settings-container">

xs btn-warning ace-settings-btn" id="ace-settings-btn">

cog bigger-130"></i>

box clearfix" id="ace-settings-box">

<input type="checkbox" class="ace ace-checkbox-2 ace-save-state" id="ace-settings-navbar"

settings-navbar"> Fixed Navbar</label>

<input type="checkbox" class="ace ace-checkbox-2 ace-save-state" id="ace-settings-sidebar"

settings-sidebar"> Fixed Sidebar</label>

input type="checkbox" class="ace ace-checkbox-2 ace-save-state" id="ace-settings-breadcrumbs"

settings-breadcrumbs"> Fixed Breadcrumbs</label>

container -->

Akhir isi dari halaman conten -->

<span class="blue bolder">sixghakreasi&copy; 2018</span>

up" class="btn-scroll-up btn btn-sm btn-inverse">

double-up icon-only bigger-110"></i>

navbar"

sidebar"

breadcrumbs"

Page 12: E-Book Rental PHP PDO MYSQL - sixghakreasi.com Rental... · PDO-PHP APLIKASI RENTAL MOBIL PHP MYSQL Pengenalan singkat PDO Dari sekian banyak tutorial lokal mengenai PHP dan MyS menggunakan

PDO-PHP APLIKASI RENTAL MOBIL PHP MYSQL

</a>

</div>

</body>

</html>

Membuat File Content

File content.php ini disisipkan di file site.php yang berisi kontent utama. <?php

// Apabila user belum login

if (empty($_SESSION['namauser']) AND empty($_SESSION['passuser'])){

echo "<h1>Untuk mengakses halaman, Anda harus login dulu.</h1><p><a href=

}

// Apabila user sudah login dengan benar, maka terbentuklah sessio

else{

include "config/koneksi.php";

include "config/library.php";

// Home (Beranda)

if ($_GET['halamane']=='home'){

include "halaman/hal_beranda/home.php";

}

// Error 404

elseif ($_GET['halamane']=='error_404'){

include "halaman/hal_beranda/404.php";

}

// User

elseif ($_GET['halamane']=='user'){

if ($_SESSION['leveluser']=='admin'){

include "halaman/hal_user/user.php";

}

}

// pelanggan

elseif ($_GET['halamane']=='pelanggan'){

if ($_SESSION['leveluser']=='admin'){

include "halaman/hal_pelanggan/pelanggan.php";

}

}

// mobil

elseif ($_GET['halamane']=='mobil'){

if ($_SESSION['leveluser']=='admin'){

include "halaman/hal_mobil/mobil.php";

}

}

// transaksi

APLIKASI RENTAL MOBIL PHP MYSQL

12

.php ini disisipkan di file site.php yang berisi kontent utama.

if (empty($_SESSION['namauser']) AND empty($_SESSION['passuser'])){

echo "<h1>Untuk mengakses halaman, Anda harus login dulu.</h1><p><a href=\"index.php\">LOGIN</a></p>";

// Apabila user sudah login dengan benar, maka terbentuklah session

include "halaman/hal_beranda/home.php";

elseif ($_GET['halamane']=='error_404'){

"halaman/hal_beranda/404.php";

if ($_SESSION['leveluser']=='admin'){

include "halaman/hal_user/user.php";

elseif ($_GET['halamane']=='pelanggan'){

if ($_SESSION['leveluser']=='admin'){

include "halaman/hal_pelanggan/pelanggan.php";

elseif ($_GET['halamane']=='mobil'){

if ($_SESSION['leveluser']=='admin'){

include "halaman/hal_mobil/mobil.php";

">LOGIN</a></p>";

Page 13: E-Book Rental PHP PDO MYSQL - sixghakreasi.com Rental... · PDO-PHP APLIKASI RENTAL MOBIL PHP MYSQL Pengenalan singkat PDO Dari sekian banyak tutorial lokal mengenai PHP dan MyS menggunakan

PDO-PHP APLIKASI RENTAL MOBIL PHP MYSQL

elseif ($_GET['halamane']=='transaksi'){

if ($_SESSION['leveluser']=='admin'){

include "halaman/hal_transaksi/transaksi.php";

}

}

// Report

elseif ($_GET['halamane']=='report'){

if ($_SESSION['leveluser']=='admin' OR $_SESSION['leveluser']=='user'){

include "halaman/hal_report/report.php";

}

}

else{

echo "<p>Halaman Tidak Tersedia.</p>";

}

}

?>

Membuat Menu

Selanjutnya buatlah folder menu/yang akan digunakan untuk memilihtombol di daftar menu yang diklik akan diperiksa <?php

//halaman home view

if ($_GET['halamane']=='home'){

$h_active="active";

}

//halaman user view

if ($_GET['halamane']=='user'){

$master_active_open="active open";

$master_user_active="active";

}

//halaman pelanggan view

if ($_GET['halamane']=='pelanggan'){

$master_active_open="active open";

$master_pelanggan_active="active";

}

//halaman mobil view

if ($_GET['halamane']=='mobil'){

$master_active_open="active open";

$master_mobil_active="active";

}

//halaman transaksi view

if ($_GET['halamane']=='transaksi'){

$transaksi_active_open="active open";

$transaksi_transaksi_active="active";

APLIKASI RENTAL MOBIL PHP MYSQL

13

elseif ($_GET['halamane']=='transaksi'){

if ($_SESSION['leveluser']=='admin'){

include "halaman/hal_transaksi/transaksi.php";

'halamane']=='report'){

if ($_SESSION['leveluser']=='admin' OR $_SESSION['leveluser']=='user'){

include "halaman/hal_report/report.php";

echo "<p>Halaman Tidak Tersedia.</p>";

folder menu/menu_active.php. Fungsi ini sebagai elemen view berupamemilih div yang ketika menu diklik. Melalui kondisional

tombol di daftar menu yang diklik akan diperiksa.

if ($_GET['halamane']=='user'){

$master_active_open="active open";

if ($_GET['halamane']=='pelanggan'){

$master_active_open="active open";

$master_pelanggan_active="active";

if ($_GET['halamane']=='mobil'){

$master_active_open="active open";

if ($_GET['halamane']=='transaksi'){

$transaksi_active_open="active open";

$transaksi_transaksi_active="active";

view berupa css class . Melalui kondisional if dan else if,

Page 14: E-Book Rental PHP PDO MYSQL - sixghakreasi.com Rental... · PDO-PHP APLIKASI RENTAL MOBIL PHP MYSQL Pengenalan singkat PDO Dari sekian banyak tutorial lokal mengenai PHP dan MyS menggunakan

PDO-PHP APLIKASI RENTAL MOBIL PHP MYSQL

}

//halaman Laporan view

if ($_GET['halamane']=='report'){

$laporan_active_open="active open";

$laporan_laporan_active="active";

}

?>

Buatlah folder dan file menu/menampilkan daftar menu. <!--DASHBOARD-->

<li class='<?php echo"$h_active"; ?>'>

<a href='home'><i class='menu-icon fa fa

<b class='arrow'></b></li>

<!--MASTER-->

<li class="<?php echo"$master_active_open"; ?>"><a href="#" class="dropdown

<i class="menu-icon fa fa-database"></i><span class="menu

<b class="arrow fa fa-angle-down"></b></a>

<b class="arrow"></b>

<ul class="submenu">

<li class="<?php echo"$master_user_active"; ?>">

<a href="user-view"><i class="menu-icon fa fa

<li class="<?php echo"$master_pelanggan_active"; ?>">

<a href="pelanggan-view"><i class="menu

<li class="<?php echo"$master_mobil_active"; ?>">

<a href="mobil-view"><i class="menu-

</ul>

</li>

<!--Transaksi-->

<li class="<?php echo"$transaksi_active_open"; ?>">

<a href="#" class="dropdown-toggle"><i class="menu

<span class="menu-text"> Transaksi </span><b class="arrow fa fa

<b class="arrow"></b>

<ul class="submenu">

<li class="<?php echo"$transaksi_transaksi_active"; ?>">

<a href="transaksi-view"><i class="menu

<b class="arrow"></b></li>

</ul>

</li>

<!--Laporan-->

<li class="<?php echo"$laporan_active_open"; ?>"><a href="#" class="dropdown

<i class="menu-icon fa fa-bar-chart-

<b class="arrow fa fa-angle-down"></b></a>

<b class="arrow"></b>

<ul class="submenu">

<li class="<?php echo"$laporan_laporan_active"; ?>">

<a href="report-transaksi"><i class="menu

</ul>

</li>

Membuat Halaman Beranda

APLIKASI RENTAL MOBIL PHP MYSQL

14

if ($_GET['halamane']=='report'){

$laporan_active_open="active open";

Buatlah folder dan file menu/menu_admin.php, Setelah itu kita Ketik-kan

echo"$h_active"; ?>'>

icon fa fa-home'></i><span class='menu-text'> Home </span></a>

<li class="<?php echo"$master_active_open"; ?>"><a href="#" class="dropdown-toggle">

database"></i><span class="menu-text"> Master </span>

down"></b></a>

<li class="<?php echo"$master_user_active"; ?>">

icon fa fa-caret-right"></i>User Account</a><b class="arrow"></b></li>

<li class="<?php echo"$master_pelanggan_active"; ?>">

view"><i class="menu-icon fa fa-caret-right"></i>Pelanggan</a><b class="arrow"></b></li>

lass="<?php echo"$master_mobil_active"; ?>">

-icon fa fa-caret-right"></i>Mobil</a><b class="arrow"></b></li>

<li class="<?php echo"$transaksi_active_open"; ?>">

toggle"><i class="menu-icon fa fa-book"></i>

text"> Transaksi </span><b class="arrow fa fa-angle-down"></b></a>

<li class="<?php echo"$transaksi_transaksi_active"; ?>">

view"><i class="menu-icon fa fa-caret-right"></i>Transaksi</a>

<li class="<?php echo"$laporan_active_open"; ?>"><a href="#" class="dropdown-toggle">

-o"></i><span class="menu-text"> Laporan </span>

down"></b></a>

<li class="<?php echo"$laporan_laporan_active"; ?>">

transaksi"><i class="menu-icon fa fa-caret-right"></i>Laporan</a><b class="arrow"></b></li>

kan skrip berikut untuk

text'> Home </span></a>

right"></i>User Account</a><b class="arrow"></b></li>

right"></i>Pelanggan</a><b class="arrow"></b></li>

right"></i>Mobil</a><b class="arrow"></b></li>

right"></i>Laporan</a><b class="arrow"></b></li>

Page 15: E-Book Rental PHP PDO MYSQL - sixghakreasi.com Rental... · PDO-PHP APLIKASI RENTAL MOBIL PHP MYSQL Pengenalan singkat PDO Dari sekian banyak tutorial lokal mengenai PHP dan MyS menggunakan

PDO-PHP APLIKASI RENTAL MOBIL PHP MYSQL

Buatlah folder dan file halaman/berikut untuk menampilkan halaman home atau beranda <?php

// Apabila user belum login

if (empty($_SESSION['namauser']) AND empty($_SESSION['passuser'])){

echo "<h1>Untuk mengakses halaman, Anda harus login dulu.</h1><p><a href=

}

// Apabila user sudah login dengan

else{

// Initialing koneksi database

$db = new DB(); ?>

<div class="row"><div class='col-xs

<div class="alert alert-block alert

<button type="button" class="close" data

<i class="ace-icon fa fa-times"></i>

</button>

<p><strong>

<span class="black"><script language=JavaScript>var d = new Date();

var h = d.getHours();

if (h < 11) { document.write('Selamat pagi <

else { if (h < 15) { document.write('Selamat siang <?php echo $_SESSION['namauser']; ?>,'); }

else { if (h < 19) { document.write('Selamat sore <?php echo $_SESSION['namauser']; ?>,'); }

else { if (h <= 23) { document.write('Selamat malam <?php echo $_SESSION['namauser']; ?>,'); }

}}}</script></span></strong>

Silahkan pilih menu yang tersedia untuk mengelola konten ini

</p>

<p>Download manual book pengguna sistem</p>

<p><button class="btn btn-sm btn-success">Download</button></p>

</div>

</div>

</div><!-- /.row --><?php } ?>

APLIKASI RENTAL MOBIL PHP MYSQL

15

Buatlah folder dan file halaman/hal_beranda/home.php, Setelah itu kita untuk menampilkan halaman home atau beranda

if (empty($_SESSION['namauser']) AND empty($_SESSION['passuser'])){

echo "<h1>Untuk mengakses halaman, Anda harus login dulu.</h1><p><a href=\"index.php\">LOGIN</a></p>";

// Apabila user sudah login dengan benar, maka terbentuklah session

xs-12'>

block alert-success">

<button type="button" class="close" data-dismiss="alert">

times"></i>

<span class="black"><script language=JavaScript>var d = new Date();

if (h < 11) { document.write('Selamat pagi <?php echo $_SESSION['namauser']; ?>,'); }

else { if (h < 15) { document.write('Selamat siang <?php echo $_SESSION['namauser']; ?>,'); }

else { if (h < 19) { document.write('Selamat sore <?php echo $_SESSION['namauser']; ?>,'); }

23) { document.write('Selamat malam <?php echo $_SESSION['namauser']; ?>,'); }

Silahkan pilih menu yang tersedia untuk mengelola konten ini

<p>Download manual book pengguna sistem</p>

success">Download</button></p>

itu kita Ketik-kan skrip

">LOGIN</a></p>";

else { if (h < 15) { document.write('Selamat siang <?php echo $_SESSION['namauser']; ?>,'); }

else { if (h < 19) { document.write('Selamat sore <?php echo $_SESSION['namauser']; ?>,'); }

23) { document.write('Selamat malam <?php echo $_SESSION['namauser']; ?>,'); }

Page 16: E-Book Rental PHP PDO MYSQL - sixghakreasi.com Rental... · PDO-PHP APLIKASI RENTAL MOBIL PHP MYSQL Pengenalan singkat PDO Dari sekian banyak tutorial lokal mengenai PHP dan MyS menggunakan

PDO-PHP APLIKASI RENTAL MOBIL PHP MYSQL

Membuat Halaman User

Buatlah folder dan file halaman/hal_user/user.phpmenampilkan halaman user. <?php

// Apabila user belum login

if (empty($_SESSION['namauser']) AND empty($_SESSION['passuser'])){

echo "<h1>Untuk mengakses halaman, Anda harus login dulu.</h1><p><a href=

}

// Apabila user sudah login dengan benar, maka terbentuklah session

else{

// Initialing koneksi database

$db = new DB();

$aksi = "halaman/hal_user/aksi_user.php";

// mengatasi variabel yang belum di definisikan (notice undefined index)

$act = isset($_GET['act']) ? $_GET['act'] :

switch($act){

// Tampil User

default:

echo"<div class='row'>

<div class='col-xs-12'>

<div class='clearfix'>

<button class='btn btn-sm btn-pink' onclick=win

</div>

<br/>

<div class='table-header'>

Tabel User View

</div>

<div>";

echo"<table id='dynamic-table1' class='table table

APLIKASI RENTAL MOBIL PHP MYSQL

16

Buatlah folder dan file halaman/hal_user/user.php, Setelah itu kita Ketik-kan

if (empty($_SESSION['namauser']) AND empty($_SESSION['passuser'])){

echo "<h1>Untuk mengakses halaman, Anda harus login dulu.</h1><p><a href=\"index.php\">LOGIN</a></p>";

benar, maka terbentuklah session

$aksi = "halaman/hal_user/aksi_user.php";

// mengatasi variabel yang belum di definisikan (notice undefined index)

$act = isset($_GET['act']) ? $_GET['act'] : '';

<div class='clearfix'>

pink' onclick=window.location.href=\"add-user\"> Tambah User</button>

table1' class='table table-striped table-bordered table-hover'>

kan skrip berikut untuk

">LOGIN</a></p>";

Tambah User</button>

Page 17: E-Book Rental PHP PDO MYSQL - sixghakreasi.com Rental... · PDO-PHP APLIKASI RENTAL MOBIL PHP MYSQL Pengenalan singkat PDO Dari sekian banyak tutorial lokal mengenai PHP dan MyS menggunakan

PDO-PHP APLIKASI RENTAL MOBIL PHP MYSQL

<thead>

<tr>

<th class='center'>No</th>

<th>ID User</th>

<th>Username</th>

<th>Nama User</th>

<th class='hidden-480'>Level</th>

<th></th>

</tr>

</thead>

<tbody>";

$no=1;

// Pilih tabel di database

$user = $db->GetRowUser();

// Tampilkan data tabel yang dipilih

foreach($user ? $user : [] as $r){

$encrypted_txt = $db->encrypt_decrypt('encrypt', $r['id_user']);

echo "<tr>

<td class='center'>$no</td>

<td>$r[id_user]</td>

<td>$r[username]</td>

<td>$r[nama_user]</td>

<td class='hidden-480'>$r[level]</td>

<td>

<div class='hidden-sm hidden-xs action

<a class='green' href='edit-user-$encrypted_txt'><i class='

<a onclick=\"return confirm('Are sure want to delete this data ??')

<i class='ace-icon fa fa-trash-o bigger

</div>

<div class='hidden-md hidden-lg'>

<div class='inline pos-rel'>

<button class='btn btn-minier btn-

<i class='ace-icon fa fa-caret-down icon

</button>

<ul class='dropdown-menu dropdown-

<li><a href='edit-user-$encrypted_txt' class='tooltip

<span class='green'><i class='ace-

</li>

<li><a onclick=\"return confirm('Are sure want to delete this data ??')

<span class='red'><i class='ace-icon fa fa

</li>

</ul>

</div>

</div>

</td>

</tr>";

$no++;

}

echo "</tbody>

</table>

</div>

APLIKASI RENTAL MOBIL PHP MYSQL

17

// Tampilkan data tabel yang dipilih

foreach($user ? $user : [] as $r){

>encrypt_decrypt('encrypt', $r['id_user']);

480'>$r[level]</td>

xs action-buttons'>

$encrypted_txt'><i class='ace-icon fa fa-pencil bigger-130'></i></a>

"return confirm('Are sure want to delete this data ??')\" href='hapus-user-$encrypted_txt'>

o bigger-130'></i></a>

-yellow dropdown-toggle' data-toggle='dropdown' data-position='auto'>

down icon-only bigger-120'></i>

-only-icon dropdown-yellow dropdown-menu-right dropdown-caret dropdown

$encrypted_txt' class='tooltip-success' data-rel='tooltip' title='Edit'>

-icon fa fa-pencil-square-o bigger-120'></i></span></a>

"return confirm('Are sure want to delete this data ??')\" href='hapus-user

icon fa fa-trash-o bigger-120'></i></span></a>

130'></i></a>

$encrypted_txt'>

position='auto'>

caret dropdown-close'>

rel='tooltip' title='Edit'>

user-$encrypted_txt'>

Page 18: E-Book Rental PHP PDO MYSQL - sixghakreasi.com Rental... · PDO-PHP APLIKASI RENTAL MOBIL PHP MYSQL Pengenalan singkat PDO Dari sekian banyak tutorial lokal mengenai PHP dan MyS menggunakan

PDO-PHP APLIKASI RENTAL MOBIL PHP MYSQL

</div>

</div>";

break;

//form tambah data

case "tambahuser":

echo" <div class='row'>

<div class='col-xs-12'>

<div class='widget-box'>

<div class='widget-header'>

<h4 class='widget-title'>Form Tambah User</h4>

<div class='widget-toolbar'>

<a href='#' data-action='collapse'>

<i class='ace-icon fa fa-chevron-up'></i>

</a>

</div>

</div>

<div class='widget-body'>

<div class='widget-main'>

<form class='form-horizontal' method=

<div class='form-group'>

<label class='control-label col-xs

<div class='col-xs-12 col-sm-9'>

<div class='input-group'>

<span class='input-group-addon'>

<i class='ace-icon fa fa-key'></i>

</span>

<input type=\"text\" name=\"id_user

</div>

</div>

</div>

<div class='form-group'>

<label class='control-label col-xs

<div class='col-xs-12 col-sm-9'>

<div class='clearfix'>

<input type='text' id='name' name='nama_user' class='col

</div>

</div>

</div>

<div class='space-2'></div>

<div class='form-group'>

<label class='control-label col-xs

<div class='col-xs-12 col-sm-9'>

<div class='clearfix'>

<input type='text' id='username' name='username' class='col

</div>

</div>

APLIKASI RENTAL MOBIL PHP MYSQL

18

title'>Form Tambah User</h4>

action='collapse'>

up'></i>

horizontal' method=\"POST\" action=\"$aksi?halamane=user&act=input\">

xs-12 col-sm-3 no-padding-right' for='phone'>User ID:</label>

key'></i>

"id_user\" required='required' value='NEW-DOC' readonly='yes'>

xs-12 col-sm-3 no-padding-right' for='name'>Nama User:</label>

<input type='text' id='name' name='nama_user' class='col-xs-12 col-sm-8' required='required'/>

xs-12 col-sm-3 no-padding-right' for='name'>Username :</label>

<input type='text' id='username' name='username' class='col-xs-12 col-sm-8' required='required' maxlength='12'/>

right' for='phone'>User ID:</label>

right' for='name'>Nama User:</label>

8' required='required'/>

right' for='name'>Username :</label>

quired' maxlength='12'/>

Page 19: E-Book Rental PHP PDO MYSQL - sixghakreasi.com Rental... · PDO-PHP APLIKASI RENTAL MOBIL PHP MYSQL Pengenalan singkat PDO Dari sekian banyak tutorial lokal mengenai PHP dan MyS menggunakan

PDO-PHP APLIKASI RENTAL MOBIL PHP MYSQL

</div>

<div class='space-2'></div>

<div class='form-group'>

<label class='control-label col-xs

<div class='col-xs-12 col-sm-9'>

<div class='clearfix'>

<input type='password' name='password' id='password' class='col

</div>

</div>

</div>

<div class='hr hr-dotted'></div>

<div class='form-group'>

<label class='control-label col-xs

<div class='col-xs-12 col-sm-9'>

<select id='state' name='level' class='select2' data

<option value=\"0\" selected>- Pilih Level

// Pilih tabel di database

$level = $db->GetRowLevel();

// Tampilkan data tabel yang dipilih

foreach($level ? $level : [] as $r){

echo "<option value='$r[level]'>$r[level]</option>";

}

echo "</select>

</div>

</div>

<div class='space-2'></div>

<div class='form-actions'>

<button class='btn btn-info' type='submit'>

<i class='ace-icon fa fa-check bigger

Submit

</button>

&nbsp; &nbsp; &nbsp;

<button class='btn' type='reset' onclick=

<i class='ace-icon fa fa-undo bigger

Reset

</button>

</div>

</form>

</div>

</div>

</div>

</div><!-- /.span -->

</div>";

break;

//form ubah data

case "edituser":

//ambil data yang akan di edit

APLIKASI RENTAL MOBIL PHP MYSQL

19

xs-12 col-sm-3 no-padding-right' for='password'>Password:</label>

<input type='password' name='password' id='password' class='col-xs-12 col-sm-4' required='required'/>

xs-12 col-sm-3 no-padding-right' for='state'>Level</label>

<select id='state' name='level' class='select2' data-placeholder='Click to Choose...' required='required'>

Pilih Level -</option>";

// Tampilkan data tabel yang dipilih

foreach($level ? $level : [] as $r){

echo "<option value='$r[level]'>$r[level]</option>";

info' type='submit'>

check bigger-110'></i>

<button class='btn' type='reset' onclick=\"self.history.back()\">

undo bigger-110'></i>

right' for='password'>Password:</label>

4' required='required'/>

right' for='state'>Level</label>

placeholder='Click to Choose...' required='required'>

Page 20: E-Book Rental PHP PDO MYSQL - sixghakreasi.com Rental... · PDO-PHP APLIKASI RENTAL MOBIL PHP MYSQL Pengenalan singkat PDO Dari sekian banyak tutorial lokal mengenai PHP dan MyS menggunakan

PDO-PHP APLIKASI RENTAL MOBIL PHP MYSQL

$decrypted_txt = $db->encrypt_decrypt('decrypt', $_GET['id']);

$r = $db->getRows('user',array('where'=>array('id_user'=>

echo" <div class='row'>

<div class='col-xs-12'>

<div class='widget-box'>

<div class='widget-header'>

<h4 class='widget-title'>Form Ubah User</h4>

<div class='widget-toolbar'>

<a href='#' data-action='collapse'>

<i class='ace-icon fa fa-chevron-up'></i>

</a>

</div>

</div>

<div class='widget-body'>

<div class='widget-main'>

<form class='form-horizontal' method=

<div class='form-group'>

<label class='control-label col-xs

<div class='col-xs-12 col-sm-9'>

<div class='input-group'>

<span class='input-group-addon'>

<i class='ace-icon fa fa-key'></i>

</span>

<input type=\"text\" name=\"id_user

</div>

</div>

</div>

<div class='form-group'>

<label class='control-label col-xs

<div class='col-xs-12 col-sm-9'>

<div class='clearfix'>

<input type='text' id='name' name='nama_user' required='required' value='$r[nama_user]'/>

</div>

</div>

</div>

<div class='space-2'></div>

<div class='form-group'>

<label class='control-label col-xs

<div class='col-xs-12 col-sm-9'>

<div class='clearfix'>

<input type='text' id='username' name='username' required='required' maxlength='12' value='$r[username]'/>

</div>

</div>

</div>

<div class='space-2'></div>

<div class='form-group'>

<label class='control-label col-xs

APLIKASI RENTAL MOBIL PHP MYSQL

20

>encrypt_decrypt('decrypt', $_GET['id']);

>getRows('user',array('where'=>array('id_user'=>$decrypted_txt),'return_type'=>'single'));

title'>Form Ubah User</h4>

action='collapse'>

up'></i>

horizontal' method=\"POST\" action=\"$aksi?halamane=user&act=update\">

xs-12 col-sm-3 no-padding-right' for='phone'>User ID:</label>

key'></i>

"id_user\" required='required' value='$decrypted_txt' readonly='yes'>

xs-12 col-sm-3 no-padding-right' for='name'>Nama User:</label>

<input type='text' id='name' name='nama_user' required='required' value='$r[nama_user]'/>

xs-12 col-sm-3 no-padding-right' for='name'>Username :</label>

<input type='text' id='username' name='username' required='required' maxlength='12' value='$r[username]'/>

xs-12 col-sm-3 no-padding-right' for='password'>Password:</label>

$decrypted_txt),'return_type'=>'single'));

right' for='phone'>User ID:</label>

" required='required' value='$decrypted_txt' readonly='yes'>

right' for='name'>Nama User:</label>

right' for='name'>Username :</label>

<input type='text' id='username' name='username' required='required' maxlength='12' value='$r[username]'/>

right' for='password'>Password:</label>

Page 21: E-Book Rental PHP PDO MYSQL - sixghakreasi.com Rental... · PDO-PHP APLIKASI RENTAL MOBIL PHP MYSQL Pengenalan singkat PDO Dari sekian banyak tutorial lokal mengenai PHP dan MyS menggunakan

PDO-PHP APLIKASI RENTAL MOBIL PHP MYSQL

<div class='col-xs-12 col-sm-9'>

<div class='clearfix'>

<input type='password' name='password' id='password' required='required' value='$r[password]'/>

</div>

</div>

</div>

<div class='hr hr-dotted'></div>

<div class='form-group'>

<label class='control-label col-xs

<div class='col-xs-12 col-sm-9'>

<select id='state' name='level' class='select2' data

if ($r['level']==0){

echo "<option value=\"0\" selected>

}

// Pilih tabel di database

$level = $db->GetRowLevel();

// Tampilkan data tabel yang dipilih

foreach($level ? $level : [] as $w){

if ($r['level']==$w['level']){

echo "<option value=\"$w[level]\" selected>$w[level]</option>";

}

else{

echo "<option value=\"$w[level]\">$w[level]</option>";

}

}

echo "</select>

</div>

</div>

<div class='space-2'></div>

<div class='form-actions'>

<button class='btn btn-info' type='submit'>

<i class='ace-icon fa fa-check bigger

Submit

</button>

&nbsp; &nbsp; &nbsp;

<button class='btn' type='reset' onclick=

<i class='ace-icon fa fa-undo bigger

Reset

</button>

</div>

</form>

</div>

</div>

</div>

</div><!-- /.span -->

</div>";

break;

}

}

APLIKASI RENTAL MOBIL PHP MYSQL

21

<input type='password' name='password' id='password' required='required' value='$r[password]'/>

dotted'></div>

xs-12 col-sm-3 no-padding-right' for='state'>State</label>

select id='state' name='level' class='select2' data-placeholder='Click to Choose...' required='required'>";

" selected>- Pilih Level -</option>";

// Tampilkan data tabel yang dipilih

foreach($level ? $level : [] as $w){

" selected>$w[level]</option>";

">$w[level]</option>";

info' type='submit'>

check bigger-110'></i>

<button class='btn' type='reset' onclick=\"self.history.back()\">

undo bigger-110'></i>

<input type='password' name='password' id='password' required='required' value='$r[password]'/>

right' for='state'>State</label>

placeholder='Click to Choose...' required='required'>";

Page 22: E-Book Rental PHP PDO MYSQL - sixghakreasi.com Rental... · PDO-PHP APLIKASI RENTAL MOBIL PHP MYSQL Pengenalan singkat PDO Dari sekian banyak tutorial lokal mengenai PHP dan MyS menggunakan

PDO-PHP APLIKASI RENTAL MOBIL PHP MYSQL

?>

Buatlah folder dan file halaman/hal_user/berikut untuk meng-eksekusi perintah yang dikirim oleh form tambah,edit ataupun hapus di halaman user.

<?php

session_start();

// Apabila user belum login

if (empty($_SESSION['namauser']) AND empty($_SESSION['passuser'])){

echo "<h1>Untuk mengakses halaman, Anda harus login dulu.</h1><p><a href=

}

// Apabila user sudah login dengan benar, maka terbentuklah session

else{

include "../../config/koneksi.php";

// initial database

$db = new DB();

$tblName = 'user';

$halamane = $_GET['halamane'];

$act = $_GET['act'];

// declare variable post

$id_user = trim(htmlspecialchars($_POST['id_user']));

$nama_user = trim(htmlspecialchars($_POST['nama_user']));

$password = trim(htmlspecialchars($_POST['password']));

$username = trim(htmlspecialchars($_POST['username']));

$level = trim(htmlspecialchars($_POST['level']));

// Input data user

if ($halamane=='user' AND $act=='input'){

//get last insert auto number

$Last_No = $db->last_inserted('id_user','user');

$kode_user=$db->buatkode($Last_No, 'US', 3);

$userData = array(

'id_user' => $kode_user,

'nama_user' => $nama_user,

'password' => $password,

'username' => $username,

'level' => $level);

$insert = $db->insert($tblName,$userData);

header("location:../../user-view");

}

// Update data user

elseif ($halamane=='user' AND $act=='update'){

$userData = array(

'id_user' => $id_user,

'nama_user' => $nama_user,

'password' => $password,

'username' => $username,

'level' => $level);

$condition = array('id_user' => $id_user);

$update = $db->update($tblName,$userData,$condition);

header("location:../../user-view");

}

APLIKASI RENTAL MOBIL PHP MYSQL

22

Buatlah folder dan file halaman/hal_user/ aksi_user.php, Setelah itu kita eksekusi perintah yang dikirim oleh form tambah,edit ataupun hapus di

if (empty($_SESSION['namauser']) AND empty($_SESSION['passuser'])){

>Untuk mengakses halaman, Anda harus login dulu.</h1><p><a href=\"index.php\">LOGIN</a></p>";

// Apabila user sudah login dengan benar, maka terbentuklah session

$id_user = trim(htmlspecialchars($_POST['id_user']));

$nama_user = trim(htmlspecialchars($_POST['nama_user']));

lchars($_POST['password']));

$username = trim(htmlspecialchars($_POST['username']));

$level = trim(htmlspecialchars($_POST['level']));

if ($halamane=='user' AND $act=='input'){

//get last insert auto number

>last_inserted('id_user','user');

>buatkode($Last_No, 'US', 3);

'id_user' => $kode_user,

'nama_user' => $nama_user,

>insert($tblName,$userData);

view");

elseif ($halamane=='user' AND $act=='update'){

'nama_user' => $nama_user,

$condition = array('id_user' => $id_user);

update($tblName,$userData,$condition);

view");

itu kita Ketik-kan skrip eksekusi perintah yang dikirim oleh form tambah,edit ataupun hapus di

">LOGIN</a></p>";

Page 23: E-Book Rental PHP PDO MYSQL - sixghakreasi.com Rental... · PDO-PHP APLIKASI RENTAL MOBIL PHP MYSQL Pengenalan singkat PDO Dari sekian banyak tutorial lokal mengenai PHP dan MyS menggunakan

PDO-PHP APLIKASI RENTAL MOBIL PHP MYSQL

// Hapus data user

elseif ($halamane=='user' AND $act=='hapus'){

$decrypted_txt = $db->encrypt_decrypt('decrypt', $_GET['id']);

$condition = array('id_user' => $de

$delete = $db->delete($tblName,$condition);

header("location:user-view");

}

}

?>

Membuat Halaman Pelanggan

Buatlah folder dan file halaman/hal_pelanggan/pelanggan.phpberikut untuk menampilkan halaman <?php

// Apabila user belum login

if (empty($_SESSION['namauser']) AND empty($_SESSION['passuser'])){

echo "<h1>Untuk mengakses halaman, Anda harus login dulu.</h1><p><a href=

}

// Apabila user sudah login dengan benar, maka terbentuklah session

else{

// Initialing koneksi database

$db = new DB();

$aksi = "halaman/hal_pelanggan/aksi_pelanggan.php";

// mengatasi variabel yang belum di definisikan (notice undefined index)

$act = isset($_GET['act']) ? $_GET['act'] : '';

switch($act){

// Tampil pelanggan

default:

echo"<div class='row'>

<div class='col-xs-12'>

APLIKASI RENTAL MOBIL PHP MYSQL

23

elseif ($halamane=='user' AND $act=='hapus'){

>encrypt_decrypt('decrypt', $_GET['id']);

$condition = array('id_user' => $decrypted_txt);

>delete($tblName,$condition);

Buatlah folder dan file halaman/hal_pelanggan/pelanggan.php, Setelah itu kita Ketikmenampilkan halaman pelanggan.

if (empty($_SESSION['namauser']) AND empty($_SESSION['passuser'])){

echo "<h1>Untuk mengakses halaman, Anda harus login dulu.</h1><p><a href=\"index.php\">LOGIN</a></p>";

user sudah login dengan benar, maka terbentuklah session

$aksi = "halaman/hal_pelanggan/aksi_pelanggan.php";

// mengatasi variabel yang belum di definisikan (notice undefined index)

set($_GET['act']) ? $_GET['act'] : '';

, Setelah itu kita Ketik-kan skrip

">LOGIN</a></p>";

Page 24: E-Book Rental PHP PDO MYSQL - sixghakreasi.com Rental... · PDO-PHP APLIKASI RENTAL MOBIL PHP MYSQL Pengenalan singkat PDO Dari sekian banyak tutorial lokal mengenai PHP dan MyS menggunakan

PDO-PHP APLIKASI RENTAL MOBIL PHP MYSQL

<div class='clearfix'>

<button class='btn btn-sm btn-pink' onclick=window.location.href=

</div>

<br/>

<div class='table-header'>

Tabel pelanggan

</div>

<div>";

echo"<table id='dynamic-table1' class='table tabl

<thead>

<tr>

<th width='5%'>No</th>

<th>Kode Pelanggan</th>

<th>Nama Pelanggan</th>

<th>Alamat</th>

<th></th>

</tr>

</thead>

<tbody>";

$no=1;

// Pilih tabel di database

$pelanggan = $db->getRows('pelanggan',array('order_by'=>'id_pelanggan DESC'));

// Tampilkan data tabel yang dipilih

foreach($pelanggan ? $pelanggan : [] as $r){

$encrypted_txt = $db->encrypt_decrypt('encrypt',

echo "<tr>

<td><center>$no</center></td>

<td>$r[id_pelanggan]</td>

<td>$r[nama_pelanggan]</td>

<td>$r[alamat]</td>

<td>

<center>

<div class='hidden-sm hidden-xs action

<a class='green' href='edit-pelanggan

<a onclick=\"return confirm('Are sure want to delete this data ??')

<i class='ace-icon fa fa-trash-o bigger

</div>

<div class='hidden-md hidden-lg'>

<div class='inline pos-rel'>

<button class='btn btn-minier btn-

<i class='ace-icon fa fa-caret-down icon

</button>

<ul class='dropdown-menu dropdown-

<li><a href='edit-pelanggan-$encrypted_txt' class='to

<span class='green'><i class='ace-

</li>

<li><a onclick=\"return confirm('Are sure want to delete this data ??')

<span class='red'><i class='ace-icon fa fa

</li>

APLIKASI RENTAL MOBIL PHP MYSQL

24

<div class='clearfix'>

pink' onclick=window.location.href=\"add-pelanggan\"></i>Tambah Data</button>

table1' class='table table-striped table-bordered table-hover'>

>getRows('pelanggan',array('order_by'=>'id_pelanggan DESC'));

// Tampilkan data tabel yang dipilih

foreach($pelanggan ? $pelanggan : [] as $r){

>encrypt_decrypt('encrypt', $r['id_pelanggan']);

<td>$r[alamat]</td>

xs action-buttons'>

pelanggan-$encrypted_txt'><i class='ace-icon fa fa-pencil bigger

"return confirm('Are sure want to delete this data ??')\" href='hapus-pelanggan

o bigger-130'></i></a>

-yellow dropdown-toggle' data-toggle='dropdown' data-position='auto'>

down icon-only bigger-120'></i>

-only-icon dropdown-yellow dropdown-menu-right dropdown-caret dropdown

$encrypted_txt' class='tooltip-success' data-rel='tooltip' title='Edit'>

-icon fa fa-pencil-square-o bigger-120'></i></span></a>

"return confirm('Are sure want to delete this data ??')\" href='hapus-pelanggan

icon fa fa-trash-o bigger-120'></i></span></a>

"></i>Tambah Data</button>

pencil bigger-130'></i></a>

pelanggan-$encrypted_txt'>

position='auto'>

caret dropdown-close'>

rel='tooltip' title='Edit'>

pelanggan-$encrypted_txt'>

Page 25: E-Book Rental PHP PDO MYSQL - sixghakreasi.com Rental... · PDO-PHP APLIKASI RENTAL MOBIL PHP MYSQL Pengenalan singkat PDO Dari sekian banyak tutorial lokal mengenai PHP dan MyS menggunakan

PDO-PHP APLIKASI RENTAL MOBIL PHP MYSQL

</ul>

</div>

</div>

</center>

</td>

</tr>";

$no++;

}

echo "</tbody>

</table>

</div>

</div>

</div>";

break;

//form tambah data

case "tambahpelanggan":

echo" <div class='row'>

<div class='col-xs-12'>

<div class='widget-box'>

<div class='widget-header'>

<h4 class='widget-title'>Form Tambah Data</h4>

<div class='widget-toolbar'>

<a href='#' data-action='collapse'>

<i class='ace-icon fa fa-chevron-up'></i>

</a>

</div>

</div>

<div class='widget-body'>

<div class='widget-main'>

<form class='form-horizontal' method=

<div class='form-group'>

<label class='control-label col-xs

<div class='col-xs-12 col-sm-9'>

<div class='clearfix'>

<input type='text' id='name' name='nama_pelanggan' class='col

</div>

</div>

</div>

<div class='space-2'></div>

<div class='form-group'>

<label class='control-label col-xs

<div class='col-xs-12 col-sm-9'>

<div class='clearfix'>

<input type='text' id='alamat' name='alamat' class='col

</div>

</div>

</div>

<div class='space-2'></div>

APLIKASI RENTAL MOBIL PHP MYSQL

25

title'>Form Tambah Data</h4>

action='collapse'>

up'></i>

horizontal' method=\"POST\" action=\"$aksi?halamane=pelanggan&act=input\

xs-12 col-sm-3 no-padding-right' for='name'>Nama Pelanggan:</label>

<input type='text' id='name' name='nama_pelanggan' class='col-xs-12 col-sm-8' required='required'/>

xs-12 col-sm-3 no-padding-right' for='name'>Alamat :</label>

<input type='text' id='alamat' name='alamat' class='col-xs-12 col-sm-8' required='required' maxlength='100'/>

\">

right' for='name'>Nama Pelanggan:</label>

8' required='required'/>

right' for='name'>Alamat :</label>

8' required='required' maxlength='100'/>

Page 26: E-Book Rental PHP PDO MYSQL - sixghakreasi.com Rental... · PDO-PHP APLIKASI RENTAL MOBIL PHP MYSQL Pengenalan singkat PDO Dari sekian banyak tutorial lokal mengenai PHP dan MyS menggunakan

PDO-PHP APLIKASI RENTAL MOBIL PHP MYSQL

<div class='form-actions'>

<button class='btn btn-info' type='submit'>

<i class='ace-icon fa fa-check bigger

Submit

</button>

&nbsp; &nbsp; &nbsp;

<button class='btn' type='reset' onclick=

<i class='ace-icon fa fa-undo bigger

Reset

</button>

</div>

</form>

</div>

</div>

</div>

</div><!-- /.span -->

</div>";

break;

//form ubah data

case "editpelanggan":

//ambil data yang akan di edit

$decrypted_txt = $db->encrypt_decrypt('decrypt', $_GET['id']);

$r = $db->getRows('pelanggan',array('where'=>

echo" <div class='row'>

<div class='col-xs-12'>

<div class='widget-box'>

<div class='widget-header'>

<h4 class='widget-title'>Form Ubah Data</h4>

<div class='widget-toolbar'>

<a href='#' data-action='collapse'>

<i class='ace-icon fa fa-chevron-up'></i>

</a>

</div>

</div>

<div class='widget-body'>

<div class='widget-main'>

<form class='form-horizontal' method=

<div class='form-group'>

<label class='control-label col-xs

<div class='col-xs-12 col-sm-9'>

<div class='input-group'>

<span class='input-group-addon'>

<i class='ace-icon fa fa-key'></i>

</span>

<input type=\"text\" name=\"id_pelanggan

</div>

</div>

APLIKASI RENTAL MOBIL PHP MYSQL

26

info' type='submit'>

check bigger-110'></i>

<button class='btn' type='reset' onclick=\"self.history.back()\">

undo bigger-110'></i>

>encrypt_decrypt('decrypt', $_GET['id']);

>getRows('pelanggan',array('where'=>array('id_pelanggan'=>$decrypted_txt),'return_type'=>'single'));

title'>Form Ubah Data</h4>

action='collapse'>

up'></i>

horizontal' method=\"POST\" action=\"$aksi?halamane=pelanggan&act=update

xs-12 col-sm-3 no-padding-right' for='phone'>Kode Pelanggan:</label>

key'></i>

"id_pelanggan\" required='required' value='$decrypted_txt' readonly

array('id_pelanggan'=>$decrypted_txt),'return_type'=>'single'));

"$aksi?halamane=pelanggan&act=update\">

right' for='phone'>Kode Pelanggan:</label>

" required='required' value='$decrypted_txt' readonly='yes'>

Page 27: E-Book Rental PHP PDO MYSQL - sixghakreasi.com Rental... · PDO-PHP APLIKASI RENTAL MOBIL PHP MYSQL Pengenalan singkat PDO Dari sekian banyak tutorial lokal mengenai PHP dan MyS menggunakan

PDO-PHP APLIKASI RENTAL MOBIL PHP MYSQL

</div>

<div class='form-group'>

<label class='control-label col-xs

<div class='col-xs-12 col-sm-9'>

<div class='clearfix'>

<input type='text' id='name' name='nama_pelanggan' required='required' value='$r[nama_pelanggan]'/>

</div>

</div>

</div>

<div class='space-2'></div>

<div class='form-group'>

<label class='control-label col-xs

<div class='col-xs-12 col-sm-9'>

<div class='clearfix'>

<input type='text' id='alamat' name='alamat'

</div>

</div>

</div>

<div class='space-2'></div>

<div class='form-actions'>

<button class='btn btn-info' type='submit'>

<i class='ace-icon fa fa-check bigger

Submit

</button>

&nbsp; &nbsp; &nbsp;

<button class='btn' type='reset' onclick=

<i class='ace-icon fa fa-undo bigger

Reset

</button>

</div>

</form>

</div>

</div>

</div>

</div><!-- /.span -->

</div>";

break;

}

}

?>

Buatlah folder dan file halaman/hal_pelanggan/berikut untuk meng-eksekusi perintah yang dikirim oleh form tambah,edit halaman pelanggan.

APLIKASI RENTAL MOBIL PHP MYSQL

27

xs-12 col-sm-3 no-padding-right' for='name'>Nama Pelanggan:</label>

'text' id='name' name='nama_pelanggan' required='required' value='$r[nama_pelanggan]'/>

xs-12 col-sm-3 no-padding-right' for='name'>Alamat :</label>

text' id='alamat' name='alamat' required='required' maxlength='100' value='$r[alama

info' type='submit'>

check bigger-110'></i>

<button class='btn' type='reset' onclick=\"self.history.back()\">

undo bigger-110'></i>

Buatlah folder dan file halaman/hal_pelanggan/aksi_pelanggan.php, Setelah itu kita Ketikeksekusi perintah yang dikirim oleh form tambah,edit

right' for='name'>Nama Pelanggan:</label>

'text' id='name' name='nama_pelanggan' required='required' value='$r[nama_pelanggan]'/>

right' for='name'>Alamat :</label>

required='required' maxlength='100' value='$r[alamat]'/>

, Setelah itu kita Ketik-kan skrip eksekusi perintah yang dikirim oleh form tambah,edit ataupun hapus di

Page 28: E-Book Rental PHP PDO MYSQL - sixghakreasi.com Rental... · PDO-PHP APLIKASI RENTAL MOBIL PHP MYSQL Pengenalan singkat PDO Dari sekian banyak tutorial lokal mengenai PHP dan MyS menggunakan

PDO-PHP APLIKASI RENTAL MOBIL PHP MYSQL

<?php

session_start();

// Apabila user belum login

if (empty($_SESSION['namauser']) AND empty($_SESSION['passuser'])){

echo "<h1>Untuk mengakses halaman, Anda harus login dulu.</h1><p><a href=

}

// Apabila user sudah login dengan benar, maka terbentuklah session

else{

include "../../config/koneksi.php";

// initial database

$db = new DB();

$tblName = 'pelanggan';

$halamane = $_GET['halamane'];

$act = $_GET['act'];

// declare variable post

$id_pelanggan = trim(htmlspecialchars($_POST['id_pelanggan']));

$nama_pelanggan = trim(htmlspecialchars($_POST['nama_pelanggan']));

$alamat = trim(htmlspecialchars($_POST['alamat']));

// Input data pelanggan

if ($halamane=='pelanggan' AND $act=='input'){

//get last insert auto number

$Last_No = $db->last_inserted('id_pelanggan','pelanggan');

$kode_pelanggan=$db->buatkode($Last_No, 'P', 3);

$pelangganData = array(

'id_pelanggan' => $kode_pelanggan,

'nama_pelanggan' => $nama_pelanggan,

'alamat' => $alamat);

$insert = $db->insert($tblName,$pelangganData);

header("location:../../pelanggan-view");

}

// Update data pelanggan

elseif ($halamane=='pelanggan' AND $act=='update'){

$pelangganData = array(

'nama_pelanggan' => $nama_pelanggan,

'alamat' => $alamat);

$condition = array('id_pelanggan' => $id_pelanggan);

$update = $db->update($tblName,$pelangganData,$condition);

header("location:../../pelanggan-view");

}

// Hapus data pelanggan

elseif ($halamane=='pelanggan' AND $act=='hapus'){

$decrypted_txt = $db->encrypt_decrypt('decrypt', $_GET['id']);

$condition = array('id_pelanggan' => $decrypted_txt);

$delete = $db->delete($tblName,$condition);

header("location:pelanggan-view");

}

}

?>

APLIKASI RENTAL MOBIL PHP MYSQL

28

if (empty($_SESSION['namauser']) AND empty($_SESSION['passuser'])){

echo "<h1>Untuk mengakses halaman, Anda harus login dulu.</h1><p><a href=\"index.php\">LOGIN</a><

// Apabila user sudah login dengan benar, maka terbentuklah session

$id_pelanggan = trim(htmlspecialchars($_POST['id_pelanggan']));

$nama_pelanggan = trim(htmlspecialchars($_POST['nama_pelanggan']));

$alamat = trim(htmlspecialchars($_POST['alamat']));

if ($halamane=='pelanggan' AND $act=='input'){

>last_inserted('id_pelanggan','pelanggan');

>buatkode($Last_No, 'P', 3);

=> $kode_pelanggan,

'nama_pelanggan' => $nama_pelanggan,

>insert($tblName,$pelangganData);

view");

elseif ($halamane=='pelanggan' AND $act=='update'){

'nama_pelanggan' => $nama_pelanggan,

$condition = array('id_pelanggan' => $id_pelanggan);

update($tblName,$pelangganData,$condition);

view");

elseif ($halamane=='pelanggan' AND $act=='hapus'){

>encrypt_decrypt('decrypt', $_GET['id']);

ray('id_pelanggan' => $decrypted_txt);

>delete($tblName,$condition);

view");

">LOGIN</a></p>";

Page 29: E-Book Rental PHP PDO MYSQL - sixghakreasi.com Rental... · PDO-PHP APLIKASI RENTAL MOBIL PHP MYSQL Pengenalan singkat PDO Dari sekian banyak tutorial lokal mengenai PHP dan MyS menggunakan

PDO-PHP APLIKASI RENTAL MOBIL PHP MYSQL

Membuat Halaman Mobil

Buatlah folder dan file halaman/hal_mobil/mobil.phpmenampilkan halaman mobil. <?php

// Apabila user belum login

if (empty($_SESSION['namauser']) AND empty($_SESSION['passuser'])){

echo "<h1>Untuk mengakses halaman, Anda harus login dulu.</h1><p><a href=

}

// Apabila user sudah login dengan benar, maka terbentuklah session

else{

// Initialing koneksi database

$db = new DB();

$aksi = "halaman/hal_mobil/aksi_mobil.php";

// mengatasi variabel yang belum di definisikan (notice undefined index)

$act = isset($_GET['act']) ? $_GET['act'] : '';

switch($act){

// Tampil mobil

default:

echo"<div class='row'>

<div class='col-xs-12'>

<div class='clearfix'>

<button class='btn btn-sm btn-pink' onclick

</div>

<br/>

<div class='table-header'>

Tabel mobil

</div>

<div>";

echo"<table id='dynamic-table1' class='table table

APLIKASI RENTAL MOBIL PHP MYSQL

29

Buatlah folder dan file halaman/hal_mobil/mobil.php, Setelah itu kita Ketik-kan skrip

if (empty($_SESSION['namauser']) AND empty($_SESSION['passuser'])){

echo "<h1>Untuk mengakses halaman, Anda harus login dulu.</h1><p><a href=\"index.php\">LOGIN</a></p>";

Apabila user sudah login dengan benar, maka terbentuklah session

$aksi = "halaman/hal_mobil/aksi_mobil.php";

// mengatasi variabel yang belum di definisikan (notice undefined index)

set($_GET['act']) ? $_GET['act'] : '';

<div class='clearfix'>

pink' onclick=window.location.href=\"add-mobil\">Tambah Data</button>

table1' class='table table-striped table-bordered table-hover'>

kan skrip berikut untuk

">LOGIN</a></p>";

">Tambah Data</button>

Page 30: E-Book Rental PHP PDO MYSQL - sixghakreasi.com Rental... · PDO-PHP APLIKASI RENTAL MOBIL PHP MYSQL Pengenalan singkat PDO Dari sekian banyak tutorial lokal mengenai PHP dan MyS menggunakan

PDO-PHP APLIKASI RENTAL MOBIL PHP MYSQL

<thead>

<tr>

<th width='5%'>No</th>

<th>Nama mobil</th>

<th class='center'>Nopol</th>

<th class='center'>Harga Sewa</th>

<th class='center'>Status Mobil</th>

<th></th>

</tr>

</thead>

<tbody>";

$no=1;

// Pilih tabel di database

$mobil = $db->getRows('mobil',array('order_by'=>'id_mobil DESC'));

// Tampilkan data tabel yang dipilih

foreach($mobil ? $mobil : [] as $r){

$encrypted_txt = $db->encrypt_decrypt('encrypt', $r['id_mobil']);

echo "<tr>

<td><center>$no</center></td>

<td>$r[nama_mobil]</td>

<td class='center'>$r[nopol]</td>

<td class='center'>".$db->format_rupiah($r['harga'])."</td>

<td class='center'>";

if($r['status']=='Disewa'){echo'<span class="label label

else {echo'<span class="label label

echo"</td>

<td>

<center>

<div class='hidden-sm hidden-xs action

<a class='green' href='edit-mobil-

<a onclick=\"return confirm('Are sure want to delete this data ??')

<i class='ace-icon fa fa-trash-o bigger

</div>

<div class='hidden-md hidden-lg'>

<div class='inline pos-rel'>

<button class='btn btn-minier btn-

<i class='ace-icon fa fa-caret-down icon

</button>

<ul class='dropdown-menu dropdown-

<li><a href='edit-mobil-$encrypted_txt' class='tooltip

<span class='green'><i class='ace-

</li>

<li><a onclick=\"return confirm('Are

href='hapus-mobil-$encrypted_txt' class='tooltip

<span class='red'><i class='ace-icon fa fa

</li>

</ul>

</div>

</div>

</center>

</td>

APLIKASI RENTAL MOBIL PHP MYSQL

30

<th class='center'>Harga Sewa</th>

<th class='center'>Status Mobil</th>

>getRows('mobil',array('order_by'=>'id_mobil DESC'));

// Tampilkan data tabel yang dipilih

foreach($mobil ? $mobil : [] as $r){

>encrypt_decrypt('encrypt', $r['id_mobil']);

<td class='center'>$r[nopol]</td>

>format_rupiah($r['harga'])."</td>

'status']=='Disewa'){echo'<span class="label label-sm label-warning">'.$r['status'].'</span>';}

else {echo'<span class="label label-sm label-success">'.$r['status'].'</span>'; }

xs action-buttons'>

-$encrypted_txt'><i class='ace-icon fa fa-pencil bigger-130'></i></a>

"return confirm('Are sure want to delete this data ??')\" href='hapus-mobil-$encrypted_txt'>

o bigger-130'></i></a>

-yellow dropdown-toggle' data-toggle='dropdown' data-position='auto'>

down icon-only bigger-120'></i>

-only-icon dropdown-yellow dropdown-menu-right dropdown-caret dropdown

$encrypted_txt' class='tooltip-success' data-rel='tooltip' title='Edit'>

-icon fa fa-pencil-square-o bigger-120'></i></span></a>

"return confirm('Are sure want to delete this data ?')\"

$encrypted_txt' class='tooltip-error' data-rel='tooltip' title='Delete'>

icon fa fa-trash-o bigger-120'></i></span></a>

warning">'.$r['status'].'</span>';}

130'></i></a>

$encrypted_txt'>

osition='auto'>

caret dropdown-close'>

rel='tooltip' title='Edit'>

Page 31: E-Book Rental PHP PDO MYSQL - sixghakreasi.com Rental... · PDO-PHP APLIKASI RENTAL MOBIL PHP MYSQL Pengenalan singkat PDO Dari sekian banyak tutorial lokal mengenai PHP dan MyS menggunakan

PDO-PHP APLIKASI RENTAL MOBIL PHP MYSQL

</tr>";

$no++;

}

echo "</tbody>

</table>

</div>

</div>

</div>";

break;

//form tambah data

case "tambahmobil":

echo" <div class='row'>

<div class='col-xs-12'>

<div class='widget-box'>

<div class='widget-header'>

<h4 class='widget-title'>Form Tambah Data</h4>

<div class='widget-toolbar'>

<a href='#' data-action='collapse'>

<i class='ace-icon fa fa-chevron-up'></i>

</a>

</div>

</div>

<div class='widget-body'>

<div class='widget-main'>

<form class='form-horizontal' method=

<div class='form-group'>

<label class='control-label col-xs

<div class='col-xs-12 col-sm-9'>

<div class='clearfix'>

<input type='text' id='name' name='nama_mobil' class='col

</div>

</div>

</div>

<div class='space-2'></div>

<div class='form-group'>

<label class='control-label col-xs

<div class='col-xs-12 col-sm-9'>

<div class='clearfix'>

<input type='text' id='nopol' name='nopol' class='col

</div>

</div>

</div>

<div class='space-2'></div>

<div class='form-group'>

<label class='control-label col-xs

<div class='col-xs-12 col-sm-9'>

<div class='clearfix'>

<input type='number' id='harga' name='harga' class='col

APLIKASI RENTAL MOBIL PHP MYSQL

31

title'>Form Tambah Data</h4>

action='collapse'>

up'></i>

horizontal' method=\"POST\" action=\"$aksi?halamane=mobil&act=input\">

xs-12 col-sm-3 no-padding-right' for='name'>Nama mobil:</label>

<input type='text' id='name' name='nama_mobil' class='col-xs-12 col-sm-8' required='required'/>

xs-12 col-sm-3 no-padding-right' for='name'>nopol :</label>

<input type='text' id='nopol' name='nopol' class='col-xs-12 col-sm-8' required='required' maxlength='12'/>

xs-12 col-sm-3 no-padding-right' for='name'>Harga Sewa :</label>

<input type='number' id='harga' name='harga' class='col-xs-12 col-sm-8' required='required' maxlength='12'/>

Nama mobil:</label>

8' required='required'/>

right' for='name'>nopol :</label>

8' required='required' maxlength='12'/>

right' for='name'>Harga Sewa :</label>

8' required='required' maxlength='12'/>

Page 32: E-Book Rental PHP PDO MYSQL - sixghakreasi.com Rental... · PDO-PHP APLIKASI RENTAL MOBIL PHP MYSQL Pengenalan singkat PDO Dari sekian banyak tutorial lokal mengenai PHP dan MyS menggunakan

PDO-PHP APLIKASI RENTAL MOBIL PHP MYSQL

</div>

</div>

</div>

<div class='space-2'></div>

<div class='form-actions'>

<button class='btn btn-info' type='submit'>

<i class='ace-icon fa fa-check bigger

Submit

</button>

&nbsp; &nbsp; &nbsp;

<button class='btn' type='reset' onclick=

<i class='ace-icon fa fa-undo bigger

Reset

</button>

</div>

</form>

</div>

</div>

</div>

</div><!-- /.span -->

</div>";

break;

//form ubah data

case "editmobil":

//ambil data yang akan di edit

$decrypted_txt = $db->encrypt_decrypt('decrypt', $_GET['id']);

$r = $db->getRows('mobil',array('where'=>array('id_mobil'=>$decrypted_txt),'return_type'=>'single'));

echo" <div class='row'>

<div class='col-xs-12'>

<div class='widget-box'>

<div class='widget-header'>

<h4 class='widget-title'>Form Ubah Data</h4>

<div class='widget-toolbar'>

<a href='#' data-action='collapse'>

<i class='ace-icon fa fa-chevron-up'></i>

</a>

</div>

</div>

<div class='widget-body'>

<div class='widget-main'>

<form class='form-horizontal' method=

<div class='form-group'>

<label class='control-label col-xs

<div class='col-xs-12 col-sm-9'>

<div class='input-group'>

<span class='input-group-addon'>

APLIKASI RENTAL MOBIL PHP MYSQL

32

info' type='submit'>

check bigger-110'></i>

<button class='btn' type='reset' onclick=\"self.history.back()\">

undo bigger-110'></i>

>encrypt_decrypt('decrypt', $_GET['id']);

>getRows('mobil',array('where'=>array('id_mobil'=>$decrypted_txt),'return_type'=>'single'));

title'>Form Ubah Data</h4>

action='collapse'>

up'></i>

horizontal' method=\"POST\" action=\"$aksi?halamane=mobil&act=update\">

xs-12 col-sm-3 no-padding-right' for='phone'>Kode mobil:</label>

>getRows('mobil',array('where'=>array('id_mobil'=>$decrypted_txt),'return_type'=>'single'));

right' for='phone'>Kode mobil:</label>

Page 33: E-Book Rental PHP PDO MYSQL - sixghakreasi.com Rental... · PDO-PHP APLIKASI RENTAL MOBIL PHP MYSQL Pengenalan singkat PDO Dari sekian banyak tutorial lokal mengenai PHP dan MyS menggunakan

PDO-PHP APLIKASI RENTAL MOBIL PHP MYSQL

<i class='ace-icon fa fa-key'></i>

</span>

<input type=\"text\" name=\"id_mobil

</div>

</div>

</div>

<div class='form-group'>

<label class='control-label col-xs

<div class='col-xs-12 col-sm-9'>

<div class='clearfix'>

<input type='text' id='name' name='nama_mobil' class='col

required='required' value='$r[nama_mobil]'/>

</div>

</div>

</div>

<div class='space-2'></div>

<div class='form-group'>

<label class='control-label col-xs

<div class='col-xs-12 col-sm-9'>

<div class='clearfix'>

<input type='text' id='nopol' name='nopol' class='c

maxlength='12' value='$r[nopol]'/>

</div>

</div>

</div>

<div class='space-2'></div>

<div class='form-group'>

<label class='control-label col-xs

<div class='col-xs-12 col-sm-9'>

<div class='clearfix'>

<input type='number' id='harga' name='harga' class='col

maxlength='12' value='$r[harga]'/>

</div>

</div>

</div>

<div class='space-2'></div>

<div class='form-actions'>

<button class='btn btn-info' type='submit'>

<i class='ace-icon fa fa-check bigger

Submit

</button>

&nbsp; &nbsp; &nbsp;

<button class='btn' type='reset' onclick=

<i class='ace-icon fa fa-undo bigger

Reset

</button>

APLIKASI RENTAL MOBIL PHP MYSQL

33

key'></i>

"id_mobil\" required='required' value='$decrypted_txt' readonly='yes'>

xs-12 col-sm-3 no-padding-right' for='name'>Nama mobil:</label>

<input type='text' id='name' name='nama_mobil' class='col-xs-12 col-sm-8'

required='required' value='$r[nama_mobil]'/>

xs-12 col-sm-3 no-padding-right' for='name'>nopol :</label>

<input type='text' id='nopol' name='nopol' class='col-xs-12 col-sm-8' required='required'

maxlength='12' value='$r[nopol]'/>

xs-12 col-sm-3 no-padding-right' for='name'>Harga Sewa :</label>

<input type='number' id='harga' name='harga' class='col-xs-12 col-sm-8' required='required'

maxlength='12' value='$r[harga]'/>

info' type='submit'>

check bigger-110'></i>

onclick=\"self.history.back()\">

undo bigger-110'></i>

" required='required' value='$decrypted_txt' readonly='yes'>

/label>

right' for='name'>nopol :</label>

8' required='required'

Harga Sewa :</label>

8' required='required'

Page 34: E-Book Rental PHP PDO MYSQL - sixghakreasi.com Rental... · PDO-PHP APLIKASI RENTAL MOBIL PHP MYSQL Pengenalan singkat PDO Dari sekian banyak tutorial lokal mengenai PHP dan MyS menggunakan

PDO-PHP APLIKASI RENTAL MOBIL PHP MYSQL

</div>

</form>

</div>

</div>

</div>

</div><!-- /.span -->

</div>";

break;

}

}

?>

Buatlah folder dan file halaman/hal_mobil/untuk meng-eksekusi perintah yang dikirim oleh form tambah,edit ataupun hapus di halaman <?php

session_start();

// Apabila user belum login

if (empty($_SESSION['namauser']) AND empty($_SESSION['passuser'])){

echo "<h1>Untuk mengakses halaman, Anda harus login dulu.</h1><p><a href=

}

// Apabila user sudah login dengan benar, maka terbentuklah session

else{

include "../../config/koneksi.php";

// initial database

$db = new DB();

$tblName = 'mobil';

$halamane = $_GET['halamane'];

$act = $_GET['act'];

// declare variable post

$id_mobil = trim(htmlspecialchars($_POST['id_mobil']));

$nama_mobil = trim(htmlspecialchars($_POST['nama_mobil']));

$nopol = trim(htmlspecialchars($_POST['nopol']));

$harga = trim(htmlspecialchars($_POST['harga']));

// Input data mobil

if ($halamane=='mobil' AND $act=='input'){

//get last insert auto number

$Last_No = $db->last_inserted('id_mobil','mobil');

$kode_mobil=$db->buatkode($Last_No, 'M', 3);

$mobilData = array(

'id_mobil' => $kode_mobil,

'nama_mobil' => $nama_mobil,

'nopol' => $nopol,

'harga' => $harga);

$insert = $db->insert($tblName,$mobilData);

header("location:../../mobil-view");

}

// Update data mobil

elseif ($halamane=='mobil' AND $act=='update'){

$mobilData = array(

APLIKASI RENTAL MOBIL PHP MYSQL

34

Buatlah folder dan file halaman/hal_mobil/aksi_mobil.php, Setelah itu kita Ketikeksekusi perintah yang dikirim oleh form tambah,edit ataupun hapus di halaman

if (empty($_SESSION['namauser']) AND empty($_SESSION['passuser'])){

echo "<h1>Untuk mengakses halaman, Anda harus login dulu.</h1><p><a href=\"index.php\">LOGIN</a></p>";

n dengan benar, maka terbentuklah session

$id_mobil = trim(htmlspecialchars($_POST['id_mobil']));

$nama_mobil = trim(htmlspecialchars($_POST['nama_mobil']));

$nopol = trim(htmlspecialchars($_POST['nopol']));

$harga = trim(htmlspecialchars($_POST['harga']));

if ($halamane=='mobil' AND $act=='input'){

//get last insert auto number

>last_inserted('id_mobil','mobil');

>buatkode($Last_No, 'M', 3);

'id_mobil' => $kode_mobil,

'nama_mobil' => $nama_mobil,

>insert($tblName,$mobilData);

view");

elseif ($halamane=='mobil' AND $act=='update'){

, Setelah itu kita Ketik-kan skrip berikut eksekusi perintah yang dikirim oleh form tambah,edit ataupun hapus di halaman mobil.

">LOGIN</a></p>";

Page 35: E-Book Rental PHP PDO MYSQL - sixghakreasi.com Rental... · PDO-PHP APLIKASI RENTAL MOBIL PHP MYSQL Pengenalan singkat PDO Dari sekian banyak tutorial lokal mengenai PHP dan MyS menggunakan

PDO-PHP APLIKASI RENTAL MOBIL PHP MYSQL

'nama_mobil' => $nama_mobil,

'nopol' => $nopol,

'harga' => $harga);

$condition = array('id_mobil' => $id_mobil);

$update = $db->update($tblName,$mobilData,$condition);

header("location:../../mobil-view");

}

// Hapus data mobil

elseif ($halamane=='mobil' AND $act=='hapus'){

$decrypted_txt = $db->encrypt_decrypt('decrypt', $_GET['id']);

$condition = array('id_mobil' => $decry

$delete = $db->delete($tblName,$condition);

header("location:mobil-view");

}

}

?>

Membuat Halaman Transaksi

Buatlah folder dan file halaman/hal_transaksi/transaksi.phpuntuk menampilkan halaman transaksi. <?php

// Apabila user belum login

if (empty($_SESSION['namauser']) AND empty($_SESSION['passuser'])){

echo "<h1>Untuk mengakses halaman, Anda harus login dulu.</h1><p><a href=

}

// Apabila user sudah login dengan benar, maka terbentuklah session

else{

// Initialing koneksi database

$db = new DB();

$aksi = "halaman/hal_transaksi/aksi_transaksi.php";

// mengatasi variabel yang belum di definisikan (notice undefined index)

$act = isset($_GET['act']) ? $_GET['act'] : '';

APLIKASI RENTAL MOBIL PHP MYSQL

35

'nama_mobil' => $nama_mobil,

$condition = array('id_mobil' => $id_mobil);

tblName,$mobilData,$condition);

view");

elseif ($halamane=='mobil' AND $act=='hapus'){

>encrypt_decrypt('decrypt', $_GET['id']);

$condition = array('id_mobil' => $decrypted_txt);

>delete($tblName,$condition);

Buatlah folder dan file halaman/hal_transaksi/transaksi.php, Setelah itu kita Ketiktransaksi.

if (empty($_SESSION['namauser']) AND empty($_SESSION['passuser'])){

echo "<h1>Untuk mengakses halaman, Anda harus login dulu.</h1><p><a href=\"index.php\">LOGIN</a></p>";

user sudah login dengan benar, maka terbentuklah session

$aksi = "halaman/hal_transaksi/aksi_transaksi.php";

// mengatasi variabel yang belum di definisikan (notice undefined index)

$act = isset($_GET['act']) ? $_GET['act'] : '';

, Setelah itu kita Ketik-kan skrip berikut

">LOGIN</a></p>";

Page 36: E-Book Rental PHP PDO MYSQL - sixghakreasi.com Rental... · PDO-PHP APLIKASI RENTAL MOBIL PHP MYSQL Pengenalan singkat PDO Dari sekian banyak tutorial lokal mengenai PHP dan MyS menggunakan

PDO-PHP APLIKASI RENTAL MOBIL PHP MYSQL

switch($act){

// Tampil transaksi

default:

//Tombol Tambah data

echo"<div class='clearfix'>

<button class='btn btn-sm btn-pink' onclick=window.location.href=

<i class='ace-icon glyphicon glyphicon

</div>

<br/>";

echo"<div class='row'>

<div class='col-xs-12'>

<div class='table-header'>

Tabel transaksi

</div>

<div>

<table id='dynamic-table1' class='table table

<thead>

<tr>

<th width='5%' class='center'>No</th>

<th class='center'>No Transaksi</th>

<th class='hidden-480'>Nama Pelanggan</th>

<th class='hidden-480'>Jenis Mobil</th>

<th class='hidden-480 center'>Lama Sewa</th>

<th class='hidden-480 center'>Harga Sewa</th>

<th class='hidden-480 center'>Denda</th>

<th class='hidden-480 center'>Total Sewa</th>

<th class='center'>Status Mobil</th>

<th class='hidden-480 center'>Tanggal Sewa</th>

<th class='hidden-480 center'>Tanggal Kembali</th>

<th></th>

</tr>

</thead>

<tbody>";

$no=1;

// Pilih tabel di database

$transaksi = $db->GetDataTransaksi();

// Tampilkan data tabel yang dipilih

foreach($transaksi ? $transaksi : [] as $r){

$encrypted_txt = $db->encrypt_decrypt('encrypt', $r['id_transaksi']);

$total=$r['total_sewa']+$r['denda'];

echo "<tr>

<td><center>$no</center></td>

<td class='center'><a href='detail

<td class='hidden-480'>$r[nama_pelanggan]</td>

<td class='hidden-480'>$r[nama_mobil]

<td class='hidden-480 center'>$r[lama_sewa]</td>

<td class='hidden-480 center'>".$db

<td class='hidden-480 center'>";if($r['denda']==0){echo"

else {echo"".$db->format_rupiah($r['denda'])."";}echo"</td>

<td class='hidden-480 center'>".$db

<td>";

//Jika status_mobil Open

APLIKASI RENTAL MOBIL PHP MYSQL

36

echo"<div class='clearfix'>

pink' onclick=window.location.href=\"add-transaksi\">

icon glyphicon glyphicon-plus'></i>Tambah Data</button>

12'>

table1' class='table table-striped table-bordered table-hover'>

<th width='5%' class='center'>No</th>

No Transaksi</th>

480'>Nama Pelanggan</th>

480'>Jenis Mobil</th>

480 center'>Lama Sewa</th>

480 center'>Harga Sewa</th>

480 center'>Denda</th>

480 center'>Total Sewa</th>

<th class='center'>Status Mobil</th>

480 center'>Tanggal Sewa</th>

480 center'>Tanggal Kembali</th>

>GetDataTransaksi();

// Tampilkan data tabel yang dipilih

foreach($transaksi ? $transaksi : [] as $r){

>encrypt_decrypt('encrypt', $r['id_transaksi']);

$total=$r['total_sewa']+$r['denda'];

<td class='center'><a href='detail-transaksi-$encrypted_txt'>$r[id_transaksi]</a></td>

480'>$r[nama_pelanggan]</td>

480'>$r[nama_mobil] - [$r[nopol]]</td>

480 center'>$r[lama_sewa]</td>

480 center'>".$db->format_rupiah($r['harga_sewa'])."</td>

480 center'>";if($r['denda']==0){echo"-";}

>format_rupiah($r['denda'])."";}echo"</td>

480 center'>".$db->format_rupiah($total)."</td>

Page 37: E-Book Rental PHP PDO MYSQL - sixghakreasi.com Rental... · PDO-PHP APLIKASI RENTAL MOBIL PHP MYSQL Pengenalan singkat PDO Dari sekian banyak tutorial lokal mengenai PHP dan MyS menggunakan

PDO-PHP APLIKASI RENTAL MOBIL PHP MYSQL

if ($r['status_mobil']=='Open'){

echo"<div class='btn-group'>

<button data-toggle='dropdown' class='btn btn

Open <i class='ace-icon fa fa-angle

</button>";

//Hak Akses yang di ijinkan untuk merubah status

if ($_SESSION['leveluser']=='admin'){

echo"<ul class='dropdown-menu dropdown

<li><a href='change-status-transaksi

</ul>";

} //Akhir Hak Akses yang di ijinkan untuk merubah status

echo"</div>";

} //End Jika status_mobil Open

//Jika status_mobil Disewa

elseif ($r['status_mobil']=='Disewa'){

echo"<div class='btn-group'>

<button data-toggle='dropdown' class='btn btn

Disewa <i class='ace-icon fa fa-angle

</button>";

//Hak Akses yang di ijinkan untuk merubah status

if ($_SESSION['leveluser']=='admin'){

echo"<ul class='dropdown-menu dropdown

<li><a href='form-kembali-$encrypted_txt'>Dikembalikan</a></li>

</ul>";

} //Akhir Hak Akses yang di ijinkan untuk merubah status

echo"</div>";

} //End Jika status Disewa

//Jika status Dikembalikan

elseif ($r['status_mobil']=='Dikembalikan'){

echo"<div class='btn-group'>

<button data-toggle='dropdown' class='btn btn

Dikembalikan <i class='ace-icon fa fa

</button>";

echo"</div>";

} //End Jika status Dikembalikan

echo"</td>

<td class='hidden-480 center'>".date("d

<td class='hidden-480 center'>";if($r['tanggal_kembali']==""){echo"

else {echo"".date("d-m-Y",strtotime($r['tanggal_kembali']))."";}echo"</td>

<td>";

//Jika status nya masih open maka dokumen bisa di edit atau dihapus

if ($r['status_mobil']=='Open'){

echo"

<center>

<div class='hidden-sm hidden-xs action

<a class='green' href='edit-transaksi

<a onclick=\"return confirm('Are sure want to delete this data ??')

class='red' href='hapus-transaksi-

<i class='ace-icon fa fa-trash-o bigger

</div>

APLIKASI RENTAL MOBIL PHP MYSQL

37

toggle='dropdown' class='btn btn-xs btn-danger dropdown-toggle'>

angle-down icon-on-right'></i>

//Hak Akses yang di ijinkan untuk merubah status

if ($_SESSION['leveluser']=='admin'){

menu dropdown-danger'>

transaksi-$encrypted_txt-Disewa'>Disewa</a></li>

} //Akhir Hak Akses yang di ijinkan untuk merubah status

elseif ($r['status_mobil']=='Disewa'){

toggle='dropdown' class='btn btn-xs btn-warning dropdown-toggle'>

angle-down icon-on-right'></i>

//Hak Akses yang di ijinkan untuk merubah status

if ($_SESSION['leveluser']=='admin'){

menu dropdown-danger'>

$encrypted_txt'>Dikembalikan</a></li>

//Akhir Hak Akses yang di ijinkan untuk merubah status

elseif ($r['status_mobil']=='Dikembalikan'){

toggle='dropdown' class='btn btn-xs btn-success dropdown-toggle'>

icon fa fa-angle-down icon-on-right'></i>

480 center'>".date("d-m-Y",strtotime($r['tanggal_sewa']))."</td>

480 center'>";if($r['tanggal_kembali']==""){echo"-";}

Y",strtotime($r['tanggal_kembali']))."";}echo"</td>

ika status nya masih open maka dokumen bisa di edit atau dihapus

xs action-buttons'>

transaksi-$encrypted_txt'><i class='ace-icon fa fa-pencil bigger

"return confirm('Are sure want to delete this data ??')\"

-$encrypted_txt'>

o bigger-130'></i></a>

pencil bigger-130'></i></a>

Page 38: E-Book Rental PHP PDO MYSQL - sixghakreasi.com Rental... · PDO-PHP APLIKASI RENTAL MOBIL PHP MYSQL Pengenalan singkat PDO Dari sekian banyak tutorial lokal mengenai PHP dan MyS menggunakan

PDO-PHP APLIKASI RENTAL MOBIL PHP MYSQL

<div class='hidden-md hidden-lg'>

<div class='inline pos-rel'>

<button class='btn btn-minier btn-

<i class='ace-icon fa fa-caret-down icon

</button>

<ul class='dropdown-menu dropdown-

<li><a href='edit-transaksi-$encrypted_txt' class='tooltip

<span class='green'><i class='ace-

</li>

<li><a onclick=\"return confirm('Are sure want to delete this data ??')

href='hapus-transaksi-$encrypted_txt' class='tooltip

<span class='red'><i class='ace-icon fa fa

</li>

</ul>

</div>

</div>

</center>";

} // akhir Jika status nya masih open

else {

echo"<center><a class='blue' href='print

<i class='ace-icon fa fa-print bigger

</a></center>";

}

echo"</td>

</tr>";

$no++;

}

echo "</tbody>

</table>

</div>

</div>

</div>";

break;

//form tambah data

case "tambahtransaksi":

echo" <div class='row'>

<div class='col-xs-12'>

<div class='widget-box'>

<div class='widget-header'>

<h4 class='widget-title'>Form Tambah Data</h4>

<div class='widget-toolbar'>

<a href='#' data-action='collapse'>

<i class='ace-icon fa fa-chevron-up'></i>

</a>

</div>

</div>

<div class='widget-body'>

<div class='widget-main'>

<form id='formID' class='form-horizontal' method=

APLIKASI RENTAL MOBIL PHP MYSQL

38

-yellow dropdown-toggle' data-toggle='dropdown' data-position='auto'>

down icon-only bigger-120'></i>

-only-icon dropdown-yellow dropdown-menu-right dropdown-caret dropdown

$encrypted_txt' class='tooltip-success' data-rel='tooltip' title='Edit'>

-icon fa fa-pencil-square-o bigger-120'></i></span></a>

"return confirm('Are sure want to delete this data ??')\"

pted_txt' class='tooltip-error' data-rel='tooltip' title='Delete'>

icon fa fa-trash-o bigger-120'></i></span></a>

} // akhir Jika status nya masih open maka dokumen bisa di edit atau dihapus

echo"<center><a class='blue' href='print-transaksi-$encrypted_txt' target='_blank'>

print bigger-130'></i>

title'>Form Tambah Data</h4>

action='collapse'>

up'></i>

horizontal' method=\"POST\" action=\"$aksi?halamane=transaksi&act=input

position='auto'>

caret dropdown-close'>

rel='tooltip' title='Edit'>

rel='tooltip' title='Delete'>

"$aksi?halamane=transaksi&act=input\">

Page 39: E-Book Rental PHP PDO MYSQL - sixghakreasi.com Rental... · PDO-PHP APLIKASI RENTAL MOBIL PHP MYSQL Pengenalan singkat PDO Dari sekian banyak tutorial lokal mengenai PHP dan MyS menggunakan

PDO-PHP APLIKASI RENTAL MOBIL PHP MYSQL

<div class='form-group'>

<label class='control-label col-xs

<div class='col-xs-12 col-sm-4'>

<div class='clearfix'>

<div class='input-group'>

<input class='form-control date-picker' id='id

data-date-format='yyyy-mm-dd' required='required' value='$tgl_sekarang' maxlength='10'/>

<span class='input-group-addon'>

<i class='fa fa-calendar bigger-110'></i>

</span>

</div>

</div>

</div>

</div>

<div class='space-2'></div>

<div class='form-group'>

<label class='control-label col-xs

<div class='col-xs-12 col-sm-4'>

<div class='clearfix'>

<select name='id_pelanggan' class=

data-placeholder='Click to Choose...' required='required'>

<option value='' selected>- Pilih pelanggan

// Pilih tabel di database

$pelanggan = $db->getRows('pelanggan',array('order_by'=>'id_pelanggan ASC'));

// Tampilkan data tabel yang dipilih

foreach($pelanggan ? $pelanggan : [] as $r){

echo "<option value='$r[id_pelanggan]'>$r[nama_pelanggan]</option>";

}

echo "</select>

</div>

</div>

</div>

<div class='space-2'></div>

<div class='form-group'>

<label class='control-label col-xs

<div class='col-xs-12 col-sm-4'>

<div class='clearfix'>";

echo'<select name="id_mobil" class="chosen

onchange="document.getElementById(

echo"<option value=\"0\" selected>

// Pilih tabel di database

$jsArray = "var prdName = new Array();

$mobil = $db->getRows('mobil',array('where'=>array('status'=>'Tersedia')),array('order_by'=>'id_mobil ASC'));

// Tampilkan data tabel yang dipilih

foreach($mobil ? $mobil : [] as $r){

echo "<option value='$r[id_mobil]'>$r[nama_mobil]

$jsArray .= "prdName['" . $r['id_mobil'] . "'] = '" . addslashes($r['harga']) . "';

}

echo "</select>

<span class=\"help-block\">Mobil yang ditampilkan hanya mobil yang status nya Tersedia.</span>

</div>

</div>

</div>

<div class='space-2'></div>

APLIKASI RENTAL MOBIL PHP MYSQL

39

xs-12 col-sm-3 no-padding-right' for='name'>Tanggal Sewa:</label>

picker' id='id-date-picker-2' type='text' name=\"tanggal_sewa

dd' required='required' value='$tgl_sekarang' maxlength='10'/>

110'></i>

xs-12 col-sm-3 no-padding-right' for='name'>Nama Pelanggan:</label>

<select name='id_pelanggan' class=\"chosen-select form-control\" id=\"form-field-select-1\

placeholder='Click to Choose...' required='required'>

Pilih pelanggan -</option>";

getRows('pelanggan',array('order_by'=>'id_pelanggan ASC'));

// Tampilkan data tabel yang dipilih

foreach($pelanggan ? $pelanggan : [] as $r){

echo "<option value='$r[id_pelanggan]'>$r[nama_pelanggan]</option>";

xs-12 col-sm-3 no-padding-right' for='id_mobil'>Jenis Mobil:</label>

echo'<select name="id_mobil" class="chosen-select form-control" id="form-field-select-2" required="required"

onchange="document.getElementById(\'harga\').value = prdName[this.value]">';

" selected>- Pilih mobil -</option>";

$jsArray = "var prdName = new Array();\n";

>getRows('mobil',array('where'=>array('status'=>'Tersedia')),array('order_by'=>'id_mobil ASC'));

// Tampilkan data tabel yang dipilih

obil ? $mobil : [] as $r){

echo "<option value='$r[id_mobil]'>$r[nama_mobil] - [$r[nopol]]</option>";

$jsArray .= "prdName['" . $r['id_mobil'] . "'] = '" . addslashes($r['harga']) . "';\n";

>Mobil yang ditampilkan hanya mobil yang status nya Tersedia.</span>

right' for='name'>Tanggal Sewa:</label>

"tanggal_sewa\"

right' for='name'>Nama Pelanggan:</label>

\"

right' for='id_mobil'>Jenis Mobil:</label>

2" required="required"

>getRows('mobil',array('where'=>array('status'=>'Tersedia')),array('order_by'=>'id_mobil ASC'));

>Mobil yang ditampilkan hanya mobil yang status nya Tersedia.</span>

Page 40: E-Book Rental PHP PDO MYSQL - sixghakreasi.com Rental... · PDO-PHP APLIKASI RENTAL MOBIL PHP MYSQL Pengenalan singkat PDO Dari sekian banyak tutorial lokal mengenai PHP dan MyS menggunakan

PDO-PHP APLIKASI RENTAL MOBIL PHP MYSQL

<div class='form-group'>

<label class='control-label col-xs

<div class='col-xs-12 col-sm-9'>

<div class='clearfix'>

<input type='text' name='harga' id='harga' class='col

<script type='text/javascript'>$jsArray</script></div>

</div>

</div>

<div class='space-2'></div>

<div class='form-group'>

<label class='control-label col-xs

<div class='col-xs-12 col-sm-9'>

<div class='clearfix'>

<input type='number' name='lama' id='lama' class='col

onchange=\"subtotal();\" onkeyup=\

</div>

</div>

</div>

<div class='space-2'></div>

<div class='form-group'>

<label class='control-label col-xs

<div class='col-xs-12 col-sm-9'>

<div class='clearfix'>

<input type='text' name='total_sewa' id='subtotaltxt' class='col

</div>

</div>

</div>

<div class='space-2'></div>

<div class='form-actions'>

<button class='btn btn-info' type='submit'>

<i class='ace-icon fa fa-check bigger

Submit

</button>

&nbsp; &nbsp; &nbsp;

<button class='btn' type='reset' onclick=

<i class='ace-icon fa fa-undo bigger

Reset

</button>

</div>

</form>

</div>

</div>

</div>

</div><!-- /.span -->

</div>";

break;

//form ubah data

APLIKASI RENTAL MOBIL PHP MYSQL

40

xs-12 col-sm-3 no-padding-right' for='harga'>Harga Sewa:</label>

<input type='text' name='harga' id='harga' class='col-xs-12 col-sm-4' readonly='readonly'/>

<script type='text/javascript'>$jsArray</script></div>

xs-12 col-sm-3 no-padding-right' for='lama'>Lama Sewa (*Dalam Hari):</label>

ype='number' name='lama' id='lama' class='col-xs-12 col-sm-4'

\"subtotal();\"/>

xs-12 col-sm-3 no-padding-right' for='subtotaltxt'>Total:</label>

<input type='text' name='total_sewa' id='subtotaltxt' class='col-xs-12 col-sm-4' readonly='

info' type='submit'>

check bigger-110'></i>

<button class='btn' type='reset' onclick=\"self.history.back()\">

undo bigger-110'></i>

Harga Sewa:</label>

4' readonly='readonly'/>

right' for='lama'>Lama Sewa (*Dalam Hari):</label>

right' for='subtotaltxt'>Total:</label>

4' readonly='readonly'/>

Page 41: E-Book Rental PHP PDO MYSQL - sixghakreasi.com Rental... · PDO-PHP APLIKASI RENTAL MOBIL PHP MYSQL Pengenalan singkat PDO Dari sekian banyak tutorial lokal mengenai PHP dan MyS menggunakan

PDO-PHP APLIKASI RENTAL MOBIL PHP MYSQL

case "edittransaksi":

//ambil data yang akan di edit

$decrypted_txt = $db->encrypt_decrypt('decrypt', $_GET['id']);

$r = $db->getRows('transaksi',array('where'=>

echo" <div class='row'>

<div class='col-xs-12'>

<div class='widget-box'>

<div class='widget-header'>

<h4 class='widget-title'>Form Ubah Data</h4>

<div class='widget-toolbar'>

<a href='#' data-action='collapse'>

<i class='ace-icon fa fa-chevron-up'></i>

</a>

</div>

</div>

<div class='widget-body'>

<div class='widget-main'>

<form id='formID' class='form-horizontal' method=

<div class='form-group'>

<label class='control-label col-xs

<div class='col-xs-12 col-sm-9'>

<div class='input-group'>

<span class='input-group-addon'>

<i class='ace-icon fa fa-key'></i>

</span>

<input type=\"text\" name=\"id_transaksi

</div>

</div>

</div>

<div class='form-group'>

<label class='control-label col-xs

<div class='col-xs-12 col-sm-4'>

<div class='clearfix'>

<div class='input-group'>

<input class='form-control date-picker' id='id

name=\"tanggal_sewa\" data-date-format='yyyy

<span class='input-group-addon'>

<i class='fa fa-calendar bigger-110'></i>

</span>

</div>

</div>

</div>

</div>

<div class='space-2'></div>

<div class='form-group'>

<label class='control-label col-xs

<div class='col-xs-12 col-sm-4'>

<div class='clearfix'>

<select name='id_pelanggan' class=

APLIKASI RENTAL MOBIL PHP MYSQL

41

>encrypt_decrypt('decrypt', $_GET['id']);

>getRows('transaksi',array('where'=>array('id_transaksi'=>$decrypted_txt),'return_type'=>'single'));

title'>Form Ubah Data</h4>

action='collapse'>

up'></i>

horizontal' method=\"POST\" action=\"$aksi?halamane=transaksi&act=update

xs-12 col-sm-3 no-padding-right' for='phone'>Kode transaksi:</label>

key'></i>

"id_transaksi\" required='required' value='$decrypted_txt' readonly='yes'>

xs-12 col-sm-3 no-padding-right' for='name'>Tanggal Sewa:</label>

picker' id='id-date-picker-2' type='text'

format='yyyy-mm-dd' required='required' value='$r[tanggal_sewa]' maxlength='10'/>

110'></i>

xs-12 col-sm-3 no-padding-right' for='name'>Nama Pelanggan:</label>

<select name='id_pelanggan' class=\"chosen-select form-control\"

array('id_transaksi'=>$decrypted_txt),'return_type'=>'single'));

"$aksi?halamane=transaksi&act=update\">

right' for='phone'>Kode transaksi:</label>

" required='required' value='$decrypted_txt' readonly='yes'>

right' for='name'>Tanggal Sewa:</label>

dd' required='required' value='$r[tanggal_sewa]' maxlength='10'/>

right' for='name'>Nama Pelanggan:</label>

Page 42: E-Book Rental PHP PDO MYSQL - sixghakreasi.com Rental... · PDO-PHP APLIKASI RENTAL MOBIL PHP MYSQL Pengenalan singkat PDO Dari sekian banyak tutorial lokal mengenai PHP dan MyS menggunakan

PDO-PHP APLIKASI RENTAL MOBIL PHP MYSQL

id=\"form-field-select-1\" data-placeholder='Click to Choose...' required='required'>";

if ($r['id_pelanggan']==0){

echo "<option value=\"0\" selected>

}

// Pilih tabel di database

$pelanggan = $db->getRows('pelanggan',array('order_by'=>'id_pelanggan ASC'));

// Tampilkan data tabel yang dipilih

foreach($pelanggan ? $pelanggan : [] as $w){

if ($r['id_pelanggan']==$w['id_pelanggan']){

echo "<option value=\"$w[id_pelanggan]

}else{

echo "<option value=\"$w[id_pelanggan]

}

}

echo "</select>

</div>

</div>

</div>

<div class='space-2'></div>

<div class='form-group'>

<label class='control-label col-xs

<div class='col-xs-12 col-sm-4'>

<div class='clearfix'>";

echo'<select name="id_mobil" class="chosen

onchange="document.getElementById(

if ($r['id_mobil']==0){

echo "<option value=\"0\" selected>

// Pilih tabel di database

$jsArray = "var prdName = new Array();

//$mobil = $db->getRows('mobil',array('order_by'=>'id_mobil ASC'));

$mobil = $db->getRows('mobil',array('where'=>array('status'=>'Tersedia')),array('order_by'=>'id_mobil ASC'));

// Tampilkan data tabel yang dipilih

foreach($mobil ? $mobil : [] as $w){

if ($r['id_mobil']==$w['id_mobil']){

echo "<option value=\"$w[id_mobil]

$jsArray .= "prdName['" . $w['id_mobil'] . "'] = '" . addslashes($w['harga']) . "';

}

else{

echo "<option value=\"$w[id_mobil]

$jsArray .= "prdName['" . $w['id_mobil'] . "'] = '" . addslashes($w['harga']) . "';

}

}

echo "</select><span class=\"help-

</div>

</div>

</div>

<div class='space-2'></div>

<div class='form-group'>

<label class='control-label col-xs

<div class='col-xs-12 col-sm-9'>

APLIKASI RENTAL MOBIL PHP MYSQL

42

placeholder='Click to Choose...' required='required'>";

" selected>- Pilih pelanggan -</option>";

>getRows('pelanggan',array('order_by'=>'id_pelanggan ASC'));

// Tampilkan data tabel yang dipilih

? $pelanggan : [] as $w){

if ($r['id_pelanggan']==$w['id_pelanggan']){

"$w[id_pelanggan]\" selected>$w[nama_pelanggan]</option>";

"$w[id_pelanggan]\">$w[nama_pelanggan]</option>";

xs-12 col-sm-3 no-padding-right' for='id_mobil'>Jenis Mobil:</label>

echo'<select name="id_mobil" class="chosen-select form-control" id="form-field-select-2" required="required"

onchange="document.getElementById(\'harga\').value = prdName[this.value]">';

" selected>- Pilih Mobil -</option>";}

$jsArray = "var prdName = new Array();\n";

>getRows('mobil',array('order_by'=>'id_mobil ASC'));

>getRows('mobil',array('where'=>array('status'=>'Tersedia')),array('order_by'=>'id_mobil ASC'));

// Tampilkan data tabel yang dipilih

foreach($mobil ? $mobil : [] as $w){

if ($r['id_mobil']==$w['id_mobil']){

"$w[id_mobil]\" selected>$w[nama_mobil] - [$w[nopol]]</option>";

$jsArray .= "prdName['" . $w['id_mobil'] . "'] = '" . addslashes($w['harga']) . "';

"$w[id_mobil]\">$w[nama_mobil] - [$w[nopol]]</option>";

$jsArray .= "prdName['" . $w['id_mobil'] . "'] = '" . addslashes($w['harga']) . "';

-block\">Mobil yang ditampilkan hanya mobil yang status nya Tersedia.</span>

xs-12 col-sm-3 no-padding-right' for='harga'>Harga Sewa:</label>

right' for='id_mobil'>Jenis Mobil:</label>

2" required="required"

>getRows('mobil',array('where'=>array('status'=>'Tersedia')),array('order_by'=>'id_mobil ASC'));

$jsArray .= "prdName['" . $w['id_mobil'] . "'] = '" . addslashes($w['harga']) . "';\n";

$jsArray .= "prdName['" . $w['id_mobil'] . "'] = '" . addslashes($w['harga']) . "';\n";

">Mobil yang ditampilkan hanya mobil yang status nya Tersedia.</span>

right' for='harga'>Harga Sewa:</label>

Page 43: E-Book Rental PHP PDO MYSQL - sixghakreasi.com Rental... · PDO-PHP APLIKASI RENTAL MOBIL PHP MYSQL Pengenalan singkat PDO Dari sekian banyak tutorial lokal mengenai PHP dan MyS menggunakan

PDO-PHP APLIKASI RENTAL MOBIL PHP MYSQL

<div class='clearfix'>

<input type='text' name='harga' id='harga' class='col

value='$r[harga_sewa]' readonly='readonly'/>

<script type='text/javascript'>$jsArray</script>

</div>

</div>

</div>

<div class='space-2'></div>

<div class='form-group'>

<label class='control-label col-xs

<div class='col-xs-12 col-sm-9'>

<div class='clearfix'>

<input type='number' name='lama' id='lama' class='col

value='$r[lama_sewa]' onchange=\"subtotal();

</div>

</div>

</div>

<div class='space-2'></div>

<div class='form-group'>

<label class='control-label col-xs

<div class='col-xs-12 col-sm-9'>

<div class='clearfix'>

<input type='text' name='total_sewa' id='subtotaltxt' class='col

readonly='readonly' value='$r[total_sewa]'/>

</div>

</div>

</div>

<div class='space-2'></div>

<div class='form-actions'>

<button class='btn btn-info' type='submit'>

<i class='ace-icon fa fa-check bigger

Submit

</button>

&nbsp; &nbsp; &nbsp;

<button class='btn' type='reset' onclick=

<i class='ace-icon fa fa-undo bigger

Reset

</button>

</div>

</form>

</div>

</div>

</div>

</div><!-- /.span -->

</div>";

break

case "ubahstatus":

//ambil data yang akan di kembalikan

$decrypted_txt = $db->encrypt_decrypt('decrypt', $_GET['id']);

$r = $db->getRows('transaksi',array('where'=>array('id_transaksi'=>$decrypted_txt),'return_type'=>'single'));

APLIKASI RENTAL MOBIL PHP MYSQL

43

input type='text' name='harga' id='harga' class='col-xs-12 col-sm-4'

value='$r[harga_sewa]' readonly='readonly'/>

<script type='text/javascript'>$jsArray</script>

xs-12 col-sm-3 no-padding-right' for='lama'>Lama Sewa (*Dalam Hari):</label>

<input type='number' name='lama' id='lama' class='col-xs-12 col-sm-4'

"subtotal();\" onkeyup=\"subtotal();\"/>

xs-12 col-sm-3 no-padding-right' for='subtotaltxt'>Total:</label>

<input type='text' name='total_sewa' id='subtotaltxt' class='col-xs-12 col-sm-4'

nly='readonly' value='$r[total_sewa]'/>

info' type='submit'>

check bigger-110'></i>

<button class='btn' type='reset' onclick=\"self.history.back()\">

undo bigger-110'></i>

//ambil data yang akan di kembalikan

>encrypt_decrypt('decrypt', $_GET['id']);

>getRows('transaksi',array('where'=>array('id_transaksi'=>$decrypted_txt),'return_type'=>'single'));

right' for='lama'>Lama Sewa (*Dalam Hari):</label>

right' for='subtotaltxt'>Total:</label>

>getRows('transaksi',array('where'=>array('id_transaksi'=>$decrypted_txt),'return_type'=>'single'));

Page 44: E-Book Rental PHP PDO MYSQL - sixghakreasi.com Rental... · PDO-PHP APLIKASI RENTAL MOBIL PHP MYSQL Pengenalan singkat PDO Dari sekian banyak tutorial lokal mengenai PHP dan MyS menggunakan

PDO-PHP APLIKASI RENTAL MOBIL PHP MYSQL

echo" <div class='row'>

<div class='col-xs-12'>

<div class='widget-box'>

<div class='widget-header'>

<h4 class='widget-title'>Form Pengembalian $decrypted_txt</h4>

<div class='widget-toolbar'>

<a href='#' data-action='collapse'><i class='ace

</div>

</div>

<div class='widget-body'>

<div class='widget-main'>

<form method=\"POST\" action=\"$aksi?halamane=transaksi&act=pengembalian

<input type='hidden' name='id_transaksi' value='$decrypted_txt'/>

<div>

<label for=\"id-date-picker-1\">Tanggal Pengembalian</

<div class='row'>

<div class='col-xs-12 col-sm-4'>

<div class='input-group'>

<input class='form-control date-picker' id='id

data-date-format='yyyy-mm-dd' required='required' va

<span class='input-group-addon'>

<i class='fa fa-calendar bigger-110'></i>

</span>

</div>

</div>

</div>

<div class='space-2'></div>

<label for=\"id-date-picker-1\">Denda</label>

<div class='row'>

<div class='col-xs-12 col-sm-12'>

<input type='number' name='denda' id='denda'/>

</div>

</div>

<div class='space-2'></div>

<div class='clearfix form-actions'>

<div class='col-md-offset-3 col-md-

<button class='btn btn-info' type='submit'>

<i class='ace-icon fa fa-check bigger

Submit

</button>

&nbsp; &nbsp; &nbsp;

<button class='btn' type='reset' onclick=

<i class='ace-icon fa fa-undo bigger

Reset

</button>

</div>

</div>

</form>

</div>

</div>

</div>

</div><!-- /.span -->

APLIKASI RENTAL MOBIL PHP MYSQL

44

Form Pengembalian $decrypted_txt</h4>

action='collapse'><i class='ace-icon fa fa-chevron-up'></i></a>

"$aksi?halamane=transaksi&act=pengembalian\">

<input type='hidden' name='id_transaksi' value='$decrypted_txt'/>

">Tanggal Pengembalian</label>

picker' id='id-date-picker-2' type='text' name=\"tanggal_kembali

dd' required='required' value='$tgl_sekarang' maxlength='10'/>

110'></i>

">Denda</label>

<input type='number' name='denda' id='denda'/>

actions'>

-9'>

info' type='submit'>

check bigger-110'></i>

<button class='btn' type='reset' onclick=\"self.history.back()\">

undo bigger-110'></i>

"tanggal_kembali\"

Page 45: E-Book Rental PHP PDO MYSQL - sixghakreasi.com Rental... · PDO-PHP APLIKASI RENTAL MOBIL PHP MYSQL Pengenalan singkat PDO Dari sekian banyak tutorial lokal mengenai PHP dan MyS menggunakan

PDO-PHP APLIKASI RENTAL MOBIL PHP MYSQL

</div>";

break;

//form Detail Transaksi

case "detailtransaksi":

//ambil data yang akan di edit

$decrypted_txt = $db->encrypt_decrypt('decrypt', $_GET['id']);

$r = $db->getRows('transaksi',array('where'=>array('id_transaksi'=>$decrypted_txt),'return_type'=>'single'));

echo" <div class='row'>

<div class='col-xs-12'>

<div class='widget-box'>

<div class='widget-header'>

<h4 class='widget-title'>Detail Trasaksi $decrypted_txt</h4>

<div class='widget-toolbar'>

<a href='#' data-action='collapse'>

<i class='ace-icon fa fa-chevron-up'></i>

</a>

</div>

</div>

<div class='widget-body'>

<div class='widget-main'>

<form class='form-horizontal'>

<div class='form-group'>

<label class='control-label col-xs

<div class='col-xs-12 col-sm-9'>

<div class='input-group'>

<span class='input-group-addon'>

<i class='ace-icon fa fa-key'></i>

</span>

<input type=\"text\" name=\"id_transaksi

</div>

</div>

</div>

<div class='form-group'>

<label class='control-label col-xs

<div class='col-xs-12 col-sm-4'>

<div class='clearfix'>

<div class='input-group'>

<input class='form-control date-picker' id='id

data-date-format='yyyy-mm-dd' required='required' value='$r[tanggal_sewa]' maxlength='10'

<span class='input-group-addon'>

<i class='fa fa-calendar bigger-110'></i>

</span>

</div>

</div>

</div>

</div>

<div class='space-2'></div>

<div class='form-group'>

<label class='control-label col-xs

APLIKASI RENTAL MOBIL PHP MYSQL

45

>encrypt_decrypt('decrypt', $_GET['id']);

>getRows('transaksi',array('where'=>array('id_transaksi'=>$decrypted_txt),'return_type'=>'single'));

title'>Detail Trasaksi $decrypted_txt</h4>

action='collapse'>

up'></i>

xs-12 col-sm-3 no-padding-right' for='phone'>Kode transaksi:</label>

key'></i>

"id_transaksi\" required='required' value='$decrypted_txt' readonly='yes'>

xs-12 col-sm-3 no-padding-right' for='name'>Tanggal Sewa:</label>

picker' id='id-date-picker-2' type='text' name=\"tanggal_sewa

dd' required='required' value='$r[tanggal_sewa]' maxlength='10'

110'></i>

xs-12 col-sm-3 no-padding-right' for='name'>Nama Pelanggan:</label>

>getRows('transaksi',array('where'=>array('id_transaksi'=>$decrypted_txt),'return_type'=>'single'));

Kode transaksi:</label>

$decrypted_txt' readonly='yes'>

right' for='name'>Tanggal Sewa:</label>

"tanggal_sewa\"

dd' required='required' value='$r[tanggal_sewa]' maxlength='10' disabled='true'/>

right' for='name'>Nama Pelanggan:</label>

Page 46: E-Book Rental PHP PDO MYSQL - sixghakreasi.com Rental... · PDO-PHP APLIKASI RENTAL MOBIL PHP MYSQL Pengenalan singkat PDO Dari sekian banyak tutorial lokal mengenai PHP dan MyS menggunakan

PDO-PHP APLIKASI RENTAL MOBIL PHP MYSQL

<div class='col-xs-12 col-sm-4'>

<div class='clearfix'>

<select name='id_pelanggan' class=

// Pilih tabel di database

$pelanggan = $db->getRows('pelanggan',array('order_by'=>'id_pelanggan ASC'));

// Tampilkan data tabel yang dipilih

foreach($pelanggan ? $pelanggan : [] as $w){

if ($r['id_pelanggan']==$w['id_pelanggan']){

echo "<option value=\"$w[id_pelanggan]

}

}

echo "</select>

</div>

</div>

</div>

<div class='space-2'></div>

<div class='form-group'>

<label class='control-label col-xs

<div class='col-xs-12 col-sm-4'>

<div class='clearfix'>";

echo'<select class="form-control" required="required" disabled="true">';

// Pilih tabel di database

//$mobil = $db->getRows('mobil',array('order_by'=>'id_mobil ASC'));

$mobil = $db->getRows('mobil',array('order_by'=>'id_mobil ASC'));

// Tampilkan data tabel yang dipilih

foreach($mobil ? $mobil : [] as $w){

if ($r['id_mobil']==$w['id_mobil']){

echo "<option value=\"$w[id_mobil]

}

}

echo "</select>

</div>

</div>

</div>

<div class='space-2'></div>

<div class='form-group'>

<label class='control-label col-xs

<div class='col-xs-12 col-sm-9'>

<div class='clearfix'>

<input type='text' name='harga' id='harga' class='col

value='".$db->format_rupiah($r['harga_sewa'])."' disabled='disabled'/>

</div>

</div>

</div>

<div class='space-2'></div>

<div class='form-group'>

<label class='control-label col-xs

<div class='col-xs-12 col-sm-9'>

<div class='clearfix'>

<input type='number' name='lama' id='lama' class='col

value='".$db->format_rupiah($r['lama_sewa'])."' disabled='disabled'/>

APLIKASI RENTAL MOBIL PHP MYSQL

46

<select name='id_pelanggan' class=\"form-control\" required='required' disabled='true'>";

>getRows('pelanggan',array('order_by'=>'id_pelanggan ASC'));

// Tampilkan data tabel yang dipilih

foreach($pelanggan ? $pelanggan : [] as $w){

if ($r['id_pelanggan']==$w['id_pelanggan']){

"$w[id_pelanggan]\" selected>$w[nama_pelanggan]</option>";

xs-12 col-sm-3 no-padding-right' for='id_mobil'>Jenis Mobil:</label>

control" required="required" disabled="true">';

>getRows('mobil',array('order_by'=>'id_mobil ASC'));

>getRows('mobil',array('order_by'=>'id_mobil ASC'));

// Tampilkan data tabel yang dipilih

foreach($mobil ? $mobil : [] as $w){

if ($r['id_mobil']==$w['id_mobil']){

"$w[id_mobil]\" selected>$w[nama_mobil] - [$w[nopol]]</option>";

xs-12 col-sm-3 no-padding-right' for='harga'>Harga Sewa:</label>

input type='text' name='harga' id='harga' class='col-xs-12 col-sm-4'

>format_rupiah($r['harga_sewa'])."' disabled='disabled'/>

xs-12 col-sm-3 no-padding-right' for='lama'>Lama Sewa (*Dalam Hari):</label>

<input type='number' name='lama' id='lama' class='col-xs-12 col-sm-4'

>format_rupiah($r['lama_sewa'])."' disabled='disabled'/>

" required='required' disabled='true'>";

right' for='id_mobil'>Jenis Mobil:</label>

right' for='harga'>Harga Sewa:</label>

right' for='lama'>Lama Sewa (*Dalam Hari):</label>

Page 47: E-Book Rental PHP PDO MYSQL - sixghakreasi.com Rental... · PDO-PHP APLIKASI RENTAL MOBIL PHP MYSQL Pengenalan singkat PDO Dari sekian banyak tutorial lokal mengenai PHP dan MyS menggunakan

PDO-PHP APLIKASI RENTAL MOBIL PHP MYSQL

</div>

</div>

</div>

<div class='space-2'></div>

<div class='form-group'>

<label class='control-label col-xs

<div class='col-xs-12 col-sm-9'>

<div class='clearfix'>

<input type='text' name='total_sewa' id='subtotaltxt' class='col

value='".$db->format_rupiah($r['total_sewa'])."' disabled='disabled'/>

</div>

</div>

</div>

<div class='space-2'></div>

</form>

</div>

</div>

</div>

</div><!-- /.span -->

</div>";

break;

}

}

?>

Buatlah folder dan file halaman/hal_transaksi/berikut untuk meng-eksekusi perintah yang dikirim oleh form tambah,editstatus di halaman transaksi. <?php

session_start();

// Apabila user belum login

if (empty($_SESSION['namauser']) AND empty($_SESSION['passuser'])){

echo "<h1>Untuk mengakses halaman, Anda harus login dulu.</h1><p><a href=

}

// Apabila user sudah login dengan benar, maka terbentuklah session

else{

include "../../config/koneksi.php";

include "../../config/encrypt_decrypt.php";

// initial database

$db = new DB();

$tblName = 'transaksi';

$halamane = $_GET['halamane'];

$act = $_GET['act'];

// declare variable post

$id_transaksi = trim(htmlspecialchars($_POST['id_trans

$id_pelanggan = trim(htmlspecialchars($_POST['id_pelanggan']));

$id_mobil = trim(htmlspecialchars($_POST['id_mobil']));

$harga_sewa = trim(htmlspecialchars($_POST['harga']));

$lama_sewa = trim(htmlspecialchars($_POST['lama']));

$total_sewa = trim(htmlspecialchars($_POST['total_sewa']));

APLIKASI RENTAL MOBIL PHP MYSQL

47

xs-12 col-sm-3 no-padding-right' for='subtotaltxt'>Total:</label>

<input type='text' name='total_sewa' id='subtotaltxt' class='col-xs-12 col-sm-4'

>format_rupiah($r['total_sewa'])."' disabled='disabled'/>

Buatlah folder dan file halaman/hal_transaksi/aksi_transaksi.php, Setelah itu kita Ketikeksekusi perintah yang dikirim oleh form tambah,edit,hapus

AND empty($_SESSION['passuser'])){

echo "<h1>Untuk mengakses halaman, Anda harus login dulu.</h1><p><a href=\"index.php\">LOGIN</a></p>";

// Apabila user sudah login dengan benar, maka terbentuklah session

include "../../config/encrypt_decrypt.php";

$id_transaksi = trim(htmlspecialchars($_POST['id_transaksi']));

$id_pelanggan = trim(htmlspecialchars($_POST['id_pelanggan']));

$id_mobil = trim(htmlspecialchars($_POST['id_mobil']));

$harga_sewa = trim(htmlspecialchars($_POST['harga']));

$lama_sewa = trim(htmlspecialchars($_POST['lama']));

l_sewa = trim(htmlspecialchars($_POST['total_sewa']));

al:</label>

, Setelah itu kita Ketik-kan skrip ,hapus ataupun ubah

">LOGIN</a></p>";

Page 48: E-Book Rental PHP PDO MYSQL - sixghakreasi.com Rental... · PDO-PHP APLIKASI RENTAL MOBIL PHP MYSQL Pengenalan singkat PDO Dari sekian banyak tutorial lokal mengenai PHP dan MyS menggunakan

PDO-PHP APLIKASI RENTAL MOBIL PHP MYSQL

$tanggal_sewa = trim(htmlspecialchars($_POST['tanggal_sewa']));

$tanggal_kembali = trim(htmlspecialchars($_POST['tanggal_kembali']));

$denda = trim(htmlspecialchars($_POST['denda']));

$tanggal = date("Y-m-d H:i:s");

// Input data transaksi

if ($halamane=='transaksi' AND $act=='input'){

//get last insert auto number

$Last_No = $db->last_inserted('id_transaksi','transaksi');

$kode_transaksi=$db->buatkode($Last_No, 'TR', 4);

$transaksiData = array(

'id_transaksi' => $kode_transaksi,

'id_pelanggan' => $id_pelanggan,

'id_mobil' => $id_mobil,

'lama_sewa' => $lama_sewa,

'harga_sewa' => $harga_sewa,

'total_sewa' => $total_sewa,

'tanggal_transaksi' => $tanggal,

'tanggal_sewa' => $tanggal_sewa

);

$insert = $db->insert($tblName,$transaksiData);

header("location:../../transaksi-view");

}

// Update data transaksi

elseif ($halamane=='transaksi' AND $act=='update'){

$transaksiData = array(

'id_pelanggan' => $id_pelanggan,

'id_mobil' => $id_mobil,

'lama_sewa' => $lama_sewa,

'harga_sewa' => $harga_sewa,

'total_sewa' => $total_sewa,

'tanggal_sewa' => $tanggal_sewa

);

$condition = array('id_transaksi' => $id_transaksi);

$update = $db->update($tblName,$transaksiData,$condition);

header("location:../../transaksi-v

}

// Hapus data transaksi

elseif ($halamane=='transaksi' AND $act=='hapus'){

$decrypted_txt = $db->encrypt_decrypt('decrypt', $_GET['id']);

$condition = array('id_transaksi' => $decrypted_txt);

$delete = $db->delete($tblName,$conditi

header("location:transaksi-view");

}

elseif ($halamane=='transaksi' AND $act=='updatestatus'){

$decrypted_txt = $db->encrypt_decrypt('decrypt', $_GET['id']);

switch ($_GET['s']) {

//Jika status_mobil diubah menjadi Open

case 'Open':

$transaksiData = array('status_mobil' => 'Open');

break;

//Jika status_mobil diubah menjadi Disewa

case 'Disewa':

APLIKASI RENTAL MOBIL PHP MYSQL

48

$tanggal_sewa = trim(htmlspecialchars($_POST['tanggal_sewa']));

$tanggal_kembali = trim(htmlspecialchars($_POST['tanggal_kembali']));

$denda = trim(htmlspecialchars($_POST['denda']));

if ($halamane=='transaksi' AND $act=='input'){

>last_inserted('id_transaksi','transaksi');

buatkode($Last_No, 'TR', 4);

'id_transaksi' => $kode_transaksi,

'id_pelanggan' => $id_pelanggan,

'lama_sewa' => $lama_sewa,

' => $harga_sewa,

'total_sewa' => $total_sewa,

'tanggal_transaksi' => $tanggal,

'tanggal_sewa' => $tanggal_sewa

);

>insert($tblName,$transaksiData);

view");

elseif ($halamane=='transaksi' AND $act=='update'){

'id_pelanggan' => $id_pelanggan,

'lama_sewa' => $lama_sewa,

$harga_sewa,

'total_sewa' => $total_sewa,

'tanggal_sewa' => $tanggal_sewa

);

$condition = array('id_transaksi' => $id_transaksi);

>update($tblName,$transaksiData,$condition);

view");

elseif ($halamane=='transaksi' AND $act=='hapus'){

>encrypt_decrypt('decrypt', $_GET['id']);

$condition = array('id_transaksi' => $decrypted_txt);

>delete($tblName,$condition);

view");

elseif ($halamane=='transaksi' AND $act=='updatestatus'){

>encrypt_decrypt('decrypt', $_GET['id']);

//Jika status_mobil diubah menjadi Open

$transaksiData = array('status_mobil' => 'Open');

//Jika status_mobil diubah menjadi Disewa

Page 49: E-Book Rental PHP PDO MYSQL - sixghakreasi.com Rental... · PDO-PHP APLIKASI RENTAL MOBIL PHP MYSQL Pengenalan singkat PDO Dari sekian banyak tutorial lokal mengenai PHP dan MyS menggunakan

PDO-PHP APLIKASI RENTAL MOBIL PHP MYSQL

$transaksiData = array('status_mobil' => 'Disewa');

break;

//Jika status_mobil diubah menjadi Dikembalikan

case 'Dikembalikan':

$transaksiData = array('status_mobil' => 'Dikembalikan','tanggal_kembali'=>$tanggal);

break;

default:

// Always prepare for the unknown :

throw new \Exception("Unknown operator");

}

$condition = array('id_transaksi' => $decrypted_txt);

$update = $db->update($tblName,$transaksiData,$condition);

header("location:transaksi-view");

}

elseif ($halamane=='transaksi' AND $act=='pengembalian')

$transaksiData = array(

'denda' => $denda,

'status_mobil' => 'Dikembalikan',

'tanggal_kembali' => $tanggal_kembali);

$condition = array('id_transaksi' => $id_transaksi);

$update = $db->update($tblName,$transaksiData,$condition);

header("location:../../transaksi-view");

}

}

?>

Membuat Laporan

Buatlah folder dan file halaman/hal_menampilkan halaman di menu laporan. <form method="POST" action="report-

APLIKASI RENTAL MOBIL PHP MYSQL

49

$transaksiData = array('status_mobil' => 'Disewa');

//Jika status_mobil diubah menjadi Dikembalikan

$transaksiData = array('status_mobil' => 'Dikembalikan','tanggal_kembali'=>$tanggal);

// Always prepare for the unknown :-)

n("Unknown operator");

$condition = array('id_transaksi' => $decrypted_txt);

>update($tblName,$transaksiData,$condition);

view");

elseif ($halamane=='transaksi' AND $act=='pengembalian'){

'status_mobil' => 'Dikembalikan',

'tanggal_kembali' => $tanggal_kembali);

$condition = array('id_transaksi' => $id_transaksi);

update($tblName,$transaksiData,$condition);

view");

Buatlah folder dan file halaman/hal_report/report.php, Setelah itu kita Ketik-kan skrip berikut untuk di menu laporan.

-transaksi-view" target="_blank">

$transaksiData = array('status_mobil' => 'Dikembalikan','tanggal_kembali'=>$tanggal);

kan skrip berikut untuk

Page 50: E-Book Rental PHP PDO MYSQL - sixghakreasi.com Rental... · PDO-PHP APLIKASI RENTAL MOBIL PHP MYSQL Pengenalan singkat PDO Dari sekian banyak tutorial lokal mengenai PHP dan MyS menggunakan

PDO-PHP APLIKASI RENTAL MOBIL PHP MYSQL

<label for="timepicker1">Dari</label>

<div class="input-group col-xs-8 col

<input name='dari' class="form-control date

data-date-format="yyyy-mm-dd" readonly='true' required='required' value='<?php echo"$tgl_sekarang"; ?>'/>

<span class="input-group-addon">

<i class="fa fa-calendar bigger-110"></i>

</span>

</div>

<hr />

<label for="timepicker1">Sampai</label>

<div class="input-group col-xs-8 col

<input name='sampai' class="form-control date

data-date-format="yyyy-mm-dd" readonly='true' required='required' value='<?php ec

<span class="input-group-addon">

<i class="fa fa-calendar bigger-110"></i>

</span>

</div>

<hr />

<div class='clearfix form-actions'>

<div class='col-md-offset-4 col-md-

<button class='btn btn-info' type='submit'>

<i class='ace-icon fa fa-check bigger

Submit

</button>

</div>

</div>

</form>

Buatlah folder dan file halaman/hal_berikut untuk meng-eksekusi perintah yang dikirim oleh form dipilih. <?php

session_start();

include "../../config/koneksi.php";

// Apabila user belum login

if (empty($_SESSION['namauser']) AND empty($_SESSION['passuser'])){

echo "<h1>Untuk mengakses halaman, Anda harus login dulu.</h1><p><a href=

}

// Apabila user sudah login dengan benar, maka terbentuklah session

else{

$db = new DB();

?>

<html>

<head>

<title> :: LAPORAN DATA KOREKTIF</title>

<link href="halaman/hal_report/styles_cetak.css" rel="stylesheet" type="text/css">

</head>

<body>

<center>

APLIKASI RENTAL MOBIL PHP MYSQL

50

<label for="timepicker1">Dari</label>

8 col-sm-6">

control date-picker" id="id-date-picker-1" type="text"

dd" readonly='true' required='required' value='<?php echo"$tgl_sekarang"; ?>'/>

110"></i>

for="timepicker1">Sampai</label>

8 col-sm-6">

control date-picker" id="id-date-picker-2" type="text"

dd" readonly='true' required='required' value='<?php echo"$tgl_sekarang"; ?>'/>

110"></i>

actions'>

-6'>

info' type='submit'>

check bigger-110'></i>

Buatlah folder dan file halaman/hal_report/report-transaksi.php, Setelah itu kita Ketikeksekusi perintah yang dikirim oleh form laporan berdasarkan tanggal yang

(empty($_SESSION['namauser']) AND empty($_SESSION['passuser'])){

echo "<h1>Untuk mengakses halaman, Anda harus login dulu.</h1><p><a href=\"index.php\">LOGIN</a></p>";

// Apabila user sudah login dengan benar, maka terbentuklah session

<title> :: LAPORAN DATA KOREKTIF</title>

<link href="halaman/hal_report/styles_cetak.css" rel="stylesheet" type="text/css">

dd" readonly='true' required='required' value='<?php echo"$tgl_sekarang"; ?>'/>

ho"$tgl_sekarang"; ?>'/>

, Setelah itu kita Ketik-kan skrip laporan berdasarkan tanggal yang

">LOGIN</a></p>";

Page 51: E-Book Rental PHP PDO MYSQL - sixghakreasi.com Rental... · PDO-PHP APLIKASI RENTAL MOBIL PHP MYSQL Pengenalan singkat PDO Dari sekian banyak tutorial lokal mengenai PHP dan MyS menggunakan

PDO-PHP APLIKASI RENTAL MOBIL PHP MYSQL

<h2> LAPORAN DATA TRANSAKSI </h2>

<p><?php echo"Range Date : $_POST[dari] s/d $_POST[sampai]";?></p>

</center>

<?php

if($_POST['dari'] !=='' && $_POST['sampai'] !==''){

$transaksi = $db->GetDataTransaksiByDate($_POST['dari'],$_POST['sampai']);

}

else {

$transaksi = $db->GetDataTransaksi();

}

echo"<table class='table-list' width='100%' border='0' cellspacing='1' cellpadding='2'>

<thead>

<tr>

<td bgcolor='#F5F5F5'>#</td>

<td bgcolor='#F5F5F5'>No Transaksi</td>

<td bgcolor='#F5F5F5'>Nama Pelanggan</td>

<td bgcolor='#F5F5F5'>Jenis Mobil</td>

<td bgcolor='#F5F5F5'><center>Lama Sewa</center></td>

<td bgcolor='#F5F5F5'>Harga Sewa</td>

<td bgcolor='#F5F5F5'>Denda</td>

<td bgcolor='#F5F5F5'>Total Sewa</td>

<td bgcolor='#F5F5F5'>Status Mobil</td>

<td bgcolor='#F5F5F5'>Tanggal Sewa</td>

<td bgcolor='#F5F5F5'>Tanggal Kembali</td>

</tr>

</thead>

<tbody>";

$no = 1;

// Tampilkan data tabel yang dipilih

foreach($transaksi ? $transaksi : [] as $r){

$total=$r['total_sewa']+$r['denda'];

echo "

<tr>

<td class='center'>$no</td>

<td>$r[id_transaksi]</td>

<td>$r[nama_pelanggan]</td>

<td>$r[nama_mobil]</td>

<td><center>$r[lama_sewa]</center></td>

<td>".$db->format_rupiah($r['harga_sewa'])."</td>

<td>";if($r['denda']==0){echo"-";} else {echo"".$db

<td>".$db->format_rupiah($total)."</td>

<td>$r[status_mobil]</td>

<td>".date("d-m-Y",strtotime($r['tanggal

<td>";if($r['tanggal_kembali']==""){echo"

else {echo"".date("d-m-Y",strtotime($r['tanggal_kembali']))."";}echo"</td>

</tr>"; $no++;

}

echo"

</tbody>

</table>";

?>

</body>

</html>

<?php}?>

APLIKASI RENTAL MOBIL PHP MYSQL

51

echo"Range Date : $_POST[dari] s/d $_POST[sampai]";?></p>

if($_POST['dari'] !=='' && $_POST['sampai'] !==''){

>GetDataTransaksiByDate($_POST['dari'],$_POST['sampai']);

aTransaksi();

list' width='100%' border='0' cellspacing='1' cellpadding='2'>

<td bgcolor='#F5F5F5'>No Transaksi</td>

<td bgcolor='#F5F5F5'>Nama Pelanggan</td>

<td bgcolor='#F5F5F5'>Jenis Mobil</td>

<td bgcolor='#F5F5F5'><center>Lama Sewa</center></td>

<td bgcolor='#F5F5F5'>Harga Sewa</td>

<td bgcolor='#F5F5F5'>Total Sewa</td>

obil</td>

<td bgcolor='#F5F5F5'>Tanggal Sewa</td>

<td bgcolor='#F5F5F5'>Tanggal Kembali</td>

// Tampilkan data tabel yang dipilih

foreach($transaksi ? $transaksi : [] as $r){

$total=$r['total_sewa']+$r['denda'];

<td><center>$r[lama_sewa]</center></td>

format_rupiah($r['harga_sewa'])."</td>

";} else {echo"".$db->format_rupiah($r['denda'])."";}echo"</td>

>format_rupiah($total)."</td>

Y",strtotime($r['tanggal_sewa']))."</td>

<td>";if($r['tanggal_kembali']==""){echo"-";}

Y",strtotime($r['tanggal_kembali']))."";}echo"</td>

>format_rupiah($r['denda'])."";}echo"</td>

Page 52: E-Book Rental PHP PDO MYSQL - sixghakreasi.com Rental... · PDO-PHP APLIKASI RENTAL MOBIL PHP MYSQL Pengenalan singkat PDO Dari sekian banyak tutorial lokal mengenai PHP dan MyS menggunakan

PDO-PHP APLIKASI RENTAL MOBIL PHP MYSQL

APLIKASI RENTAL MOBIL PHP MYSQL

52