Click here to load reader
Upload
doanque
View
288
Download
16
Embed Size (px)
Citation preview
1JAMMEMBUAT
APLIKASI RENTAL MOBIL
DENGAN PHP DAN MYSQL
SIGIT DWI PRASETYO
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
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
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
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
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
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
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>";
PDO-PHP APLIKASI RENTAL MOBIL PHP MYSQL
<meta name="description" content="Static & 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 & 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">
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>
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© 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© 2018</span>
up" class="btn-scroll-up btn btn-sm btn-inverse">
double-up icon-only bigger-110"></i>
navbar"
sidebar"
breadcrumbs"
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>";
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,
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>
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']; ?>,'); }
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>
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'>
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'/>
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>
<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'>
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>
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>
<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'>";
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>";
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>";
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'>
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'/>
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>
<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'>
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>
<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
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>";
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>
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'>
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'/>
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>
<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>
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>
<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'
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>";
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>";
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>
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>
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\">
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>
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>
<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'/>
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>
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>
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>
<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'));
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>
<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\"
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>
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>
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>";
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
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
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>";
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>
PDO-PHP APLIKASI RENTAL MOBIL PHP MYSQL
APLIKASI RENTAL MOBIL PHP MYSQL
52