Pada tampilan ini merupakan tampilan Halaman Login, pada halaman ini,
pengguna pertama kali membuka aplikasi dan akan langsung menampilkan
halaman login ini, pengguna di haruskan menginput username dan password
untuk mengarahkan ke halaman berikutnya. Untuk tampilan halaman login user
dapat dilihat pada gambar 4.1
Gambar 4. 1 Halaman login
if (data.containsKey('error')) {
print(data['error']);
} else {
// Simpan data pengguna yang login ke SharedPreferences
SharedPreferences prefs = await
SharedPreferences.getInstance();
prefs.setString('user_id', data['id']);
prefs.setString('user_name', data['name']);
prefs.setString('user_email', data['email']);
prefs.setBool('is_logged_in', true);
Navigator.pushReplacement(
context,
MaterialPageRoute(
builder: (context) => HomePage(user: data),
),
);
}
} else {
print('Failed to connect to the server');
}
}
2. Halaman register
Pada tampilan ini merupakan tampilan Halaman Register, pada halaman ini
pengguna mendaftar atau membuat akun untuk akses ke fitur fitur tertentu.
Pengguna diminta untuk mengisi formulir yang berisikan Nama, Email, dan kata
sandi Untuk tampilan halaman daftar user dapat dilihat pada gambar 4.2
Gambar 4. 2 Halaman register
// Registrasi berhasil
print(data['message']);
@override
Widget build(BuildContext context) {
return Column(
crossAxisAlignment: CrossAxisAlignment.stretch,
children: [
// Nama
TextField(
controller: _nameController,
decoration: const InputDecoration(labelText: 'Nama'),
),
const SizedBox(height: 8.0),
// Email
TextField(
controller: _emailController,
decoration: const InputDecoration(labelText: 'Email'),
),
const SizedBox(height: 8.0),
// Kata Sandi
TextField(
controller: _passwordController,
3. Halaman home
children: [
ClipRRect(
borderRadius: const BorderRadius.only(
topLeft: Radius.circular(16.0),
topRight: Radius.circular(16.0),
),
child: Image.network(
field['field_photo_url'],
height: 150,
width: double.infinity,
fit: BoxFit.cover,
),
),
Padding(
padding: const EdgeInsets.all(16.0),
child: Column(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
Text(
field['field_name'],
style: const TextStyle(fontSize: 18,
fontWeight: FontWeight.bold),
),
],
),
),
],
),
),
);
}
void _handleBottomNavBarTaps(int index) {
setState(() {
_currentIndex = index;
});
}
@override
_BookingPageState createState() => _BookingPageState();
}
@override
void initState() {
super.initState();
_loadUserData();
}
Uri.parse('https://app.sandbox.midtrans.com/snap/v1/transactions')
;
void _performBooking(BuildContext context) async {
// var total = widget.field['price_per_hour'] *
_jumlahJam.text;
print(_jumlahJam.text);
print(widget.field['price_per_hour']);
print(int.parse(widget.field['price_per_hour']) *
int.parse(_jumlahJam.text));
Random objectname = Random();
int number = objectname.nextInt(10000000);
String username = 'SB-Mid-server-NORFpHnMnqlj-9eDWO9z-LY-';
String password = '';
String basicAuth =
'Basic ${base64Encode(utf8.encode('$username:
$password'))}';
if (data.containsKey('message')) {
Navigator.push(
context,
MaterialPageRoute(builder: (context) => PaymentPage()),
);
} else if (data.containsKey('error')) {
print('Booking failed: ${data['error']}');
Pada tampilan ini merupakan tampilan Halaman Login, pada halaman ini,
Admin pertama kali membuka aplikasi dan akan langsung menampilkan halaman
login ini, pengguna di haruskan menginput username dan password untuk
mengarahkan ke halaman berikutnya. Untuk tampilam halaman login dapat
dilihat pada gambar 4.5 berikut.
require_once('config.php');
2. Halaman Dashboard
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8" />
<meta content="width=device-width, initial-scale=1.0"
name="viewport" />
<title>Dashboard Admin - Advas Futsal</title>
<meta content="" name="description" />
<meta content="" name="keywords" />
<!-- Favicons -->
<link href="assets/img/favicon.png" rel="icon" />
<link href="assets/img/apple-touch-icon.png" rel="apple-touch-
icon" />
<!-- Google Fonts -->
<link href="https://fonts.gstatic.com" rel="preconnect" />
<link href="https://fonts.googleapis.com/css?
family=Open+Sans:300,300i,400,400i,600,600i,700,700i|
Nunito:300,300i,400,400i,600,600i,700,700i|
Poppins:300,300i,400,400i,500,500i,600,600i,700,700i"
rel="stylesheet" />
<!-- Vendor CSS Files -->
<link href="assets/vendor/bootstrap/css/bootstrap.min.css"
rel="stylesheet" />
<link href="assets/vendor/bootstrap-icons/bootstrap-icons.css"
rel="stylesheet" />
<link href="assets/vendor/boxicons/css/boxicons.min.css"
rel="stylesheet" />
<link href="assets/vendor/quill/quill.snow.css"
rel="stylesheet" />
<link href="assets/vendor/quill/quill.bubble.css"
rel="stylesheet" />
<link href="assets/vendor/remixicon/remixicon.css" rel="
End Logo -->
Tampilan halaman lapangan adalah gambar terkait lapangan futsal yang ingin di
booking. Untuk tampilan lapangan dapat dilihat pada gambar 4.7
Gambar 4. 7 Halaman lapangan
checkAdminSession();
$lapanganResult = getLapanganData();
$result = tambahLapangan(
$lapanganData["field_name"],
$lapanganData["field_number"],
uploadGambarLapangan($_FILES["gambarLapangan"]),
$lapanganData["description"],
$lapanganData["price_per_hour"]
);
if ($result) {
// Success, refresh the page or redirect to lapangan.php
header("Location: lapangan.php");
exit();
} else {
$error_message = "Failed to add lapangan. Please try
again.";
}
}
?>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8" />
<meta content="width=device-width, initial-scale=1.0"
name="viewport" />
<title>Dashboard Admin - Advas Futsal</title>
<meta content="" name="description" />
<meta content="" name="keywords" />
<!-- Favicons -->
<link href="assets/img/favicon.png" rel="icon" />
<link href="assets/img/apple-touch-icon.png" rel="apple-touch-
icon" />
4. Tampilan halaman pemesanan
Pada halaman ini admin dapat melihat pengguna yang mem-booking lapangan
futsal. Tampilan halaman pemesanan dapat dilihat pada gambar 4.8 berikut.
checkAdminSession();
$pemesananResult = getPemesananData();
?>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8" />
<meta content="width=device-width, initial-scale=1.0"
name="viewport" />
<title>Dashboard Admin - Advas Futsal</title>
<meta content="" name="description" />
<meta content="" name="keywords" />
<!-- Favicons -->
<link href="assets/img/favicon.png" rel="icon" />
<link href="assets/img/apple-touch-icon.png" rel="apple-touch-
icon" />
<!-- Google Fonts -->
<link href="https://fonts.gstatic.com" rel="preconnect" />
<link href="https://fonts.googleapis.com/css?
family=Open+Sans:300,300i,400,400i,600,600i,700,700i|
Nunito:300,300i,400,400i,600,600i,700,700i|
Poppins:300,300i,400,400i,500,500i,600,600i,700,700i"
rel="stylesheet" />
<!-- Vendor CSS Files -->
<link href="assets/vendor/bootstrap/css/bootstrap.min.css"
rel="stylesheet" />
<link href="assets/vendor/bootstrap-icons/bootstrap-icons.css"
rel="stylesheet" />
<link href="assets/vendor/boxicons/css/boxicons.min.css"
rel="stylesheet" />
<link href="assets/vendor/quill/quill.snow.css"
rel="stylesheet" />
<link href="assets/vendor/quill/quill.bubble.css"
rel="stylesheet" />
<link href="assets/vendor/remixicon/remixicon.css"
rel="stylesheet" />
<link href="assets/vendor/simple-datatables/style.css"
rel="stylesheet" />
<!-- Template Main CSS File -->
<link href="assets/css/style.css" rel="stylesheet" />
</head>
<body>
<!-- ======= Header ======= -->
<header id="header" class="header fixed-top d-flex align-items-
center">
<div class="d-flex align-items-center justify-content-
between">
<a href="index.html" class="logo d-flex align-items-
center">
<img src="assets/img/logo.png" alt="" />
<span class="d-none d-lg-block ms-2">Advas
Futsal</span>
</a>
<i class="bi bi-list toggle-sidebar-btn"></i>
</div>
<!-- End Logo -->
checkAdminSession();
$penggunaResult = getPenggunaData();
if ($updateSuccess) {
// Redirect or display a success message
header("Location: pengguna.php");
exit();
} else {
// Handle the update failure, e.g., display an error
message
echo "Failed to update pengguna.";
}
}
?>
<body>
<!-- ======= Header ======= -->
<header id="header" class="header fixed-top d-flex align-items-
center">
<div class="d-flex align-items-center justify-content-
between">
<a href="index.html" class="logo d-flex align-items-
center">
<img src="assets/img/logo.png" alt="" />
<span class="d-none d-lg-block ms-2">Advas
Futsal</span>
</a>
<i class="bi bi-list toggle-sidebar-btn"></i>
</div>
<!-- End Logo -->
4.2 Pembahasan
Hasil yang
Aksi Hasil Pengujian Kesimpulan
diharapkan
User mengklik Sistem menampilkan Sistem menerima Berhasil
tombol sudah form daftar Daftar dan
memiliki akun? menampilkan pesan
masuk “anda sudah
terdaftar”
User mengisi form Sistem menampilkan Ketika ada salah satu Berhasil
daftar pesan kesalahan data tidak diisi sistem
akan menampilkan
“Please Fill out this
failed”
Hasil yang
Aksi Hasil Pengujian Kesimpulan
diharapkan
Mengisi form login sistem menerima sistem menerima Berhasil
dengan email dan login dan login dan
password yang benar menampilkan menampilkan
lalu menekan tombol halaman Home halaman home
login
Mengisi form login Sistem memberikan Sistem memberikan Berhasil
dengan email yang n informasi pesan informasi pesan
benar dan password password salah! password salah!
yang salah lalu
mengklik tombol
login
Mengisi form login Sistem akan Sistem akan Berhasil
dengan email yang menampilkan pesan menampilkan pesan
salah dan password username atau username atau
yang salah lalu klik password salah password salah
login
Hasil yang
Aksi Hasil Pengujian Kesimpulan
diharapkan
User mengklik sistem menampilkan sistem menampilkan Berhasil
lapangan 1 Detail lapangan detail lapangan
Hasil yang
Aksi Hasil Pengujian Kesimpulan
diharapkan
User mengklik Menu sistem Menampilkan Sistem menampilkan Berhasil
Booking Form Booking Form halaman
Booking
User Mengklik form Sistem menampilkan Ketika ada salah satu Berhasil
Booking Pesan Kesalahan data tidak diisi sistem
akan menampilkan
“Please Fill out this
failed”
User melakukan Sistem melakukan Sistem berhasil Berhasil
Booking lapangan booking melakukan booking
futsal
Hasil yang
Aksi Hasil Pengujian Kesimpulan
diharapkan
User mengklik Sistem menampilkan Sistem menerima Berhasil
tombol sudah form daftar Daftar dan
memiliki akun? menampilkan pesan
masuk “anda sudah
terdaftar”
User mengisi form Sistem menampilkan Ketika ada salah satu Berhasil
daftar pesan kesalahan data tidak diisi sistem
akan menampilkan
“Please Fill out this
failed”
Hasil yang
Aksi Hasil Pengujian Kesimpulan
diharapkan
Mengisi form login sistem menerima sistem menerima Berhasil
dengan email dan login dan login dan
password yang benar menampilkan menampilkan
lalu menekan tombol halaman Home halaman home
login
Mengisi form login Sistem memberikan Sistem memberikan Berhasil
dengan email yang n informasi pesan informasi pesan
benar dan password password salah! password salah!
yang salah lalu
mengklik tombol
login
Mengisi form login Sistem akan Sistem akan Berhasil
dengan email yang menampilkan pesan menampilkan pesan
salah dan password username atau username atau
yang salah lalu klik password salah password salah
login
Hasil yang
Aksi Hasil Pengujian Kesimpulan
diharapkan
User mengklik sistem menampilkan sistem menampilkan Berhasil
lapangan 1 Detail lapangan detail lapangan
Tabel 4. 8 Pengujian android 9 Halaman booking
Hasil yang
Aksi Hasil Pengujian Kesimpulan
diharapkan
User mengklik Menu sistem Menampilkan Sistem menampilkan Berhasil
Booking Form Booking Form halaman
Booking
User Mengklik form Sistem menampilkan Ketika ada salah satu Berhasil
Booking Pesan Kesalahan data tidak diisi sistem
akan menampilkan
“Please Fill out this
failed”
User melakukan Sistem melakukan Sistem berhasil Berhasil
Booking lapangan booking melakukan booking
futsal
Hasil yang
Aksi Hasil Pengujian Kesimpulan
diharapkan
User mengklik Sistem menampilkan Sistem menerima Berhasil
tombol sudah form daftar Daftar dan
memiliki akun? menampilkan pesan
masuk “anda sudah
terdaftar”
User mengisi form Sistem menampilkan Ketika ada salah satu Berhasil
daftar pesan kesalahan data tidak diisi sistem
akan menampilkan
“Please Fill out this
failed”
Hasil yang
Aksi Hasil Pengujian Kesimpulan
diharapkan
Mengisi form login sistem menerima sistem menerima Berhasil
dengan email dan login dan login dan
password yang benar menampilkan menampilkan
lalu menekan tombol halaman Home halaman home
login
Mengisi form login Sistem memberikan Sistem memberikan Berhasil
dengan email yang n informasi pesan informasi pesan
benar dan password password salah! password salah!
yang salah lalu
mengklik tombol
login
Mengisi form login Sistem akan Sistem akan Berhasil
dengan email yang menampilkan pesan menampilkan pesan
salah dan password username atau username atau
yang salah lalu klik password salah password salah
login
Hasil yang
Aksi Hasil Pengujian Kesimpulan
diharapkan
User mengklik sistem menampilkan sistem menampilkan Berhasil
lapangan 1 Detail lapangan detail lapangan
Hasil yang
Aksi Hasil Pengujian Kesimpulan
diharapkan
User mengklik Menu sistem Menampilkan Sistem menampilkan Berhasil
Booking Form Booking Form halaman
Booking
User Mengklik form Sistem menampilkan Ketika ada salah satu Berhasil
Booking Pesan Kesalahan data tidak diisi sistem
akan menampilkan
“Please Fill out this
failed”
User melakukan Sistem melakukan Sistem berhasil Berhasil
Booking lapangan booking melakukan booking
futsal
Hasil yang
Aksi Hasil Pengujian Kesimpulan
diharapkan
User mengklik Sistem menampilkan Sistem menerima Berhasil
tombol sudah form daftar Daftar dan
memiliki akun? menampilkan pesan
masuk “anda sudah
terdaftar”
User mengisi form Sistem menampilkan Ketika ada salah satu Berhasil
daftar pesan kesalahan data tidak diisi sistem
akan menampilkan
“Please Fill out this
failed”
Hasil yang
Aksi Hasil Pengujian Kesimpulan
diharapkan
Mengisi form login sistem menerima sistem menerima Berhasil
dengan email dan login dan login dan
password yang benar menampilkan menampilkan
lalu menekan tombol halaman Home halaman home
login
Mengisi form login Sistem memberikan Sistem memberikan Berhasil
dengan email yang n informasi pesan informasi pesan
benar dan password password salah! password salah!
yang salah lalu
mengklik tombol
login
Mengisi form login Sistem akan Sistem akan Berhasil
dengan email yang menampilkan pesan menampilkan pesan
salah dan password username atau username atau
yang salah lalu klik password salah password salah
login
Hasil yang
Aksi Hasil Pengujian Kesimpulan
diharapkan
User mengklik sistem menampilkan sistem menampilkan Berhasil
lapangan 1 Detail lapangan detail lapangan
Hasil yang
Aksi Hasil Pengujian Kesimpulan
diharapkan
User mengklik Menu sistem Menampilkan Sistem menampilkan Berhasil
Booking Form Booking Form halaman
Booking
User Mengklik form Sistem menampilkan Ketika ada salah satu Berhasil
Booking Pesan Kesalahan data tidak diisi sistem
akan menampilkan
“Please Fill out this
failed”
User melakukan Sistem melakukan Sistem berhasil Berhasil
Booking lapangan booking melakukan booking
futsal
Hasil yang
Aksi Hasil Pengujian Kesimpulan
diharapkan
Admin Mengisi form sistem menerima sistem menerima Berhasil
login dengan email login dan login dan
dan password yang menampilkan menampilkan
benar lalu menekan halaman Home halaman home
tombol login
Mengisi form login Sistem memberikan Sistem memberikan Berhasil
dengan email yang n informasi pesan informasi pesan
benar dan password password salah! password salah!
yang salah lalu
mengklik tombol
login
Mengisi form login Sistem akan Sistem akan Berhasil
dengan email yang menampilkan pesan menampilkan pesan
salah dan password username atau username atau
yang salah lalu klik password salah password salah
login
Hasil yang
Aksi Hasil Pengujian Kesimpulan
diharapkan
Admin Mengklik sistem menampilkan sistem menampilkan Berhasil
menu lapangan halaman lapangan halaman lapangan
Admin meng-klik Sistem menampilkan Sistem berhasil Berhasil
tambah lapangan form menambahkan
tambah lapangan
Admin mengklik Sistem menampilkan Ketika ada salah satu Berhasil
tambah lapangan pesan “ data tidak diisi sistem
akan menampilkan
“Please Fill out this
failed”
Hasil yang
Aksi Hasil Pengujian Kesimpulan
diharapkan
Admin mengklik sistem menampilkan sistem menampilkan Berhasil
menu pemesanan hasil pemesanan hasil pemesanan
lapangan
Admin mengklik Sistem menampilkan Sistem berhasil Berhasil
tombol hapus pesan “Are you sure menampikan pesan
you want to delete “Are you sure you
this booking?” want to delete this
booking?”
Admin mengklik Sistem akan Sistem menampilkan Berhasil
tombol edit menampilkan form form edit
edit
Hasil yang
Aksi Hasil Pengujian Kesimpulan
diharapkan
Admin mengklik sistem menampilkan sistem menampilkan Berhasil
menu pengguna nama pengguna nama pengguna
Admin mengklik Sistem menampilkan Sistem menampilkan Berhasil
tombol hapus pesan “are you sure pesan “are you sure
you want to delete you want to delete
this pengguna?” this pengguna?”
Admin mengklik Sistem akan Sistem menampilkan Berhasil
tombol edit menampilkan form form edit
edit
BAB V
KESIMPULAN
5.1 Kesimpulan
Berdasarkan analisis dan pembahasan yang sudah dilakukan, maka dapat
diambil kesimpulan diantaranya sebagai berikut :
1. Metode pengembangan yang digunakan yaitu metode RAD (Rapid
Application Development)
2. Hasil pengujian blackbox adalah aplikasi dapat berjalan dengan baik sesuai
harapan. Dimana fungsi dari setiap menu berfungsi dengan baik,
5.2 Saran
Aplikasi E-booking lapangan ini masih terdapat kekurangan, dan masih perlu
dilakukan pengembangan pada aplikasi ini agar aplikasi menjadi lebih baik lagi.
Terdapat saran untuk pengembangan selanjutnya yaitu, untuk aplikasi agar bisa
menambahkan fitur rating pada E-Booking lapangan dan fitur lokasi pada aplikasi