Minggu, 12 Mei 2019

Membuat Upload File Dengan PHP Dan MySQL


Membuat Upload File Dengan PHP Dan MySQL



Membuat Upload File Dengan PHP Dan MySQL – Upload file adalah salah satu yang terpenting di dalam membuat aplikasi. khususnya aplikasi berbasis web. karena terkadang kita di haruskan membuat upload file, bisa itu fitur upload file laporan, atau mungkin upload file gambar seperti pada facebook contoh nya. di facebook terdapat fitur untuk mengupload gambar untuk di jadikan foto profil. dan contoh aplikasi lain yang harus ada fitur upload file nya adalah aplikasi manajemen arsip. contoh nya manajemen arsip kantor. di mana data-data pdf atau document lainnya bisa di upload untuk di arsipkan.
Pada tutorial kali ini saya akan share tutorial cara Membuat Upload File Dengan PHP Dan MySQL. dan menyimpan data gambar nya ke database. di tutorial ini kita akan belajar tentang cara membuat upload file dengan php. dan kemudian nama dari file tersebut akan kita simpan pada database.

Persiapan Membuat Upload File Dengan PHP

Untuk persiapan nya. apa-apa saja yang harus teman-teman buat adalah sebagai berikut. buat lah:
  • index.php
  • aksi.php
  • koneksi.php
  • folder bernama file


Akan saya jelaskan sedikit kegunaan-kegunaan dari file-file yang telah di buat di atas. pada file index.php kita akan membuat form upload file gambar nya. pada file aksi.php kita akan membuat pemproses dari  form upload file. jadi file yang di upload dari index.php akan di proses di file aksi.php. kemudian pada file koneksi.php kita akan membuat koneksi database php dan mysql. baca tutorial sebelumnya. lalu yang terakhir folder yang bernama file akan kita gunakan sebagai folder yang menyimpan file gambar yang di upload. jadi file gambar yang di upload akan tersimpan ke folder file ini.
Berikut programnya
//koneksi.php
<?php
    mysql_connect("localhost", "root", "");
    mysql_select_db("uploadimg");
?>

//index.php
<h1>Mengapload file dengan php</h1>

<form action="aksi.php" method="post" enctype="multipart/form-data">
    <input type="file" name="file">
    <input type="submit" name="upload" value="Upload">
</form>

//aksi.php
<h1>Membuat Upload file dengan php</h1>
<?php
    include 'koneksi.php';
    if($_POST['upload']){
        $ekstensi_diperbolehkan = array ('png', 'jpg');
        $nama = $_FILES['file']['name'];
        $x = explode ('.', $nama);
        $ekstensi = strtolower(end($x));
        $ukuran = $_FILES['file']['size'];
        $file_tmp = $_FILES['file']['tmp_name'];

        if(in_array($ekstensi, $ekstensi_diperbolehkan)==true){
            if($ukuran < 1044070){
                move_uploaded_file($file_tmp, 'file/'.$nama);
                $query = mysql_query("INSERT INTO upload VALUES(NULL, '$nama')");
                if($query){
                    echo "FILE BERHASIL DI UPLOAD";
                }
                else{
                    echo "GAGAL UPLOAD GAMBAR";
                }
            }
            else{
                echo "UKURAN TERLALLU BESAR";
            }
        }
        else{
            echo "EKSTENSI TERLALLU BESAR";
        }
           
    }
?>

<br/>
<br/>
<a href="index.php">Upload Lagi</a>
<br/>
<br/>

<table>
    <?php
        $data = mysql_query("select * from upload");
        while ($d = mysql_fetch_array($data)){
        ?>
        <tr>
            <td>
                <img src="<?php echo "file/".$d['nama_file']; ?>">
            </td>
        </tr>
        <?php } ?>
</table>

Database
-- phpMyAdmin SQL Dump
-- version 3.2.0.1
-- http://www.phpmyadmin.net
--
-- Host: localhost
-- Generation Time: May 07, 2019 at 01:05 PM
-- Server version: 5.1.37
-- PHP Version: 5.3.0

SET SQL_MODE="NO_AUTO_VALUE_ON_ZERO";

/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
/*!40101 SET NAMES utf8 */;

--
-- Database: `uploadimg`
--

-- --------------------------------------------------------

--
-- Table structure for table `upload`
--

CREATE TABLE IF NOT EXISTS `upload` (
  `id_file` int(11) NOT NULL AUTO_INCREMENT,
  `nama_file` varchar(100) NOT NULL,
  PRIMARY KEY (`id_file`)
) ENGINE=MyISAM  DEFAULT CHARSET=latin1 AUTO_INCREMENT=7 ;

--
-- Dumping data for table `upload`
--

INSERT INTO `upload` (`id_file`, `nama_file`) VALUES
(6, '1.PNG');

/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;
/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;
/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;

Hasil
1.   Form Upload


2.   Hasil Upload


Update Data dengan PHP - MySQL

Update Data dengan PHP - MySQL

Proses  update  suatu  data  dengan  menggunakan  script  PHP  dan  MySQL  biasanya memiliki mekanisme sebagai berikut:

1.    Tampilkan list data terlebih dahulu
2.    Buat  sebuah  link  pada  setiap  baris  data  yang  menuju  proses  update.  Link tersebut memuat sebuah parameter yang di dalamnya terdapat value yang nantinya digunakan sebagai acuan dalam proses update datanya.

3.    Selanjutnya  bila  link  tersebut  diklik  akan  muncul  form  berisi  data  yang  akan diedit.

Dalam  melakukan  proses  update  data,  pada  prinsipnya  adalah  menjalankan  query update pada SQL nya.

UPDATE namaTabel SET namafield = value WHERE …

Baiklah… kita langsung saja mempraktekkan proses update data. Sebagai contoh, kita akan mengupdate data mahasiswa, dimana tabel untuk menyimpan data mahasiswanya berbentuk seperti di bawah ini

nim nama alamat sex tgllahir

varchar(5) varchar(30) text varchar(1) date

primary key

Sebagai contoh misalkan kita telah mempunyai data awal sebagai berikut
NIM
NAMA
ALAMAT
SEX
TGLLAHIR
M0001
A
SOLO
L
1979-10-20
M0002
B
JAKARTA
L
1982-09-10
M0003
C
BANDUNG
P
1980-11-07

Catatan:  Untuk  membuat  data  awal  Anda  bisa  mengisikannya  langsung  ke  MySQL
dengan phpMyAdmin atau membuat script PHP untuk memasukkan datanya.

Sesuai  dengan  mekanisme  di  atas,  maka  langkah  pertama  kita buat  terlebih  dahulu script untuk menampilkan list datanya. Dalam script list ini, data akan disajikan dalam bentuk  tabel  dengan  6  buah  kolom.  Lima  kolom  pertama  untuk  menampilkan semua fieldnya, sedangkan kolom ke-6 untuk meletakkan link untuk editnya.

list.php

<?php

mysql_connect("localhost", "root", "root");
mysql_select_db("data");

// query SQL untuk memunculkan semua mahasiswa

$query = "SELECT * FROM mhs";
$hasil = mysql_query($query);
echo "<table border='1'>";
echo "<tr><td>NIM</td>
<td>Nama Mahasiswa</td>
<td>Alamat</td>
<td>Sex</td>
<td>Tgl Lahir</td>
<td>Action</td></tr>";
while ($data = mysql_fetch_array($hasil))
{
echo "<tr><td>".$data['nim']."</td>
<td>".$data['nama']."</td>
<td>".$data['alamat']."</td>
<td>".$data['sex']."</td>
<td>".$data['tgllahir']."</td>
<td>Edit</td></tr>";
}
echo "</table>";
?>

Hasil dari script di atas akan menghasilkan tampilan sebagai berikut:


Selanjutnya, bagaimana bentuk link editnya? Link edit misalkan kita buat sebagai berikut http://.../edit.php?nim=...
Dalam  link  edit  di  atas,  link  akan  diarahkan  ke  script  edit.php  yang  nantinya  akan memunculkan   form   untuk   keperluan   edit   data.   Di   dalam   link   tersebut   terdapa parameter  nim  yang  nantinya  digunakan  sebagai  acuan  mahasiswa  manakah  yang datanya akan diedit. Sebagai contoh, misalkan akan diedit mahasiswa bernim ‘M0001 maka linknya akan berbentuk

http://.../edit.php?nim=M0001
OK..  sekarang  kita  modifikasi  sedikit  script  list.php editnya.di  atas  untuk  memunculkan  link

list.php

<?php

mysql_connect("localhost", "root", "root");
mysql_select_db("data");

// query SQL untuk memunculkan semua mahasiswa


$query = "SELECT * FROM mhs";
$hasil = mysql_query($query);
echo "<table border='1'>";
echo "<tr><td>NIM</td>
<td>Nama Mahasiswa</td>
<td>Alamat</td>
<td>Sex</td>
<td>Tgl Lahir</td>
<td>Action</td></tr>";
while ($data = mysql_fetch_array($hasil))
{
echo "<tr><td>".$data['nim']."</td>

<td>".$data['nama']."</td>
<td>".$data['alamat']."</td>
<td>".$data['sex']."</td>
<td>".$data['tgllahir']."</td>
<td><a href='edit.php?nim=".$data['nim']."'>Edit</a></td></tr>";
}
echo "</table>";
?>


Langkah selanjutnya kita buat script edit.php yang nantinya akan memunculkan form edit  sekaligus  data  mahasiswa  yang  akan  diedit.  Mungkin  yang  menjadi  pertanyaan adalah bagaimana cara memunculkan data mahasiswa yang akan diedit? Ya… jawabnya adalah dengan menggunakan query SELECT dengan nim sebagai syaratnya. Dalam hal in nim yang ada dalam link edit lah yang nantinya akan digunakan sebagai syarat.

SELECT * FROM mhs WHERE nim = …;

OK… berikut ini adalah script edit.php untuk memunculkan form dan data yang akan diedit.

edit.php

<?php

mysql_connect("localhost", "root", "root");
mysql_select_db("data");

$nim = $_GET['nim'];

$query = "SELECT * FROM mhs WHERE nim = '$nim'";
$hasil = mysql_query($query);
$data  = mysql_fetch_array($hasil);

echo "<form method='post' action='update.php'>";
echo "<table>";
echo "<tr><td>NIM</td><td>:</td>
<td><input type='text' name='nim' value='".$data['nim']."'></td></tr>";
echo "<tr><td>Nama Mahasiswa</td><td>:</td>
<td><input type='text' name='nama' value='".$data['nama']."'></td></tr>";
echo "<tr><td>Alamat</td><td>:</td>
<td><textarea name='alamat'>".$data['alamat']."</textarea></td></tr>";
echo "<tr><td>Sex</td><td>:</td>
<td><input type='radio' name='sex' value='L'> Laki-Laki







<input type='radio' name='sex' value='P'> Perempuan</td></tr>";
echo "<tr><td>Tgl Lahir</td><td>:</td><td>
<select name='tgl'>";
for ($i=1; $i<=31; $i++)
{
echo "<option value='".$i."'>".$i."</option>";
}
echo "</select>
<select name='bln'>";
for ($i=1; $i<=12; $i++)
{
echo "<option value='".$i."'>".$i."</option>";
}
echo "</select>
<select name='thn'>";
for ($i=1980; $i<=1997; $i++)
{
echo "<option value='".$i."'>".$i."</option>";
}
echo "</select>
</td></tr>";
echo "</table>";
echo "<input type='submit' name='submit' value='Submit'>";
echo "</form>";

?>


Catatan:

Untuk keperluan edit data nim, script di atas menggunakan komponen textbox. Demikian pula edit data nama mahasiswa.
Sedangkan untuk alamat, script di atas menggunakan komponen textarea. Untuk edit jenis kelamin, kita menggunakan komponen radiobutton
Untuk edit tanggal lahir mahasiswa, kita menggunakan 3 komponen combobox
yang  masing-masing  digunakan  untuk  tanggal,  bulan  dan  tahun.  Option  dari masing-masing combobox digenerate otomatis dengan looping FOR.

Hasil  tampilan  dari  script  di  atas  ketika  digunakan  untuk  mengedit  data  mahasiswa bernim ‘M0001’ adalah



Bila kita perhatikan tampilan script edit di atas, maka untuk edit jenis kelamin masih belum  berfungsi.  Seharusnya  karena  data  awal  mahasiswa  bernim  ‘M0001’  adalah berjenis kelamin ‘Laki-laki’ maka radiobutton Laki-laki terpilih (checked). Demikian pula bila jenis kelaminnya adalah Perempuan. Lantas.. bagaimana caranya mewujudkan ha ini? OK.. caranya adalah dengan menggunakan konsep IF.

Perhatikan bagian script dari edit.php di bawah ini:

echo "<tr><td>Sex</td><td>:</td>
<td><input type='radio' name='sex' value='L'> Laki-Laki
<input type='radio' name='sex' value='P'> Perempuan</td></tr>"; Nah kita akan memodifikasi bagian script di atas menjadi seperti di bawah iniecho "<tr><td>Sex</td><td>:</td><td>”;
if ($data['sex'] == L)
echo ”<input type='radio' name='sex' value='L' checked> Laki-Laki
<input type='radio' name='sex' value='P'> Perempuan”;
else if ($data['sex'] == P”)
echo ”<input type='radio' name='sex' value='L'> Laki-Laki
<input type='radio' name='sex' value='P' checked> Perempuan”;

echo "</td></tr>";



Konsep dari ide script modifikasi di atas adalah jika data jenis kelamin mahasiswa adalah laki-laki  (L) maka komponen radiobutton  laki-laki akan dichecked.  Demikian  pula jika perempuan.



Setelah bagian script edit jenis kelamin diedit maka hasilnya adalah



Simpel bukan idenya? 

OK… next… kita perhatikan bagian edit tanggal lahir. Dalam tampilan script yang telah kita  buat  di  atas,  seharusnya  tanggal  lahir  menyesuaikan  data  tanggal  lahir  awal sebelum diedit.

Untuk  mewujudkan  hal  ini,  pada  dasarnya  konsep  atau  idenya  sama  dengan  jenis kelamin  di  atas  yaitu  menggunakan  IF.  Namun…  yang  menjadi  masalah  bagaimana caranya   memecah   tanggal   supaya   ketiga   komponen   combobox   yang   ada   dapa membaca tanggal, bulan dan tahun.

OK  solusi  untuk  memecah  tanggal,  pernah  kita  bahas  sebelumnya  yaitu dengan memanfaatkan function explode().

Berikut ini script edit.php yang telah dimodifikasi untuk edit tanggal lahirnya edit.php
<?php

mysql_connect("localhost", "root", "root");
mysql_select_db("data");

$nim = $_GET['nim'];

$query = "SELECT * FROM mhs WHERE nim = '$nim'";
$hasil = mysql_query($query);
$data  = mysql_fetch_array($hasil);

// memecah tanggal lahir ke dalam masing-masing unsur (tgl, bln, thn)

$pecahTgl = explode("-",  $data['tgllahir']);
$tgl = $pecahTgl[2];


$bln = $pecahTgl[1];
$thn = $pecahTgl[0];

echo "<form method='post' action='update.php'>";
echo "<table>";
echo "<tr><td>NIM</td><td>:</td>


<td><input type='text' name='nim' value='".$data['nim']."'></td></tr>";
echo "<tr><td>Nama Mahasiswa</td><td>:</td>
<td><input type='text' name='nama' value='".$data['nama']."'></td></tr>";
echo "<tr><td>Alamat</td><td>:</td>
<td><textarea name='alamat'>".$data['alamat']."</textarea></td></tr>";
echo "<tr><td>Sex</td><td>:</td>
<td><input type='radio' name='sex' value='L'> Laki-Laki
<input type='radio' name='sex' value='P'> Perempuan</td></tr>";
echo "<tr><td>Tgl Lahir</td><td>:</td><td>
<select name='tgl'>";
for ($i=1; $i<=31; $i++)
{
if ($i == $tgl) echo "<option value='".$i." selected>".$i."</option>";
else echo "<option value='".$i."'>".$i."</option>";
}
echo "</select>
<select name='bln'>";
for ($i=1; $i<=12; $i++)
{
if ($i == $bln) echo "<option value='".$i." selected>".$i."</option>";
else echo "<option value='".$i."'>".$i."</option>";
}
echo "</select>
<select name='thn'>";
for ($i=1980; $i<=1997; $i++)
{
if ($i == $thn) echo "<option value='".$i." selected>".$i."</option>";
else echo "<option value='".$i."'>".$i."</option>";
}
echo "</select>
</td></tr>";
echo "</table>";
echo "<input type='submit' name='submit' value='Submit'>";
echo "</form>";

?>

Nah… mudah dan simpel bukan idenya?

Sekarang yang terakhir, kita buat script untuk updatenya. Tapi… eiiit… wait a minute.. bagaimana bila NIM mahasiswanya yang diubah? Lho.. emangnya ada apa? Mungkin d pikiran Anda konsepnya sama dengan update data yang lain. Iya sih… but… coba kita lihat   pemisalannya.   Jika  data  seorang   mahasiswa   sebelum   diubah   memiliki   NIM ‘M0001’. Kemudian data NIM nya diubah menjadi ‘M0002’. Bagaimana SQL nya? SQL
nya adalah sebagai berikut:

UPDATE mhs SET nim = ‘M0002’ WHERE nim = ‘M0001’;

Dari SQL di atas, kita bisa melihat bahwa kita perlu NIM lama mahasiswa guna proses update tersebut. Nah… bila komponen textbox pada form edit untuk update NIM di atas kita  ubah  isinya,  maka  dengan  kata  lain  kita  akan kehilangan  NIM  yang  lama.  Nah… gimana tuh?

OK… ide untuk menanggulangi  hal tersebut adalah kita buat komponen hidden input untuk menyimpan NIM yang lama (sebelum diedit). NIM lama ini nantinya kita gunakan sebagai acuan proses updatenya.
Nah..  dengan  demikian  kita  modifikasi  kembali  script sebelumnya.edit.php  yang  telah  kita  buat sebelumnya


edit.php

<?php

mysql_connect("localhost", "root", "root");
mysql_select_db("data");

$nim = $_GET['nim'];

$query = "SELECT * FROM mhs WHERE nim = '$nim'";
$hasil = mysql_query($query);
$data  = mysql_fetch_array($hasil);

$pecahTgl = explode("-", $data['tgllahir']);
$tgl = $pecahTgl[2];
$bln = $pecahTgl[1];
$thn = $pecahTgl[0];

echo "<form method='post' action='update.php'>";
echo "<table>";
echo "<tr><td>NIM</td><td>:</td>
<td><input type='text' name='nimBaru value='".$data['nim']."'></td></tr>";
echo "<tr><td>Nama Mahasiswa</td><td>:</td>
<td><input type='text' name='nama' value='".$data['nama']."'></td></tr>";
echo "<tr><td>Alamat</td><td>:</td>
<td><textarea name='alamat'>".$data['alamat']."</textarea></td></tr>";
echo "<tr><td>Sex</td><td>:</td>
<td><input type='radio' name='sex' value='L'> Laki-Laki
<input type='radio' name='sex' value='P'> Perempuan</td></tr>";
echo "<tr><td>Tgl Lahir</td><td>:</td><td>
<select name='tgl'>";
for ($i=1; $i<=31; $i++)
{
if ($i == $tgl) echo "<option value='".$i."' selected>".$i."</option>";
else echo "<option value='".$i."'>".$i."</option>";
}
echo "</select>
<select name='bln'>";
for ($i=1; $i<=12; $i++)
{
if ($i == $bln) echo "<option value='".$i."' selected>".$i."</option>";
else echo "<option value='".$i."'>".$i."</option>";
}
echo "</select>
<select name='thn'>";
for ($i=1980; $i<=1997; $i++)
{
if ($i == $thn) echo "<option value='".$i."' selected>".$i."</option>";
else echo "<option value='".$i."'>".$i."</option>";
}
echo "</select>
</td></tr>";
echo "</table>";
echo "<input type='hidden' name='nimLama'  value='".$data[nim]."'>";
echo "<input type='submit' name='submit' value='Submit'>";
echo "</form>";
?>

 Catatan:
Letak komponen hidden input ini bisa diletakkan di sebarang tempat di dalam form, mengingat komponen ini tidak terlihat oleh mata 

Nah.. dengan demikian kita sekarang bisa konsentrasi ke script updatenya. Konsepnya hanyalah menjalankan query SQL UPDATE.


update.php

<?php

mysql_connect("localhost", "root", "root");
mysql_select_db("data");

$nimLama = $_POST['nimLama'];
$nimBaru = $_POST['nimBaru'];
$nama = $_POST['nama'];
$alamat = $_POST['alamat'];
$sex = $_POST['sex'];

// menggabung unsur tgl dalam combobox menjadi satu dalam format yyyy-mm-dd

$tgllahir = $_POST['thn']."-".$_POST['bln']."-".$_POST['tgl'];

$query = "UPDATE mhs
SET nim = '$nimBaru', nama = '$nama', alamat = '$alamat', sex = '$sex', tgllahir = '$tgllahir'
WHERE nim = '$nimLama'";
$hasil = mysql_query($query);
if ($hasil) echo "Data sudah diupdate";
else echo "Data gagal diupdate";
?>

OK deh selesai proses pembuatan script updatenya.

Berikut adalah contoh program Update data perpustakaan
Program
//koneksi.php
<?php
    mysql_connect("localhost", "root", "");
    mysql_select_db("perpustakaan");   
?>

//tabel_jenis_buku.php
<?php
    include "koneksi.php";

   
    $query = "SELECT * FROM jenis_buku";
    $hasil = mysql_query($query);

    echo"<h1>Tabel Jenis Buku</h1>
    <a href=\"insert_jenis_buku.php\">Tambah Data</a>
    ";
    
    echo "<table border='1'>";
        echo "<tr>
            <th>Kode jenis buku</th>
            <th>Nama jenis buku</th>
            <th>Action</th>
        </tr>";
        $data=0;
        while ($data = mysql_fetch_array($hasil))
        {
            echo "<tr>
                <td>".$data['kode_jenis_buku']."</td>
                <td>".$data['nama_jenis_buku']."</td>
                <td> <a href=\"update_jenis_buku.php?kode_jenis_buku=".$data['kode_jenis_buku']."\">edit</a></td>
            </tr>";
            $data++;
        }
        echo "Jumlah data : $data";
    echo "</table>";
?>
//tabel_buku.php
<?php
    include "koneksi.php";

   
    $query = "SELECT * FROM jenis_buku";
    $hasil = mysql_query($query);

    echo"<h1>Tabel Jenis Buku</h1>
    <a href=\"insert_jenis_buku.php\">Tambah Data</a>
    ";
   
    echo "<table border='1'>";
        echo "<tr>
            <th>Kode jenis buku</th>
            <th>Nama jenis buku</th>
            <th>Action</th>
        </tr>";
        $data=0;
        while ($data = mysql_fetch_array($hasil))
        {
            echo "<tr>
                <td>".$data['kode_jenis_buku']."</td>
                <td>".$data['nama_jenis_buku']."</td>
                <td> <a href=\"update_jenis_buku.php?kode_jenis_buku=".$data['kode_jenis_buku']."\">edit</a></td>
            </tr>";
            $data++;
        }
        echo "Jumlah data : $data";
    echo "</table>";
?>

//tabel_member.php
<?php
    include "koneksi.php";

   
    $query = "SELECT * FROM member";
    $hasil = mysql_query($query);

    echo"<h1>Tabel member</h1>
    <a href=\"insert_member.php\">Tambah Data</a>
    ";
   
    echo "<table border='1'>";
        echo "<tr>
            <th>Kode member</th>
            <th>Nama member</th>
            <th>Action</th>
        </tr>";

        while ($data = mysql_fetch_array($hasil))
        {
            echo "<tr>
                <td>".$data['kode_member']."</td>
                <td>".$data['nama_member']."</td>
                <td><a href=\"update_member.php?kode_member=".$data['kode_member']."\">edit</a></td>
            </tr>";
        }
    echo "</table>";
?>

//tabel_pinjam_buku.php
<?php
    include "koneksi.php";

   
    $query = "SELECT * FROM pinjam_buku";
    $hasil = mysql_query($query);

    echo"<h1>Tabel Jenis Buku</h1>
    <a href=\"insert_pinjam_buku.php\">Tambah Data</a>
    ";
   
    echo "<table border='1'>";
        echo "<tr>
            <th>Kode pinjam</th>
            <th>Kode buku</th>
            <th>Kode member</th>
            <th>Tanggal Pinjam</th>
            <th>Tanggal Kembali</th>
            <th>Action</th>
        </tr>";

        while ($data = mysql_fetch_array($hasil))
        {
            echo "<tr>
                <td>".$data['kode_pinjam']."</td>
                <td>".$data['kode_buku']."</td>
                <td>".$data['kode_member']."</td>
                <td>".$data['tgl_pinjam']."</td>
                <td>".$data['tgl_hrs_kembali']."</td>
                <td><a href=\"update_pinjam_buku.php?kode_pinjam=".$data['kode_pinjam']."\">edit</a></td>
            </tr>";
        }
    echo "</table>";
?>

//insert_jenis_buku.php
<?php
    include "koneksi.php"
?>

<form method="POST" action="submit_insert_jenis_buku.php">
    <h1>Jenis Buku</h1>
    Kode jenis buku <input type="text" name="kode_jenis_buku"><br>
    Nama jenis buku <input type="text" name="nama_jenis_buku"><br>
    <input type="submit" name="submit" value="submit">

</form>
   
   
//insert_buku.php
<?php
    include "koneksi.php"
?>

<form method="POST" action="submit_insert_buku.php">
    <h1> Buku </h1>
    Kode buku <input type="text" name="kode_buku"><br>
    Judul buku <input type="text" name="judul_buku"><br>
    Pengarang <input type="text" name="pengarang"><br>
    Kode jenis buku
    <select name="kode_jenis_buku">
        <?php
        $query="SELECT * FROM jenis_buku";
        $hasil=mysql_query($query);

            while($data=mysql_fetch_array($hasil)){
                echo "<option value=".$data['kode_jenis_buku']."> ".$data['kode_jenis_buku']." </option>";

            }
        ?>
    </select><br>
    <input type="submit" name="submit" value="submit">
</form>

//insert_member.php
<?php
    include "koneksi.php"
?>

<form method="POST" action="submit_insert_member.php">
    <h1>Member</h1>
    Kode member <input type="text" name="kode_member"><br>
    Nama member <input type="text" name="nama_member"><br>
    <input type="submit" name="submit" value="submit">
</form>

//insert_pinjam_buku.php
<?php
    include "koneksi.php"
?>

<form method="POST" action="submit_insert_member.php">
    <h1>Member</h1>
    Kode member <input type="text" name="kode_member"><br>
    Nama member <input type="text" name="nama_member"><br>
    <input type="submit" name="submit" value="submit">
</form>

//submit_insert_jenis_buku.php
<?php
    include "koneksi.php";

    $kode_jenis_buku = $_POST['kode_jenis_buku'];
    $nama_jenis_buku = $_POST['nama_jenis_buku'];

    $query = "INSERT INTO jenis_buku (kode_jenis_buku, nama_jenis_buku) VALUES ('$kode_jenis_buku', '$nama_jenis_buku')";
    $hasilQuery = mysql_query($query);
   
    if ($hasilQuery)
        echo "Data sudah tersimpan ke database";
        
    else
        echo "Penyimpanan data gagal";
   
?>

//submit_insert_buku.php
<?php
    include "koneksi.php";

    $kode_buku = $_POST['kode_buku'];
    $judul_buku = $_POST['judul_buku'];
    $pengarang = $_POST['pengarang'];
    $kode_jenis_buku = $_POST['kode_jenis_buku'];

    $query = "INSERT INTO buku (kode_buku, judul_buku, pengarang, jenis_buku) VALUES ('$kode_buku', '$judul_buku', '$pengarang', '$kode_jenis_buku')";
    $hasilQuery = mysql_query($query);
  
    if ($hasilQuery)
        echo "Data sudah tersimpan ke database";
    else
        echo "Penyimpanan data gagal";
   
?>

//submit_insert_member.php
<?php
    include "koneksi.php";

    $kode_buku = $_POST['kode_buku'];
    $judul_buku = $_POST['judul_buku'];
    $pengarang = $_POST['pengarang'];
    $kode_jenis_buku = $_POST['kode_jenis_buku'];

    $query = "INSERT INTO buku (kode_buku, judul_buku, pengarang, jenis_buku) VALUES ('$kode_buku', '$judul_buku', '$pengarang', '$kode_jenis_buku')";
    $hasilQuery = mysql_query($query);
  
    if ($hasilQuery)
        echo "Data sudah tersimpan ke database";
    else
        echo "Penyimpanan data gagal";
   
?>

//submit_insert_pinjam_buku.php
<?php
    include "koneksi.php";

    $kode_buku = $_POST['kode_buku'];
    $kode_member = $_POST['kode_member'];
    $tanggal = $_POST['thn']."-".$_POST['bln']."-".$_POST['tgl'];
    $tanggalkembali = date('Y-m-d', strtotime('+7 days', strtotime($tanggal) ));

    $query = "INSERT INTO pinjam_buku (kode_buku, kode_member, tgl_pinjam, tgl_hrs_kembali) VALUES ('$kode_buku', '$kode_member', '$tanggal', '$tanggalkembali')";
    $hasilQuery = mysql_query($query);

    if ($hasilQuery)
        echo "Data sudah tersimpan ke database";
    else
        echo "Penyimpanan data gagal";
   
?>

//update_jenis_buku.php
<?php
    include "koneksi.php";
    $kode_jenis_buku=$_GET['kode_jenis_buku'];
    $query="SELECT * FROM jenis_buku WHERE kode_jenis_buku='$kode_jenis_buku'";
    $hasil=mysql_query($query);
    $data=mysql_fetch_array($hasil);
?>

<form method="POST" action="submit_update_jenis_buku.php">
    <h1>Jenis Buku</h1>
    Kode jenis buku <input type="text" name="kode_jenis_buku" value="<?php echo $data['kode_jenis_buku']; ?>"> <br>
    Nama jenis buku <input type="text" name="nama_jenis_buku" value="<?php echo $data['nama_jenis_buku']; ?>"> <br>
    <input type="hidden" name="kode_jenis_buku_lama" value="<?php echo $kode_jenis_buku; ?>">
    <input type="submit" name="submit" value="submit">

</form>

//update_buku.php
<?php
    include "koneksi.php";
    $kode_buku=$_GET['kode_buku'];
    $query1="SELECT * FROM buku WHERE kode_buku='$kode_buku'";
    $hasil1=mysql_query($query1);
    $data1=mysql_fetch_array($hasil1);
?>

<form method="POST" action="submit_update_buku.php">
    <h1> Buku </h1>
    Kode buku <input type="text" name="kode_buku" value="<?php echo $kode_buku; ?>"><br>
    Judul buku <input type="text" name="judul_buku" value="<?php echo $data1['judul_buku']; ?>"> <br>
    Pengarang <input type="text" name="pengarang" value="<?php echo $data1['pengarang']; ?>"> <br>
    Kode jenis buku
    <select name="kode_jenis_buku">
        <?php
        $query="SELECT * FROM jenis_buku";
        $hasil=mysql_query($query);

            while($data=mysql_fetch_array($hasil)){
                echo "<option value=".$data['kode_jenis_buku']."> ".$data['kode_jenis_buku']." </option>";

            }
        ?>
    </select><br>
    <input type="hidden" name="kode_buku_lama" value="<?php echo $kode_buku; ?>">
    <input type="submit" name="submit" value="submit">
</form>

//update_member.php
<?php
    include "koneksi.php";
    $kode_member=$_GET['kode_member'];
    $query="SELECT * FROM member WHERE kode_member='$kode_member'";
    $hasil=mysql_query($query);
    $data=mysql_fetch_array($hasil);
?>

<form method="POST" action="submit_update_member.php">
    <h1> Buku </h1>
    Kode member <input type="text" name="kode_member" value="<?php echo $data['kode_member']; ?>"><br>
    Nama member <input type="text" name="nama_member" value="<?php echo $data['nama_member']; ?>"> <br>
    <input type="hidden" name="kode_member_lama" value="<?php echo $kode_member; ?>">
    <input type="submit" name="submit" value="submit">
</form>

//update_pinjam_buku.php
<?php
    include "koneksi.php";

    $kode_pinjam=$_GET['kode_pinjam'];
    $query="SELECT * FROM pinjam_buku WHERE kode_pinjam='$kode_pinjam'";
    $hasil=mysql_query($query);
    $data=mysql_fetch_array($hasil);

    $kode_buku=$data['kode_buku'];
    $kode_member=$data['kode_member'];
    $pecahTgl = explode("-", $data['tgl_pinjam']);
    $tgl = $pecahTgl[2];
    $bln = $pecahTgl[1];
    $thn = $pecahTgl[0];

?>

<form method="POST" action="submit_update_pinjam_buku.php">
    <h1> Pinjam buku </h1>
    Kode buku
    <select name="kode_buku">
        <?php
        $query="SELECT * FROM buku";
        $hasil=mysql_query($query);

            while($data=mysql_fetch_array($hasil)){
                if($kode_buku==$data['kode_buku'])
                    echo "<option value=".$data['kode_buku']." selected> ".$data['kode_buku']." </option>";
                else  
                    echo "<option value=".$data['kode_buku']."> ".$data['kode_buku']." </option>";

            }
        ?>
    </select><br>
    Kode member
    <select name="kode_member">
        <?php
        $query="SELECT * FROM member";
        $hasil=mysql_query($query);

            while($data=mysql_fetch_array($hasil)){
                if($kode_member==$data['kode_member'])
                    echo "<option value=".$data['kode_member']." selected> ".$data['kode_member']." </option>";
                else
                    echo "<option value=".$data['kode_member']."> ".$data['kode_member']." </option>";
            }
        ?>
    </select><br>
   
    Tanggal Pinjam
    <select name="tgl">
        <?php
            for($i=1; $i<=31; $i++){
                if($i==$tgl)
                    echo "<option value=".$i." selected>".$i."</option>";
                else
                    echo "<option value=".$i."'>".$i."</option>";
            }
        ?>
        </select>
        <select name="bln">
            <?php
                for($i=1; $i<=12; $i++){
                    if($i==$bln)
                        echo "<option value=".$i." selected>".$i."</option>";
                    else
                        echo "<option value=".$i.">".$i."</option>";
                }
            ?>
        </select>
        <select name="thn">
            <?php
                for($i=2019; $i<=2030; $i++){
                    if($i==$thn)
                        echo "<option value=".$i." selected>".$i."</option>";
                    else
                        echo "<option value=".$i.">".$i."</option>";
                }
            ?>
        </select><br>

    <?php
        $kode_pinjam=$_GET['kode_pinjam'];
        $query="SELECT * FROM pinjam_buku WHERE kode_pinjam='$kode_pinjam'";
        $hasil=mysql_query($query);
        $data=mysql_fetch_array($hasil)
    ?>
    <input type="hidden" name="kode_pinjam" value=<?php echo $kode_pinjam; ?>>
    <input type="submit" name="submit" value="submit">
</form>

//submit_update_jenis_buku.php
<?php
    include "koneksi.php";

    $kode_jenis_buku_lama = $_POST['kode_jenis_buku_lama'];
    $kode_jenis_buku = $_POST['kode_jenis_buku'];
    $nama_jenis_buku= $_POST['nama_jenis_buku'];
    echo $kode_jenis_buku_lama, $kode_jenis_buku, $nama_jenis_buku;

    $query = "UPDATE jenis_buku SET kode_jenis_buku = '$kode_jenis_buku', nama_jenis_buku = '$nama_jenis_buku' WHERE kode_jenis_buku = '$kode_jenis_buku_lama'";
    $hasilQuery = mysql_query($query);
  
    if ($hasilQuery)
        echo "Data sudah di update";
    else
        echo "Data gagal update";
   
?>

//submit_update_buku.php
<?php
    include "koneksi.php";

    $kode_buku_lama = $_POST['kode_buku_lama'];
    $kode_buku = $_POST['kode_buku'];
    $judul_buku = $_POST['judul_buku'];
    $pengarang = $_POST['pengarang'];
    $kode_jenis_buku = $_POST['kode_jenis_buku'];

    $query = "UPDATE buku SET kode_buku = '$kode_buku', judul_buku = '$judul_buku', pengarang = '$pengarang', jenis_buku='$kode_jenis_buku' WHERE kode_buku = '$kode_buku_lama'";
    $hasilQuery = mysql_query($query);
  
    if ($hasilQuery)
        echo "Data sudah di update";
    else
        echo "Data gagal update";
   
?>

//submit_update_pinjam_buku.php
<?php
    include "koneksi.php";
    $kode_pinjam=$_POST['kode_pinjam'];
    $kode_buku = $_POST['kode_buku'];
    $kode_member = $_POST['kode_member'];
    $tanggal = $_POST['thn']."-".$_POST['bln']."-".$_POST['tgl'];
    $tanggalkembali = date('Y-m-d', strtotime('+7 days', strtotime($tanggal) ));

    $query = "UPDATE pinjam_buku SET kode_pinjam = '$kode_pinjam', kode_buku = '$kode_buku', kode_member = '$kode_member' , tgl_pinjam = '$tanggal', tgl_hrs_kembali = '$tanggalkembali'WHERE kode_pinjam = '$kode_pinjam'";
    $hasilQuery = mysql_query($query);

    if ($hasilQuery)
        echo "Data sudah diupdate";
    else
        echo "Data gagal diupdate";
   
?>

Database
//perpustakaan.sql
-- phpMyAdmin SQL Dump
-- version 3.2.0.1
-- http://www.phpmyadmin.net
--
-- Host: localhost
-- Waktu pembuatan: 01. Mei 2019 jam 17:51
-- Versi Server: 5.1.37
-- Versi PHP: 5.3.0

SET SQL_MODE="NO_AUTO_VALUE_ON_ZERO";

/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
/*!40101 SET NAMES utf8 */;

--
-- Database: `perpustakaan`
--

-- --------------------------------------------------------

--
-- Struktur dari tabel `buku`
--

CREATE TABLE IF NOT EXISTS `buku` (
  `kode_buku` varchar(4) NOT NULL,
  `judul_buku` varchar(1) NOT NULL,
  `pengarang` varchar(20) NOT NULL,
  `jenis_buku` varchar(1) NOT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1;

--
-- Dumping data untuk tabel `buku`
--

INSERT INTO `buku` (`kode_buku`, `judul_buku`, `pengarang`, `jenis_buku`) VALUES
('B001', 'A', 'Mr.X', 'M'),
('B002', 'B', 'Mr.Y', 'R'),
('B003', 'C', 'Mr.X', 'R'),
('B004', 'D', 'Mr.A', 'J');

-- --------------------------------------------------------

--
-- Struktur dari tabel `jenis_buku`
--

CREATE TABLE IF NOT EXISTS `jenis_buku` (
  `kode_jenis_buku` varchar(1) NOT NULL,
  `nama_jenis_buku` varchar(10) NOT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1;

--
-- Dumping data untuk tabel `jenis_buku`
--

INSERT INTO `jenis_buku` (`kode_jenis_buku`, `nama_jenis_buku`) VALUES
('M', 'Majalah'),
('R', 'Referensi'),
('N', 'Koran'),
('J', 'Journal');

-- --------------------------------------------------------

--
-- Struktur dari tabel `member`
--

CREATE TABLE IF NOT EXISTS `member` (
  `kode_member` varchar(3) NOT NULL,
  `nama_member` varchar(3) NOT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1;

--
-- Dumping data untuk tabel `member`
--

INSERT INTO `member` (`kode_member`, `nama_member`) VALUES
('M01', 'XXX'),
('M02', 'YYY'),
('M03', 'ZZZ');

-- --------------------------------------------------------

--
-- Struktur dari tabel `pinjam_buku`
--

CREATE TABLE IF NOT EXISTS `pinjam_buku` (
  `kode_pinjam` int(11) NOT NULL AUTO_INCREMENT,
  `kode_buku` varchar(4) NOT NULL,
  `kode_member` varchar(4) NOT NULL,
  `tgl_pinjam` date NOT NULL,
  `Tgl_hrs_kembali` date NOT NULL,
  PRIMARY KEY (`kode_pinjam`)
) ENGINE=MyISAM  DEFAULT CHARSET=latin1 AUTO_INCREMENT=8 ;

--
-- Dumping data untuk tabel `pinjam_buku`
--

INSERT INTO `pinjam_buku` (`kode_pinjam`, `kode_buku`, `kode_member`, `tgl_pinjam`, `Tgl_hrs_kembali`) VALUES
(1, 'B001', 'M01', '2009-06-10', '2009-06-17'),
(2, 'B002', 'M02', '2009-06-10', '2009-06-17'),
(3, 'B001', 'M02', '2009-06-18', '2009-06-17'),
(4, 'B003', 'M03', '2009-06-20', '2009-06-27'),
(5, 'B004', 'M02', '2009-06-21', '2009-06-28');

/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;
/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;
/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;

Hasil
1.    Tabel jenis buku



2.      Insert jenis buku



3.      Update jenis buku


4.   Tabel buku

5.      Insert buku


6.      Update buku


7.      Tabel member


8.      Insert member



9.      Update member


10.  Table pinjam buku


11.  Insert pinjam buku



12.  Update pinjam buku