DASAR CRUD PHP MYSQL
Pada umumnya apabila kita membuat sistem yang menggunakan database, maka harus ada 4 bagian ini yaitu Create, Read, Update, Delete. Hal ini sudahlah wajib ! Di postingan sebelumnya (Cara Menampilkan Data Database Dengan PHP), saya sudah menjelaskan tentang 'Read' / Membaca data dari database dengan PHP.
Nah, pada kesempatan kali ini saya akan melanjutkan menjelaskan tentang bagaimana cara menambah data pada database.
Langkah-Langkah Untuk Menambah Data Dengan PHP
1. Siapkan XAMPP, Database, dan Koneksi.php
XAMPP, Database, dan Koneksi.php adalah hal yang wajib disiapkan sebelum kita membuat file PHP untuk menambah data ke tabel.
1.1. Pastikan Anda sudah menginstall XAMPP serta mengaktifkan 'apache' & 'mysql'
Sebelum kita menginstall, kita harus mendownload XAMPP terlebih dahulu. Anda bisa download disini :
Setelah Anda download, silahkan buka installer yang tadi kita download. Biasanya, saat kita membuka installer xampp, muncul peringatan seperti ini :
Lalu kita disuruh memasukan directory xampp kita. Kalo saya sih tetep install xampp di C:\XAMPP. Kalo Anda terserah.. :)
Jadi kalo sudah langsung klik next saja.
Jadi kalo sudah langsung klik next saja.
Setelah Anda selesai menginstall, Buka XAMPP Anda (Anda bisa membuka XAMPP di C:\xampp\xampp-control.exe).
Lalu, aktifkan fitur 'apache' dan 'mysql seperti pada gambar berikut.
Oke, apabila sudah, artinya kita sudah berhasil membuat server lokal sendiri yang akan kita gunakan untuk membuat database. Yuk lanjut ke 1.2.
1.2. Menyiapkan Database
Setelah xampp sudah siap, sekarang kita akan membuat databasenya dahulu. Pada contoh kali ini, saya akan menggunakan database rumah makan. Nah disini saya akan beri rancangan databasenya, seperti ini
Apabila Anda ingin mendownload database ini, saya sudah sediakan link nya. Berikut link download nya :
http://www.mediafire.com/file/mjrbe8iqgo7ghh0/rumahmakan_k67.sql
Silahkan import database tersebut dengan cara :
- Buka localhost/phpmyadmin
- Buat database baru dengan mengklik 'new'
- Lalu tulis nama database 'rumahmakan_k67', lalu klik create
- Masuk ke bagian import
- Lalu choose file dan scroll kebawah lalu klik 'go'
Tapi kalau Anda ingin menggunakan database Anda sendiri juga gakpapa, Silahkan menyesuaikan dengan code PHP yang akan saya buat nantinya. Oh iya, kalo Anda pake database Anda sendiri, jangan lupa isi data nya dulu pada setiap tabel ya...
1.3. Membuat Koneksi ke Database
Buat file dengan nama koneksi.php dan isi file tersebut dengan script berikut :
<?php
$user = "root";
$pass ="";
$db = "rumahmakan_k67";
$host = "localhost";
$kon = mysqli_connect($host, $user, $pass, $db) or die("Connection error" . mysqli_connect_error());
?>
Ingat, setiap Anda membuat file, pastikan file yang Anda buat, Anda simpan di folder :
C:\xampp\htdocs (Jika Anda menginstall xampp di C)
Atau agar lebih rapi Anda juga bisa membuat folder di htdocs seperti ini :
C:\xampp\htdocs\databasephp
2. Memberi Tombol 'Tambah' Pada Halaman Sebelumnya
Tombol 'tambah' ini berada pada halaman yang digunakan untuk menampilkan data. Saat tombol tambah ini di klik, maka akan mengarah ke form penambahan data.
Seperti apa sih tombol 'tambah' yang akan kita buat nanti ? Nih saya kasih contohnya :
Berikut adalah contohnya :
Udah ngerti kan sekarang ? Ok, lanjut !
Udah ngerti kan sekarang ? Ok, lanjut !
Apabila Anda sudah mengikuti tutorial sebelumnya yaitu : (LINK TUTORIAL SEBELUMNYA). Maka Anda pasti sudah membuat 6 file berikut :
1. index.php
2. lihat_pelanggan.php
3. lihat_karyawan.php
4. lihat_makanan.php
5. lihat_nota_penjualan.php
6. detail_nota.php
Nah, pada bagian ini kita hanya ingin mengedit file-file berikut :
1. lihat_pelanggan.php
2. lihat_karyawan.php
3. lihat_makanan.php
4. lihat_nota_penjualan.php
Kita akan menambahkan tombol 'Tambah' dengan code seperti ini :
<a href="form_tambah_(NAMA TABEL).php">Tambah (NAMA TABEL)</a>
Oke, yuk langsung saja !
2.1. Memberi Tombol 'Tambah' Pada Halaman lihat_pelanggan.php
Kita edit halaman lihat_pelanggan.php menjadi seperti ini :
<html>
<head>
</head>
<body>
<a href="form_tambah_pelanggan.php">Tambah Pelanggan</a>
<?php
include "koneksi.php";
$query = "select * from pelanggan";
$result = mysqli_query($kon, $query);
echo "<table>
<thead>
<th>ID Pelanggan</th>
<th>Nama</th>
<th>No HP</th>
</thead>
";
if($result) //artinya jika query berhasil dijalankan
{
while($row = mysqli_fetch_assoc($result))
{
//print_r($row);
//echo $row['nama'];
echo "<tr>";
echo "<td>" . $row['id_pelanggan'] . "</td>";
echo "<td>" . $row['nama'] . "</td>";
echo "<td>" . $row['nohp'] . "</td>";
echo "</tr>";
}
}
echo "</table>";
?>
</body>
</html>
2.2. Memberi Tombol 'Tambah' Pada Halaman lihat_karyawan.php
<html>
<head>
</head>
<body>
<a href="form_tambah_karyawan.php">Tambah Karyawan</a>
<?php
include "koneksi.php";
$query = "select * from karyawan";
$result = mysqli_query($kon, $query);
echo "<table>
<thead>
<th>ID Karyawan</th>
<th>Nama</th>
<th>Gaji</th>
</thead>
";
if($result) //artinya jika query berhasil dijalankan
{
while($row = mysqli_fetch_assoc($result))
{
//print_r($row);
//echo $row['nama'];
echo "<tr>";
echo "<td>" . $row['id_karyawan'] . "</td>";
echo "<td>" . $row['nama'] . "</td>";
echo "<td>" . $row['gaji'] . "</td>";
echo "</tr>";
}
}
echo "</table>";
?>
</body>
</html>
2.3. Memberi Tombol 'Tambah' Pada Halaman lihat_makanan.php
<html>
<head>
</head>
<body>
<a href="form_tambah_makanan.php">Tambah Makanan</a>
<?php
include "koneksi.php";
$query = "select * from makanan";
$result = mysqli_query($kon, $query);
echo "<table>
<thead>
<th>ID Makanan</th>
<th>Nama</th>
<th>Harga</th>
</thead>
";
if($result) //artinya jika query berhasil dijalankan
{
while($row = mysqli_fetch_assoc($result))
{
//print_r($row);
//echo $row['nama'];
echo "<tr>";
echo "<td>" . $row['id_makanan'] . "</td>";
echo "<td>" . $row['nama'] . "</td>";
echo "<td>" . $row['harga'] . "</td>";
echo "</tr>";
}
}
echo "</table>";
?>
</body>
</html>
2.4. Memberi Tombol 'Tambah' Pada Halaman lihat_nota_penjualan.php
<?php
include "koneksi.php";
$query = "select nota_penjualan.id_nota,
concat(concat(nota_penjualan.id_pelanggan,' - '), pelanggan.nama) as idpelanggan,
concat(concat(nota_penjualan.id_karyawan, ' - '), karyawan.nama) as idkaryawan,
nota_penjualan.waktu_pesan,
nota_penjualan.total
from nota_penjualan, pelanggan, karyawan
WHERE nota_penjualan.id_pelanggan = pelanggan.id_pelanggan
AND nota_penjualan.id_karyawan = karyawan.id_karyawan";
$result = mysqli_query($kon, $query);
echo "<a href='form_tambah_nota_penjualan.php'>Tambah Nota</a>";
echo "<table>
<thead>
<th>ID Nota</th>
<th>ID Pelanggan</th>
<th>ID Karyawan</th>
<th>Waktu Pesan</th>
<th>Total</th>
</thead>
";
if($result) //artinya jika query berhasil dijalankan
{
while($row = mysqli_fetch_assoc($result))
{
//print_r($row);
//echo $row['nama'];
echo "<tr>";
echo "<td>" . $row['id_nota'] . "</td>";
echo "<td>" . $row['idpelanggan'] . "</td>";
echo "<td>" . $row['idkaryawan'] . "</td>";
echo "<td>" . $row['waktu_pesan'] . "</td>";
echo "<td>" . $row['total'] . "</td>";
echo "<td><a href='detail_nota.php?id=" . $row['id_nota'] . "'>Lihat Detail Nota</a></td>";
echo "</tr>";
}
}
echo "</table>";
?>
3. Membuat File PHP Untuk Menambah Data
Saatnya kita membuat file PHP untuk menambah data dari form yang kita buat lalu memasukannya kedalam tabel pada database.
3.1. Cara Membuat File PHP Untuk Menambah Data Tabel 'pelanggan'
(1) Buat file bernama form_tambah_pelanggan.php dan isi file tersebut dengan script berikut :
<!DOCTYPE html>
<html>
<head>
<title></title>
</head>
<body>
<form method="POST" action="sql_tambah_pelanggan.php">
<label>Nama : </label><input type="text" name="input_nama"/>
<br>
<label>No. HP : </label><input type="text" name="input_nohp"/>
<br>
<input type="submit" name="btn_simpan" value="Simpan">
</form>
</body>
</html>
(2) Buat file bernama sql_tambah_pelanggan.php dan isi file tersebut dengan script berikut :
<?php
include "koneksi.php";
$nama = $_POST['input_nama'];
$nohp = $_POST['input_nohp'];
$query = "insert into pelanggan values('','$nama', '$nohp')";
$result = mysqli_query($kon, $query);
if($result)
{
header('location:lihat_pelanggan.php');
}
else
{
echo "data tidak berhaisl ditambahkan, error : " . mysqli_error($kon);
}
?>
Tampilannya akan seperti ini :
Lalu kita klik 'Simpan' dan bisa dilihat bahwa data tersebut sudah masuk kedalam tabel :
Untuk penjelasan code, silahkan lihat pada video di akhir artikel ini. Namun, saya jelaskan intinya saja disini. Tadi kita membuat form tambah pelanggan, lalu setelah kita klik simpan, maka akan menuju ke sql_tambah_pelanggan.php.
sql_tambah_pelanggan.php ini berfungsi untuk menjalankan query insert agar data yang tadi kita masukan bisa masuk ke tabel pelanggan. Ok, untuk lebih jelas silahkan lihat videonya saja :D
3.2. Cara Membuat File PHP Untuk Menambah Data Tabel 'karyawan'
<!DOCTYPE html>
<html>
<head>
<title></title>
</head>
<body>
<form method="POST" action="sql_tambah_karyawan.php">
<label>Nama : </label><input type="text" name="input_nama"/>
<br>
<label>Gaji : </label><input type="text" name="input_gaji"/>
<br>
<input type="submit" name="btn_simpan" value="Simpan">
</form>
</body>
</html>
(2) Buat file bernama sql_tambah_karyawan.php dan isi file tersebut dengan script berikut :
<?php
include "koneksi.php";
$nama = $_POST['input_nama'];
$gaji = $_POST['input_gaji'];
$query = "insert into karyawan values('','$nama', '$gaji')";
$result = mysqli_query($kon, $query);
if($result)
{
header('location:lihat_karyawan.php');
}
else
{
echo "data tidak berhaisl ditambahkan, error : " . mysqli_error($kon);
}
?>
Tampilannya akan seperti ini :
Lalu kita klik 'Simpan' dan bisa dilihat bahwa data tersebut sudah masuk kedalam tabel :
Code yang kita tulis diatas, prinsipnya sama seperti code untuk menambah pelanggan. Hanya bedanya, kita menginsert ke tabel yang berbeda yaitu tabel karyawan.
3.3. Cara Membuat File PHP Untuk Menambah Data Tabel 'makanan'
<!DOCTYPE html>
<html>
<head>
<title></title>
</head>
<body>
<form method="POST" action="sql_tambah_makanan.php">
<label>Nama : </label><input type="text" name="input_nama"/>
<br>
<label>Harga : </label><input type="number" name="input_harga"/>
<br>
<input type="submit" name="btn_simpan" value="Simpan">
</form>
</body>
</html>
(2) Buat file bernama sql_tambah_makanan.php dan isi file tersebut dengan script berikut :
<?php
include "koneksi.php";
$nama = $_POST['input_nama'];
$harga = $_POST['input_harga'];
$query = "insert into makanan values('','$nama', '$harga')";
$result = mysqli_query($kon, $query);
if($result)
{
header('location:lihat_makanan.php');
}
else
{
echo "data tidak berhaisl ditambahkan, error : " . mysqli_error($kon);
}
?>
Tampilannya akan seperti ini :
3.4. Cara Membuat File PHP Untuk Menambah Data Tabel 'nota_penjualan'
(1) Buat file bernama form_tambah_nota_penjualan.php dan isi file tersebut dengan script berikut :
Tampilannya akan seperti ini :
Lalu kita klik 'Simpan' dan bisa dilihat bahwa data tersebut sudah masuk kedalam tabel :
Coba kita klik 'Lihat Detail Nota', maka terlihat bahwa makanan yang dipesan oleh nota tersebut juga sudah disimpan.
Untuk penjelasan code diatas, Anda bisa lihat pada video diakhir artikel ini. Karena di video tersebut akan dijelaskan sangat detail tentang code yang kita tulis tadi.
Intinya, tadi kita membuat form untuk menambah nota baru. Ingat, saat kita membuat nota baru, kita juga harus memasukan daftar makanan yang dipesan oleh nota tersebut. Maka dari itu saya bikin form untuk menambah nota sekaligus untuk daftar makanan yang dipesan.
Setelah form jadi, kita membuat file PHP untuk menjalankan beberapa query mysql. Berikut langkah-langkahnya :
1. Tambah data ke nota_penjualan tanpa disertai total
Pada langkah pertama, kita menjalankan query insert untuk menambah data ke tabel nota_penjualan. Namun pada langkah ini, kita tidak perlu menghitung total. Jadi tulis saja total nya 0.
2. Isi rincian makanan pada tabel rincian dengan nota baru yang sudah dibuat
Saat kita mengisi rincian, tentu kita juga harus memasukan id nota. Maka dari itulah di langkah 1 tadi, kita langsung membuat nota baru. Nah setelah kita membuat nota baru, kita kan dapat id nota yang baru tadi, id nota yang baru itu akan digunakan untuk mengisi rincian. Selain id nota yang baru, kita juga mengisi rincian dengan makanan yang diisi pada form tambah nota taid.
3. Menghitung Total
Pada langkah ini, kita akan menghitung total biaya makanan yang dipesan.
4. Update nota baru tadi dengan total yang sudah dihitung
Nah setelah kita menghitung total, sekarang kita akan mengupdate nota baru tadi dengan total yang sudah dihitung.
Ngerti gak ? Kalo gak ngerti, tonton video diakhir video ini :D penjelasannya lebih lengkap, detail, dan disertai animasi.
<!DOCTYPE html>
<html>
<head>
<title>tambah nota</title>
<?php
include "koneksi.php";
?>
</head>
<body>
<form action="sql_tambah_nota_penjualan.php" method="POST">
<label>Pilih Pelanggan</label>
<select name='pilihpelanggan'>
<?php
$query1 = "select * from pelanggan";
$result1 = mysqli_query($kon, $query1);
while($row = mysqli_fetch_assoc($result1))
{
$idpelanggan = $row['id_pelanggan'];
$namapelanggan = $row['nama'];
echo "<option value='$idpelanggan'>$idpelanggan - $namapelanggan </option>";
}
?>
</select>
<br>
<label>Pilih Karyawan</label>
<select name='pilihkaryawan'>
<?php
$query2 = "select * from karyawan";
$result2 = mysqli_query($kon, $query2);
while($row = mysqli_fetch_assoc($result2))
{
$idkaryawan = $row['id_karyawan'];
$namakaryawan = $row['nama'];
echo "<option value='$idkaryawan'>$idkaryawan - $namakaryawan </option>";
}
?>
</select>
<br>
<label>Pilih waktu</label>
<input type="datetime-local" name="input_waktu_pesan"/>
<br>
<br>
<label> PILIH MAKANAN </label>
<table>
<thead><th>ID Makanan</th><th>Makanan</th><th>Harga</th><th>Kuantitas</th></thead>
<?php
$query3 = "select * from makanan";
$result3 = mysqli_query($kon, $query3);
while($row = mysqli_fetch_assoc($result3))
{
$idmakanan = $row['id_makanan'];
$nama = $row['nama'];
$harga = $row['harga'];
echo "<tr>";
echo "<td>$idmakanan</td>";
echo "<td>$nama</td>";
echo "<td>$harga</td>";
echo "<td><input type='number' name='kuantitas[]' value='0'></td>";
echo "</tr>";
}
?>
</table>
<input type='submit' value='simpan'/>
</form>
</body>
</html>
(2) Buat file bernama sql_tambah_nota_penjualan.php dan isi file tersebut dengan script berikut :
<?php
include "koneksi.php";
$id_pelanggan = $_POST['pilihpelanggan'];
$id_karyawan = $_POST['pilihkaryawan'];
$waktu = $_POST['input_waktu_pesan'];
//ubah format waktu HTML ke format waktu DATABASE
$waktu = date('Y-m-d H:i:s', strtotime($waktu));
$id_nota_baru = 0;
$totalbiaya = 0;
//LANGKAH 1 : Tambah data ke nota_penjualan tanpa disertai 'total'(total biaya)
$query1 = "insert into nota_penjualan VALUES('', '$id_pelanggan', '$id_karyawan', '$waktu', '$totalbiaya')";
$result1 = mysqli_query($kon, $query1);
//CARI ID NOTA YANG BARUSAN KITA BUAT
$query2 = "select max(id_nota) as idmax from nota_penjualan";
$result2 = mysqli_query($kon, $query2);
$row = mysqli_fetch_assoc($result2);
$id_nota_baru = $row['idmax'];
//LANGKAH 2 : isi rincian makanan pada tabel rincian dengan nota baru yang sudah dibuat tadi.
$query3 = "select * from makanan";
$result3 = mysqli_query($kon, $query3);
$counter = 0;
//mengecek di setiap makanan
while($row = mysqli_fetch_assoc($result3))
{
$kuantitas_makanan_ini = $_POST['kuantitas'][$counter];
//JIKA KUANTITAS MAKANAN YANG KITA ISI TADI TIDAK 0, MAKA MASUKAN KE TABEL RINCIAN
if($kuantitas_makanan_ini != 0)
{
$id_makanan_ini = $row['id_makanan'];
$harga_makanan_ini = $row['harga'];
$query4 = "insert into rincian VALUES('', '$id_nota_baru', '$id_makanan_ini', '$kuantitas_makanan_ini')";
$result4 = mysqli_query($kon, $query4);
//LANGKAH 3 : Hitung 'total' (total biaya)
$totalbiaya += ($harga_makanan_ini * $kuantitas_makanan_ini);
}
$counter += 1;
}
//LANGKAH 4 : Update nota baru tadi dengan total yang sudah dihitung.
$query5 = "UPDATE nota_penjualan set total='$totalbiaya' WHERE id_nota='$id_nota_baru'" ;
$result5 = mysqli_query($kon, $query5);
header('location:lihat_nota_penjualan.php');
?>
Tampilannya akan seperti ini :
Lalu kita klik 'Simpan' dan bisa dilihat bahwa data tersebut sudah masuk kedalam tabel :
Coba kita klik 'Lihat Detail Nota', maka terlihat bahwa makanan yang dipesan oleh nota tersebut juga sudah disimpan.
Untuk penjelasan code diatas, Anda bisa lihat pada video diakhir artikel ini. Karena di video tersebut akan dijelaskan sangat detail tentang code yang kita tulis tadi.
Intinya, tadi kita membuat form untuk menambah nota baru. Ingat, saat kita membuat nota baru, kita juga harus memasukan daftar makanan yang dipesan oleh nota tersebut. Maka dari itu saya bikin form untuk menambah nota sekaligus untuk daftar makanan yang dipesan.
Setelah form jadi, kita membuat file PHP untuk menjalankan beberapa query mysql. Berikut langkah-langkahnya :
1. Tambah data ke nota_penjualan tanpa disertai total
Pada langkah pertama, kita menjalankan query insert untuk menambah data ke tabel nota_penjualan. Namun pada langkah ini, kita tidak perlu menghitung total. Jadi tulis saja total nya 0.
2. Isi rincian makanan pada tabel rincian dengan nota baru yang sudah dibuat
Saat kita mengisi rincian, tentu kita juga harus memasukan id nota. Maka dari itulah di langkah 1 tadi, kita langsung membuat nota baru. Nah setelah kita membuat nota baru, kita kan dapat id nota yang baru tadi, id nota yang baru itu akan digunakan untuk mengisi rincian. Selain id nota yang baru, kita juga mengisi rincian dengan makanan yang diisi pada form tambah nota taid.
3. Menghitung Total
Pada langkah ini, kita akan menghitung total biaya makanan yang dipesan.
4. Update nota baru tadi dengan total yang sudah dihitung
Nah setelah kita menghitung total, sekarang kita akan mengupdate nota baru tadi dengan total yang sudah dihitung.
Ngerti gak ? Kalo gak ngerti, tonton video diakhir video ini :D penjelasannya lebih lengkap, detail, dan disertai animasi.
4. Selesai & Kesimpulan
Selesai ! Kita sudah berhasil membuat file PHP untuk menambah data ke database !
1. Buat tombol 'Tambah'
2. Buat form pengisian data
3. Buat file PHP untuk memasukan data ke database
Pada umumnya, 3 langkah tersebut pasti dilakukan saat kita ingin menambah data. Namun 3 langkah tersebut bukan sebuah aturan yang harus kita ikuti terus. Itu hanyalah langkah dasar untuk menambah data dengan PHP.
Pada kasus-kassus tertentu, kita bisa menyesuaikan sendiri bagaimana cara paling efektif untuk menambah data dengan PHP. Kasus diatas (menambah nota_penjualan dan rincian) itu hanyalah salah satu contoh kasus diantara jutaan kasus didunia. Masih banyak cara untuk menambah data dengan PHP. Namun disini saya hanya mengajarkan hal yang paling umum dan mendasar untuk menambah data dengan PHP
5. Video Penjelasan
Ingin tau penjelasan lengkap dari semua code yang kita buat diatas ? Yuk tonton video penjelasan berikut !
Part 1
Part 2
6. Link Download File PHP
Download file-file PHP yang tdai kita buat.
Nah, bagi Anda yang ingin belajar lebih jelas, file-file PHP yang sudah saya buat tadi akan saya upload ke mediafire (karena mediafire tidak terlalu banyak iklan sehingga memudahkan Anda dalam mendownload).
7. Next Tutorial : Cara Mengedit/Mengganti Data Database Dengan PHP
Setelah kita bisa menambah data, sekarang kita juga harus bisa mengedit data tersebut. Bagaimana caranya ? Yuk kita ikuti tutorial selanjutnya !
Cara Mengedit/Mengganti Data Database Dengan PHP
Cara Mengedit/Mengganti Data Database Dengan PHP
0 komentar :
Post a Comment