Pertemuan 3 :
Menambah Data Dengan Koneksi Mysqli
Setelah membuat tampil database, pada materi sebelumnya, selanjutnya kita akan
belajar untuk menambahkan data dari database MySQL menggunakan MySQLi.
Menambah data ini dilakukan pada form tampilan di web nya
Berikut langkah-langkahnya :
Pada fitur tambah ini nantinya kita akan membuat form dimana ketika formnya diisi dan tombol
submit di klik, maka datanya akan disimpan di database, langkah awal kita mulai dari
menambahkan tombol tambah di bagian tabel tampil data, agar ketika di klik akan menampilkan
form untuk tambah data :
1 <?php
2 include('koneksi.php');
3 $db = new database();
4 $data_barang = $db->tampil_data();
5 ?>
6 <!DOCTYPE html>
7 <html>
8 <head>
9 <title></title>
10 </head>
11 <body>
12 <a href="tambah_data.php">Tambah Data</a>
13 <table border="1">
14 <tr>
15 <th>No</th>
16 <th>Barang</th>
17 <th>Stok</th>
18 <th>Harga Beli</th>
19 <th>Harga Jual</th>
20 <th>Action</th>
21 </tr>
22 <?php
23 $no = 1;
24 foreach($data_barang as $row){
25 ?>
26 <tr>
27 <td><?php echo $no++; ?></td>
28 <td><?php echo $row['nama_barang']; ?></td>
29 <td><?php echo $row['stok']; ?></td>
<td><?php echo $row['harga_beli']; ?></td>
30
<td><?php echo $row['harga_jual']; ?></td>
31
<td>
32
<a href="edit.php?id=<?php echo $row['id_barang']; ?>">Update</a>
33
<a href="hapus.php?id=<?php echo $row['id_barang']; ?>">Delete</a>
34
</td>
35
</tr>
36
<?php
37
}
38
?>
39
</table>
40
</body>
41
</html>
42
Keterangan :
Perhatikan pada line 12 kita menambahkan code
Berikutnya kita membuat file dengan nama tambah_data.php yang berisi form untuk menambah
data, untuk isi skrip tambah_data.php berikut ini :
1 <!DOCTYPE html>
2 <html>
3 <head>
4 <title></title>
5 </head>
6 <body>
7 <h3>Tambah Data Barang</h3>
8 <hr/>
9 <form method="post" action="proses_barang.php?action=add">
10 <table>
11 <tr>
12 <td>Nama Barang</td>
13 <td>:</td>
14 <td><input type="text" name="nama_barang"/></td>
15 </tr>
16 <tr>
17 <td>Stok</td>
18 <td>:</td>
19 <td><input type="text" name="stok"/></td>
20 </tr>
21 <tr>
22 <td>Harga Beli</td>
23 <td>:</td>
24 <td><input type="text" name="harga_beli"/></td>
25 </tr>
26 <tr>
27 <td>Harga Jual</td>
28 <td>:</td>
<td><input type="text" name="harga_jual"/></td>
29
</tr>
30
<tr>
31
<td></td>
32
<td></td>
33
<td><input type="submit" name="tombol" value="Simpan"/></td>
34
</tr>
35
</table>
36
</form>
37
</body>
38
</html>
39
Keterangan :
Formnya kita kolaborasikan dengan table, agar tampilan tabel lebih tertata, Yang perlu kita
perhatikan adalah di Line 9, kita menuliskan :
Berikutnya kita akan membuat file dengan nama proses_barang.php file ini digunakan untuk
memproses inputan form, isi dari code file proses_barang.php adalah :
1 <?php
2 include('koneksi.php');
3 $koneksi = new database();
4
$action = $_GET['action'];
5
if($action == "add")
6
{
7 $koneksi->tambah_data($_POST['nama_barang'],$_POST['stok'],$_POST['harga_beli'],
8 $_POST['harga_jual']);
9 header('location:tampil_data.php');
10 }
11 ?>
Keterangan :
Line 2 kita include file koneksi.php yang sebelumnya telah kita buat, dimana didalamnya berisi
class database
Line 3 kita buat object $koneksi dengan class database
1 include('koneksi.php');
2 $koneksi = new database();
Line 5 kita membuat variabel $action untuk menyimpan nilai dari variabel action dengan method
GET
1 $action = $_GET['action'];
Line 6 kita melakukan pengecekan dari nilai $action yang berisi nilai dari variabel action dengan
method GET, jika nilai dari $action adalah add maka akan memproses pada line 8 – 9
1 if($action == "add")
2 {
3 $koneksi->tambah_data($_POST['nama_barang'],$_POST['stok'],$_POST['harga_beli'],$_POST['harga_jual']);
4 header('location:tampil_data.php');
5 }
Perhatikan pada file tambah_data.php pada attribute action kita menuliskan proses_barang.php?
action=add, perintah itu akan memanggil file proses_barang.php dengan mengirimkan parameter
action dengan method get yang bernilai add, perintah itu yang membuat variabel $action (Line 5
File proses_barang.php) bernilai add.
Pada Line 8 kita mengakses method tambah_data dengan menggunakan object $koneksi,
method tambah_data kita memberikan 4 parameter yaitu :
$_POST[‘nama_barang’] = adalah nilai dari form dengan name nama_barang, disini
menggunakan method post, karena form tambah_data menggunakan method post
$_POST[‘stok’] = adalah nilai dari form dengan name stok
$_POST[‘harga_beli’] = adalah nilai dari form dengan name harga_beli
$_POST[‘harga_jual’] = adalah nilai dari form dengan name harga_jual
1 header('location:tampil_data.php');
yang digunakan untuk redirect / mengakses file tampil_data.php, sehingga ketika sudah
memasukkan data kedatabase, maka akan diredirect ke file tampil_data.php
Ubah class database di file koneksi.php
Berikutnya kita akan menambahkan function tambah_data di class database, untuk codenya
sebagai berikut :
<?php
class database{
var $host = "localhost";
var $username = "root";
var $password = "";
var $database = "db_warungbelajar";
var $koneksi = "";
function __construct(){
$this->koneksi = mysqli_connect($this->host, $this->username, $this->password,$this->database);
if (mysqli_connect_errno()){
echo "Koneksi database gagal : " . mysqli_connect_error();
}
}
function tampil_data()
{
$data = mysqli_query($this->koneksi,"select * from tb_barang");
while($row = mysqli_fetch_array($data)){
$hasil[] = $row;
}
return $hasil;
}
function tambah_data($nama_barang,$stok,$harga_beli,$harga_jual)
{
mysqli_query($this->koneksi,"insert into tb_barang values
('','$nama_barang','$stok','$harga_beli','$harga_jual')");
}
}
?>
Perhatikan pada line 25 – 28 kita menambahkan function tambah_data
function tambah_data($nama_barang,$stok,$harga_beli,$harga_jual)
{
mysqli_query($this->koneksi,"insert into tb_barang values
('','$nama_barang','$stok','$harga_beli','$harga_jual')");
}
Pada function tambah_data kita buat 4 paremeter seperti yang ada pada file proses_barang.php
di line 8, karena function tambah_data ini akan menangkap data inputan form saat method
tambah_data ini diakses di proses_barang.php di line 8.
Perhatikan karena urutan pertama yaitu id_barang dan bersifat AUTO_INCREMENT, karena itu
dibagian values untuk yang pertama kita kosongkan, karena nilainya akan otomatis diisi oleh
MySQL, dan urutan berikutnya mengikuti urutan kolom pada tabel tb_barang.
Berikutnya kita coba untuk mengakses form, kita mengakses file tambah_data.php
Semisal kita input data di form tersebut,, lalu klik tombol simpan
Maka datanya akan bertambah dan ditampikan di bagian tabel di file tampil_data.php pada
minggu kemarin