Rabu, 18 Maret 2020

Bagian 05: Membuat Entry Transaksi Pembayaran



Membuat Entry Transaksi Pembayaran – Baiklah teman teman, kita akan melanjutkan pembahasan kita mengenai soal Membuat Aplikasi Pembayaran SPP. Sebelumnya kita sudah membuat sebuah CRUD data petugas yang mana kita bisa Menambah data, Menampilkan data, Memperbarui data, dan Menghapus data. Yang belum adalah membuat CRUD data siswa, CRUD data spp dan CRUD data kelas. Sekarang saya minta teman teman buat ke tiga CRUD tadi menggunakan cara yang sama dengan yang sebelumnya kita buat disini. Oke teman teman mari kita lanjutkan membuat Entry Transaksi Pembayaran.

Silahkan teman teman jalankan Web Server kalian dan Buka Code Editornya. Jika sudah dijalankan semua, saya minta teman teman ketikkan script dibawah ini. Tampilan yang akan kita buat kurang lebih akan seperti ini ya teman teman.

Tampilan Entry Transaksi

Jadi tampilannya ini berisi seluruh data yang ada pada table pembayaran kita
Kenapa kita tidak menampilkan id_petugas, nisn, dan id_spp ? Karena menurut saya ketiga field ini seharusnya tidak kita tampilkan tapi nanti kita akan mengambil data dari table lain dengan memanfaatkan relasi yang kita buat pada database. Jadi intinya id_petugas ini yang akan tampil adalah nama dari si petugas nya bukan id nya, nisn juga nanti yang akan kita tampilkan adalah nama dari nisn yang digunakan, begitupun sama dengan id_spp yang akan kita tampilkan nanti Tahun SPP berikut dengan Nominal yang harus dibayar.


Table Pembayaran

Buat File transaksi.php


Silahkan teman teman save dengan nama transaksi.php !


Tampilan Entry Transaksi

Tampilan ini mengikuti data data yang ada pada table Pembayaran, dan seperti yang kita ketahui di dalam table tersebut terdapat relasi ke table lain seperti table petugas, siswa, dan spp jadi nanti yang akan kita lakukan adalah Join ketiga table tersebut ke table pembayaran. Kemudian kita menampilkannya menggunakan sebuah perulangan while dengan kondisi menangkap seluruh data yang ada pada table Pembayaran. Kita juga menempatkan statement pengkondisian yang berfungsi jika Nominal yang Harus dibayar itu sama dengan Jumlah yang dibayarkan, script nya seperti ini ($r['jumlah_bayar'] == $r['nominal']){ Jika kondisi nya bernilai true maka Status yang akan tampil adalah LUNAS selain itu pastinya akan tampil BELUM LUNAS. Terus juga ada kondisi dimana jika Jumlah yang dibayarkan ini belum lunas maka akan terdapat sebuah tombol untuk mengupdate jumlah bayar tersebut bilamana siswa sudah membayar kekurangannya, update data tersebut kita lakukan dengan request method GET seperti pada dan proses nya seperti ini.

Proses pelunasan sisa pembayaran
Pertama, kita ambil data id_pembayaran melalui request method GET yang dikirimkan. Kurang lebih ada pada bagian ini 



Perhatikan lebih detail, link tersebut mengandung 2 request GET diantaranya $_GET[‘lunas’] dan $_GET[‘id’]

Selanjutnya kita proses data yang dikirimkan tersebut. Kita ambil data pembayaran berdasarkan id yang kita kirimkan tadi. Selanjutnya kita cari tau dulu Sisa yang harus dibayarkan dengan cara

Proses Sisa Pembayaran
Pertama kita buat variable sisa yang nilainya adalah nominal yang harus dibayar dikurangi dengan jumlah bayar. Lalu setelah itu kita jumlahkan jumlah bayar dengan sisa, baru kemudian kita update datanya.

Buat File tambah_transaksi.php

Kita buat tampilannya seperti ini

Tampilan Tambah Transaksi
Sekarang teman teman ketikkan script dibawah



Perhatikan lebih detail pada penggunaan tag form dan tag input. Dalam tag form terdapat attribute action yang artinya pemrosesan yang akan dilakukan ini nantinya dimana, jika pemrosesan itu disatukan maka kosongkan saja. Selanjutnya kita tambahkan attribute method, jadi kita menggunakan method POST untuk memproses data

Sekarang perhatikan bagian pemrosesannya. $_POST[‘petugas’]; perintah tersebut berisi sebuah data yang diinputkan pada name yang kita berikan pada tag select name=”petugas” nanti nilainya terdapat pada tag option value=”" tetapi yang kita tampilkan adalah Nama Petugasnya. Kemudian seluruh data yang kita input itu disimpan pada database dengan query INSERT INTO pembayaran VALUES(NULL, '$petugas', '$nama', '$tgl', '$bulan', '$tahun', '$spp', '$jumlah'). Penginputan data tersebut mengikuti urutan field yang ada pada table pembayaran. Kenapa ada NULL? Karena pada table pembayaran bagian id_pembayaran saya tambahkan AUTO INCREMENT, jadi nanti akan diisi otomatis.

Entry Transaksi Pembayaran
Nah bagian entry pembayaran kita sudah selesai. Untuk selanjutnya nanti kita akan membuat tampilan History Pembayaran, jadi nanti tampilan ini kita isi saja dengan kolom pencarian data berdasarkan setiap transaksi menggunakan NISN siswa. Jika pada script teman teman terdapat error, silahkan teman teman boleh komentar dibawah

Label: ,

Bagian 04: Membuat CRUD Data Siswa dan Join Table



Membuat CRUD Data Siswa – Setelah sebelumnya teman teman membuat sebuah menu navigasi yang berisikan statement kondisi jika level admin dan jika level petugas. Nah sekarang kita akan mulai mengisi konten kita atau menu menu kita yaa. Apa itu CRUD? CRUD ini adalah singkatan dari Create, Read, Update, and Delete, intinya adalah kita bisa memanipulasi database melalui satu tampilan ini. Contohnya seperti ini

Tampilan CRUD data Siswa

Seluruh table yang kita tampilkan ini merupakan data yang ada pada table. Karena kita akan membuat CRUD dari Data Siswa, Maka kita akan mengambil data dari table siswa. Sebelum mengisi konten konten kita, saya minta teman teman tambahkan 2 data ke seluruh table kita yang ada di databasenya karena kita akan melakukan testing apa data terpanggil atau tidak.

Sekarang kita mulai ngodingnya, teman teman jalankan terlebih dahulu Web Server nya dan teman teman buka code editornya

Tambahkan File require.php

Coding Require
Coding Require

Silahkan teman teman save dengan nama require.php
File require.php ini menyimpan sebuah sesi yang akan dijalankan pada setiap tampilan kita. Jadi nantinya jika pengguna aplikasi ini belum login, nanti akan di arahkan ke halaman login. Di dalam file ini juga kita memanggil sebuah koneksi ke database dengan require_once(“koneksi.php”);

Buat CRUD Siswa



Save dengan nama siswa.php!
Script yang teman teman ketikkan itu adalah sebuah tampilan yang berisi data data kita yang ada pada table Siswa. Jadi dibaris pertama kita memanggil require.php, melalui file ini kita membuat sebuah sesi dan kita juga memanggil database kita.

require_once(“require.php”);
?>

Lalu di bagian body, kita memanggil file header.php kita yang berisi menu navigasi dan juga pada bagian terbawah kita memanggil footer.php. Nantinya ini akan kita pakai disetiap konten kita ya


Kemudian kita membuat sebuah table yang nantinya ini akan kita isikan data menurut seluruh data yang ada pada table Siswa

Table yang kita buat berisikan 8 Kolom. Dan nantinya juga kita akan melakukan join table yahh. Apa sih join itu? Join itu merupakan query MySQLi yang berfungsi untuk menggabungkan table yang telah kita relasi ke table siswa ini. Table apa yang kita relasikan? Jelas Table kelas dengan nama Field nya adalah id_kelas. Karena kita tidak mungkin menampilkan sebuah ID kedalam table kita, jadi nanti kita akan menampilkan Nama Kelas dan Kompetensi Kejuruan yang terhubung dengan ID.

Di dalam tampilan tersebut kita membuat 3 aksi yaitu Tambah data yang ada pada atas table, Hapus dan Edit yang berada pada kolom table kita. Nanti kita akan fungsikan seluruh aksi tersebut. Pertama kita buat aksi hapus data, yang kita simpan scriptnya di paling bawah

Perhatikan link hapus yang kita buat

Link hapus

Link yang kita buat ini mengirimkan NISN dari data yang akan kita hapus
Kemudian kita menangkap data yang dikirimkan tersebut kedalam variable. Lalu kita langsung hapus data tersebut dari table

Proses hapus

Jika data berhasil dihapus maka akan diarahkan ke halaman siswa.php. Tetapi jika gagal kita buatkan sebuah javascript sederhana yang menampilkan ‘Maaf, data tersebut masih terhubung dengan data yang lain.

Buat Form Tambah Data Siswa

Ketikkan script berikut:




Teman teman save dengan nama tambah_siswa.php !

Kita membuat form input sederhana untuk menambah data siswa. Perhatikan pada bagian kelasnya, Karena id_kelas yang ada pada table siswa itu terhubung dengan id_kelas pada table kelas, jadi yang akan kita lakukan memilih data dari table kelas. Tapi disetiap option kita beri nilai id_kelas.

Option Kelas


Setelah itu kita lakukan pemrosesannya di bawah

Proses Tambah Siswa
Tampilan Tambah data Siswa

Buat Form Edit data Siswa


Teman teman save dengan nama edit_siswa.php!

Perhatikan dibaris awal. Kita menangkap data NISN dari url yang dikirimkan oleh halaman siswa.phpLalu kita ambil data dari database berdasarkan NISN yang kita tangkap

Menangkap data NISN

NISN yang telah kita tangkap akan dimasukkan kedalam form input dan akan kita 
sembunyikan. Karena NISN ini sebagai acuan untuk data yang akan kita ubah. Ini sama saja yaa dengan kita menghapus data.

Kemudian tombol simpan kita fungsikan

Proses Update Data

Tampilan Edit data Siswa
Baca Juga

Nah kita sudah selesai membuat CRUD data Siswa. Sekarang teman teman buat lagi CRUD yang lainnya menggunakan cara yang sama seperti tadi yaa.

Sekarang silahkan teman teman test apakah semua aksi yang telah kita buat berfungsi. Jika teman teman mengalami error silahkan simpan di komentar.

Label: ,