Mengubah Data dengan MySQLi & PHP


Untuk mengubah data dengan MySQLi, berikut langkahnya :

Langkah 1

Buatlah file ubah.php, file ini akan digunakan untuk mengubah data setiap buku yang dipilih nantinya dari file tampil.php. Nantinya di file ubah.php akan berisi 2 perintah yaitu pertama perintah untuk menampilkan data yang akan diubah dan kedua perintah untuk melakukan perubahan data.

<?php
include('config.php'); // Meng-includekan koneksi database

if($_SERVER['REQUEST_METHOD'] == 'POST'){
    if(isset($_POST['judul']) and isset($_POST['pengarang'])){ // Memeriksa apakah inputan judul dan pengarang ada atau tidak
       $judul = $_POST['judul']; // membuat variabel judul untuk menampung data inputan judul
        $pengarang = $_POST['pengarang']; // membuat variabel pengarang untuk menampung data inputan pengarang
        $id = $_POST['id']; // membuat variabel id untuk menampung data id buku
 
      if(!empty($judul) and (!empty($pengarang))){ // Memeriksa apakah variabel judul dan pengarang sudah terisi,jika sudah jalankan query dibawah
            $sql="UPDATE buku SET judul='$judul', pengarang='$pengarang' WHERE id_buku='$id'";
           
           if($mysqli->query($sql) === false) { // Jika gagal meng-insert data tampilkan pesan dibawah 'Perintah SQL Salah'
             trigger_error('Perintah SQL Salah: ' . $sql . ' Error: ' . $mysqli->error, E_USER_ERROR);
          } else { // Jika berhasil alihkan ke halaman tampil.php
           header('location: tampil.php');
         }
       }
   }
}
?>
<!DOCTYPE html>
<html>
<head>
<title>ePlusGo.com – Mengubah Data Menggunakan PHP dan MySQLi</title>
<meta name="description" content="Tutorial MySQLi – Mengubah Data Menggunakan PHP dan MySQLi" />
<meta name="keywords" content="eplusgo,php,mysql,mysqli,ubah data,update" />
<link rel="stylesheet" href="style.css">
</head>

<body>
<center>
<?php
include(‘menu.php’);
?>
</center>
<div id="konten" style="margin:30px auto;">
<?php
$sql= "SELECT * FROM buku WHERE id_buku=’$_GET[id_buku]‘"; // Menampilkan data buku berdasarkan id buku
$hasil = $mysqli->query($sql);
$data = $hasil->fetch_array();
?>
<form action="" method="post" class="">
<input type="hidden" name="id" value="<?php echo $data['id_buku']; ?>" />
<h2 align="center">Form Input Data Buku</h2>
<p>
<input type="text" name="judul" placeholder="Judul Buku" class="normal-input" value="<?php echo $data['judul']; ?>" />
</p>
<p>
<input type="text" name="pengarang" placeholder="Nama Pengarang" class="normal-input" value="<?php echo $data['pengarang']; ?>" />
</p>
<input type="submit" value="Simpan" class="tombol" />
</form>
</div>
</body>
</html>

Langkah 2

Dari perintah diatas tepatnya di baris 39, data buku ditampilkan berdasarkan id_buku yang diambil dari variabel get id_buku ($_GET[‘id_buku’]). Untuk itu, kita perlu menciptakan data asal id_buku agar dapat diambil nantinya oleh variabel get tersebut. Perintahnya akan disisipkan pada file tampil.php yaitu sebagai berikut :

$sql= "SELECT id_buku, judul, pengarang FROM buku ORDER BY judul ASC";
$hasil = $mysqli->query($sql);

if($hasil === false) {
   trigger_error('Perintah SQL salah: ' . $sql . ' Error: ' . $mysqli-&gt;error, E_USER_ERROR);
} else {
    while($data = $hasil->fetch_array()){
        echo "<tr>";
        echo "<td>$data[judul]</td>";
     echo "<td>$data[pengarang]</td>";
     echo "<td><a href=ubah.php?id_buku=$data[id_buku]>Ubah</a></td>"; // Menciptakan data id_buku yang mengarah ke file ubah.php
      echo "</tr>";
   }
}

Silahkan download source codenya.