Please enable JavaScript!
Bitte aktiviere JavaScript!
S'il vous plaît activer JavaScript!
Por favor,activa el JavaScript!
antiblock.org

 |  | 
Anda ingin membuat website?
Untuk Anda yang sedang mencari orang untuk jasa pembuatan website, Saya akan bantu buatkan aplikasi sesuai kebutuhan Anda. Segera hubungi : mail@rizaldimaulidia.com. Selengkapnya tentang profil saya klik www.rizaldimaulidia.com.

PHP

Cara Mudah Membuat CRUD dengan PHP dan MySQL

img-responsive

Mungkin pembahasan tentang CRUD ini sudah pernah saya bahas pada tutorial sebelumnya yakni Cara Membuat CRUD Plus Upload Gambar dengan PHP dan MySQL. Namun ada beberapa teman pengunjung blog saya ini yang sedikit kebingungan ketika dia ingin menbuat CRUD tapi tanpa ada upload gambar. Maka dari itu akhirnya saya akan buat catatan / tutorial cara membuat CRUD dengan menggunakan bahasa pemograman PHP dan database MySQL. Dalam tutorial ini saya akan menggunakan PDO untuk komunikasi dengan databasenya, untuk Anda yang ingin source code versi MySQLi nya bisa langsung di download pada akhir catatan / tutorial ini.

CRUD adalah singkatan dari Create, Read, Update, Delete. Hampir atau bahkan semua aplikasi pasti memiliki fitur ini. Maka dari itu penting bagi teman-teman semua untuk memahami dan mengerti cara membuat CRUD ini sebagai dasar dari pembuatan website / aplikasi.


DEMO
Sebelum membaca tutorialnya, mungkin ada yang ingin melihat demonya terlebih dahulu. Silahkan klik link berikut untuk melihat demonya : Lihat Demo.


STEP 1 – PERSIAPAN

  1. Buat sebuah folder dengan nama crud, lalu simpan pada folder xampp/htdocs/

STEP 2 – DATABASE
Pada step ini, kita akan membuat databasenya. ikuti langkah-langkah berikut ini :

  1. Buat sebuah database dengan nama mynotescode
  2. Buat sebuah tabel dengan nama siswa. Struktur tabelnya sebagai berikut :
    Struktur Tabel - Cara Mudah Membuat CRUD dengan PHP dan MySQL

    CREATE TABLE `siswa` (
      `id` int(11) NOT NULL,
      `nis` varchar(11) NOT NULL,
      `nama` varchar(50) NOT NULL,
      `jenis_kelamin` varchar(10) NOT NULL,
      `telp` varchar(15) NOT NULL,
      `alamat` text NOT NULL
    ) ENGINE=InnoDB DEFAULT CHARSET=latin1;

STEP 3 – BUAT KONEKSI DATABASE
Pada step ini, kita akan membuat file koneksi.php yang berfungsi untuk menghubungkan dengan database MySQL. Silahkan buat file koneksi.php, lalu simpan di folder xampp/htdocs/crud/. Berikut ini kodenya :

<?php
$host = "localhost"; // Nama hostnya
$username = "root"; // Username
$password = ""; // Password (Isi jika menggunakan password)
$database = "mynotescode"; // Nama databasenya

// Koneksi ke MySQL dengan PDO
$pdo = new PDO('mysql:host='.$host.';dbname='.$database, $username, $password);
?>

STEP 4 – Buat View Data
Pada step ini, kita akan membuat sebuah file php yang berfungsi sebagai tampilan awal dan menampilkan semua data siswa dari database ke dalam sebuah tabel. Silahkan buat file index.php, lalu simpan di folder xampp/htdocs/crud/. Berikut ini tampilan dan kodenya :

View - Cara Mudah Membuat CRUD dengan PHP dan MySQL

<html>
<head>
  <title>Aplikasi CRUD dengan PHP</title>
</head>
<body>
  <h1>Data Siswa</h1>
  <a href="form_simpan.php">Tambah Data</a><br><br>
  <table border="1" width="100%">
  <tr>
    <th>NIS</th>
    <th>Nama</th>
    <th>Jenis Kelamin</th>
    <th>Telepon</th>
    <th>Alamat</th>
    <th colspan="2">Aksi</th>
  </tr>
  <?php
  // Include / load file koneksi.php
  include "koneksi.php";

  // Buat query untuk menampilkan semua data siswa
  $sql = $pdo->prepare("SELECT * FROM siswa");
  $sql->execute(); // Eksekusi querynya

  while($data = $sql->fetch()){ // Ambil semua data dari hasil eksekusi $sql
    echo "<tr>";
    echo "<td>".$data['nis']."</td>";
    echo "<td>".$data['nama']."</td>";
    echo "<td>".$data['jenis_kelamin']."</td>";
    echo "<td>".$data['telp']."</td>";
    echo "<td>".$data['alamat']."</td>";
    echo "<td><a href='form_ubah.php?id=".$data['id']."'>Ubah</a></td>";
    echo "<td><a href='proses_hapus.php?id=".$data['id']."'>Hapus</a></td>";
    echo "</tr>";
  }
  ?>
  </table>
</body>
</html>

include “koneksi.php”;
Kode tersebut berfungsi untuk me-load file koneksi.php.

$sql = $pdo->prepare(“SELECT * FROM siswa”);
$sql->execute();
Kode tersebut berfungsi untuk melakukan query ke database dan mengeksekusinya. Pada cotoh diatas, kita akan melakukan query untuk menampilkan semua data dari tabel siswa.

$data = $sql->fetch()
Kode tersebut berfungsi untuk mengambil semua data hasil query dan menampung data-data tersebut di dalam sebuah array lalu menyimpannya ke dalam variabel $data. Kode tersebut saya simpan di dalam sebuah kode while(….) yang berfungsi untuk melakukan proses perulangan sampai data terkahir dengan tujuan agar kita bisa menampilkan datanya satu per satu.

echo "<td>".$data['nis']."</td>";
echo "<td>".$data['nama']."</td>";
echo "<td>".$data['jenis_kelamin']."</td>";
echo "<td>".$data['telp']."</td>";
echo "<td>".$data['alamat']."</td>";
echo "<td><a href='form_ubah.php?id=".$data['id']."'>Ubah</a></td>";
echo "<td><a href='proses_hapus.php?id=".$data['id']."'>Hapus</a></td>";

Pada kode diatas terdapat variabel $data digunakan untuk mengambil isi dari field-field yang ada pada tabel siswa di database mynotescode. Pada kode diatas juga ada kode yang berada pada tanda [‘……’], kode tersebut harus sama dengan nama field yang ada pada tabel siswa.


STEP 5 – Form Tambah Data
Langkah selanjutnya adalah membuat sebuah form yang digunakan untuk menambah data siswa. Silahkan buat sebuah file dengan nama form_simpan.php, lalu simpan di folder xampp/htdocs/crud/. Berikut ini tampilan dan kodenya :

 Form Tambah - Cara Mudah Membuat CRUD dengan PHP dan MySQL

<html>
<head>
  <title>Aplikasi CRUD dengan PHP</title>
</head>
<body>
  <h1>Tambah Data Siswa</h1>
  <form method="post" action="proses_simpan.php">
    <table cellpadding="8">
      <tr>
        <td>NIS</td>
        <td><input type="text" name="nis"></td>
      </tr>
      <tr>
        <td>Nama</td>
        <td><input type="text" name="nama"></td>
      </tr>
      <tr>
        <td>Jenis Kelamin</td>
        <td>
        <input type="radio" name="jenis_kelamin" value="Laki-laki"> Laki-laki
        <input type="radio" name="jenis_kelamin" value="Perempuan"> Perempuan
        </td>
      </tr>
      <tr>
        <td>Telepon</td>
        <td><input type="text" name="telp"></td>
      </tr>
      <tr>
        <td>Alamat</td>
        <td><textarea name="alamat"></textarea></td>
      </tr>
    </table>

    <hr>
    <input type="submit" value="Simpan">
    <a href="index.php"><input type="button" value="Batal"></a>
  </form>
</body>
</html>

STEP 6 – Proses Simpan Data
Selanjutnya kita akan membuat sebuah file yang berfungsi untuk melakukan proses simpan data ke database. Silahkan buat sebuah file dengan nama proses_simpan.php, lalu simpan di folder xampp/htdocs/crud/. Berikut ini kodenya :

<?php
// Load file koneksi.php
include "koneksi.php";

// Ambil Data yang Dikirim dari Form
$nis = $_POST['nis'];
$nama = $_POST['nama'];
$jenis_kelamin = $_POST['jenis_kelamin'];
$telp = $_POST['telp'];
$alamat = $_POST['alamat'];

// Proses simpan ke Database
$sql = $pdo->prepare("INSERT INTO siswa(nis, nama, jenis_kelamin, telp, alamat) VALUES(:nis,:nama,:jk,:telp,:alamat)");
$sql->bindParam(':nis', $nis);
$sql->bindParam(':nama', $nama);
$sql->bindParam(':jk', $jenis_kelamin);
$sql->bindParam(':telp', $telp);
$sql->bindParam(':alamat', $alamat);
$sql->execute(); // Eksekusi query insert

if($sql){ // Cek jika proses simpan ke database sukses atau tidak
  // Jika Sukses, Lakukan :
  header("location: index.php"); // Redirect ke halaman index.php
}else{
  // Jika Gagal, Lakukan :
  echo "Maaf, Terjadi kesalahan saat mencoba untuk menyimpan data ke database.";
  echo "<br><a href='form_simpan.php'>Kembali Ke Form</a>";
}
?>

$nis = $_POST[‘nis‘];
Skrip ini berfungsi untuk mengambil data nis dari form yang diisi oleh user. nis disitu harus sama dengan atribut name yang ada di <input type=”text” name=”nis“>.


STEP 7 – Form Ubah Data
Langkah selanjutnya adalah membuat sebuah form yang digunakan untuk mengubah data siswa. Silahkan buat sebuah file dengan nama form_ubah.php, lalu simpan di folder xampp/htdocs/crud/. Berikut ini tampilan dan kodenya :

Form Ubah - Cara Mudah Membuat CRUD dengan PHP dan MySQL

<html>
<head>
  <title>Aplikasi CRUD dengan PHP</title>
</head>
<body>
  <h1>Ubah Data Siswa</h1>

  <?php
  // Load file koneksi.php
  include "koneksi.php";

  // Ambil data ID yang dikirim oleh index.php melalui URL
  $id = $_GET['id'];

  // Query untuk menampilkan data siswa berdasarkan ID yang dikirim
  $sql = $pdo->prepare("SELECT * FROM siswa WHERE id=:id");
  $sql->bindParam(':id', $id);
  $sql->execute();
  $data = $sql->fetch();
  ?>

  <form method="post" action="proses_ubah.php?id=<?php echo $id; ?>">
    <table cellpadding="8">
      <tr>
        <td>NIS</td>
        <td><input type="text" name="nis" value="<?php echo $data['nis']; ?>"></td>
      </tr>
      <tr>
        <td>Nama</td>
        <td><input type="text" name="nama" value="<?php echo $data['nama']; ?>"></td>
      </tr>
      <tr>
        <td>Jenis Kelamin</td>
        <td>
        <?php
        if($data['jenis_kelamin'] == "Laki-laki"){
          echo "<input type='radio' name='jenis_kelamin' value='Laki-laki' checked='checked'> Laki-laki";
          echo "<input type='radio' name='jenis_kelamin' value='Perempuan'> Perempuan";
        }else{
          echo "<input type='radio' name='jenis_kelamin' value='Laki-laki'> Laki-laki";
          echo "<input type='radio' name='jenis_kelamin' value='Perempuan' checked='checked'> Perempuan";
        }
        ?>
        </td>
      </tr>
      <tr>
        <td>Telepon</td>
        <td><input type="text" name="telp" value="<?php echo $data['telp']; ?>"></td>
      </tr>
      <tr>
        <td>Alamat</td>
        <td><textarea name="alamat"><?php echo $data['alamat']; ?></textarea></td>
      </tr>
    </table>

    <hr>
    <input type="submit" value="Ubah">
    <a href="index.php"><input type="button" value="Batal"></a>
  </form>
</body>
</html>

Pada form ubah ini, kita melakukan query ke database untuk menampilkan data siswa sebelumnya sesuai yang diklik oleh user pada halaman index.php. Perhatikan pada skrip form ubah diatas, terdapat kode berikut :

$id = $_GET[‘id‘];

Kode diatas berfungsi untuk mengambil data id yang dikirim oleh file index.php melalui sebuah link edit. Perhatikan skrip yang diberi warna merah, skrip tersebut harus sama dengan skrip yang ada di file index.php. Lihat pada file index.php terdapat skrip berikut :

echo “<td><a href=’form_ubah.php?id=”.$data[‘id’].”‘>Ubah</a></td>”;

Skrip tersebut yang akan membawa user ke halaman form ubah sekaligus mengirim data id siswa yang diklik oleh user (Perhatikan skrip yang diberi warna hijau dan merah). Skrip yang diberi warna hijau harus sama dengan $_GET[‘id‘] yang ada di file form_ubah.php.


STEP 8 – Proses Ubah Data
Selanjutnya kita akan membuat sebuah file yang berfungsi untuk melakukan proses ubah data. Silahkan buat sebuah file dengan nama proses_ubah.php, lalu simpan di folder xampp/htdocs/crud/. Berikut ini kodenya :

<?php
// Load file koneksi.php
include "koneksi.php";

// Ambil data ID yang dikirim oleh form_ubah.php melalui URL
$id = $_GET['id'];

// Ambil Data yang Dikirim dari Form
$nis = $_POST['nis'];
$nama = $_POST['nama'];
$jenis_kelamin = $_POST['jenis_kelamin'];
$telp = $_POST['telp'];
$alamat = $_POST['alamat'];

// Proses ubah data ke Database
$sql = $pdo->prepare("UPDATE siswa SET nis=:nis, nama=:nama, jenis_kelamin=:jk, telp=:telp, alamat=:alamat WHERE id=:id");
$sql->bindParam(':nis', $nis);
$sql->bindParam(':nama', $nama);
$sql->bindParam(':jk', $jenis_kelamin);
$sql->bindParam(':telp', $telp);
$sql->bindParam(':alamat', $alamat);
$sql->bindParam(':id', $id);
$execute = $sql->execute(); // Eksekusi / Jalankan query

if($execute){ // Cek jika proses simpan ke database sukses atau tidak
  // Jika Sukses, Lakukan :
  header("location: index.php"); // Redirect ke halaman index.php
}else{
  // Jika Gagal, Lakukan :
  echo "Maaf, Terjadi kesalahan saat mencoba untuk menyimpan data ke database.";
  echo "<br><a href='form_ubah.php'>Kembali Ke Form</a>";
}
?>

$id = $_GET[‘id‘];
Skrip yang saya beri warna merah harus sama dengan skrip yang ada di file form_ubah.php (yang saya beri warna hijau) : <form method=”post” action=”proses_ubah.php?id=<?php echo $id; ?>”>.


STEP 9 – Proses Hapus Data
Selanjutnya kita akan membuat sebuah file yang berfungsi untuk melakukan proses hapus data. Silahkan buat sebuah file dengan nama proses_hapus.php, lalu simpan di folder xampp/htdocs/crud/. Berikut ini kodenya :

<?php
// Load file koneksi.php
include "koneksi.php";

// Ambil data ID yang dikirim oleh index.php melalui URL
$id = $_GET['id'];

// Query untuk menghapus data siswa berdasarkan ID yang dikirim
$sql = $pdo->prepare("DELETE FROM siswa WHERE id=:id");
$sql->bindParam(':id', $id);
$execute = $sql->execute(); // Eksekusi / Jalankan query

if($execute){ // Cek jika proses simpan ke database sukses atau tidak
  // Jika Sukses, Lakukan :
  header("location: index.php"); // Redirect ke halaman index.php
}else{
  // Jika Gagal, Lakukan :
  echo "Data gagal dihapus. <a href='index.php'>Kembali</a>";
}
?>

$id = $_GET[‘id‘];
Skrip yang saya beri warna merah harus sama dengan skrip yang ada di file index.php (yang saya beri warna hijau)  : echo “<td><a href=’proses_hapus.php?id=”.$data[‘id’].”‘>Hapus</a></td>”;


Sekian untuk tutorial kali ini. Jika ada hal yang ingin ditanyakan, langsung tanyakan saja lewat kolom komentar dibawah ini. Jangan lupa LIKE dan SHARE nya hehe, Terimakasih.

Happy Coding ^_^


SOURCE CODE
Untuk mengunduh source code nya, klik salah satu link dibawah ini
– Download versi PDO : Link download yang sesuai tutorial ini yakni menggunakan fungsi PDO untuk query ke databasenya
– Download versi MySQLi : Link download untuk Anda yang ingin source code versi MySQLi dari tutorial ini

Cara mudah membuat simpan, edit, delete, dan view dengan PHP dan MySQL. Tutorial membuat CRUD dengan PHP dan MySQL. Tutorial membuat simpan, edit, delete, dan view dengan PHP dan MySQL. Cara mudah membuat insert, edit, delete, dan view dengan PHP dan MySQL. Tutorial membuat insert, edit, delete, dan view dengan PHP dan MySQL.

CRUD

(Total : 53,230 viewers, 1 viewers today)
crud-php-mysql

ABOUT THE AUTHOR

Interested in android programming, long time focused on web development. Visit My Profile Site at www.rizaldimaulidia.com

POST YOUR COMMENTS

Your email address will not be published. Required fields are marked *

Name *

Email *

Website

24 Comments

  1. Andrisaja

    Mlm Bang mnta bntuan
    Sy pnya error trus di bagian proses simpan

  2. prasetiani

    selamat pagi kak mau tanya, punya ku eror di bagian ini, maksudnya gimana ya?
    //include atau load file koneksi.php
    Notice: Undefined variable: pdo in C:\xampp\htdocs\login\kriteria.php on line 87

    Fatal error: Uncaught Error: Call to a member function prepare() on null in C:\xampp\htdocs\login\kriteria.php:87 Stack trace: #0 {main} thrown in C:\xampp\htdocs\login\kriteria.php on line 87

  3. tioolala

    untuk menu view per id gimana ya gan?.
    (tidak update, hanya view)

    • tinggal dimodif aja file form_ubah.php, ganti tampilannya jangan form, tapi ditampilkan saja datanya

  4. bimawardhana

    satu kata bang, lu keren.

  5. sasalisa

    prepare(“SELECT * FROM siswa”); $sql->execute(); // Eksekusi querynya while($data = $sql->fetch()){ // Ambil semua data dari hasil eksekusi $sql echo “”; echo “”; echo “”; echo “”; echo “”; echo “”; echo “”; echo “”; echo “”; } ?>
    NIS Nama Jenis Kelamin Telepon Alamat Aksi
    “.$data[‘nis’].” “.$data[‘nama’].” “.$data[‘jenis_kelamin’].” “.$data[‘telp’].” “.$data[‘alamat’].”

    ini kenapa tampilan indexnya malah gini ya ? nyoba buat lewat web lain juga gini setiap buat form yg terhubung ke database

    • cara aksesnya sudah bisa kan? ketika di browsernya localhost/namafolderweb. jangan di klik 2x file nya

  6. DIANA EF

    Pas di bagian aksi kok undefined ya kak?

      • Diana EF

        Ternyata salahnya cuma di bagian uppercase sama lowercase IDnya, kurang teliti liatnya, hehe.
        Makasih kak _/\_

        • harus lebih teliti lagi. saran dari saya, gunakan huruf kecil aja. jangan dicampur huruf besar, untuk mencegah kesalahan ketik seperti ini
          sama-sama 😀

  7. FERRY FUADI

    saya sudah insert 4 data, tapi id nya kok 0 semua ya, jadi pas di hapus, semuanya terhapus.
    Kayaknya pada insert data, nggak ada perintah untuk insert id, makanya id nya 0 semua.

  8. puja satria

    kenapa yaa saat mengisi data, terus datanya gak mau masuk pada tablenya ?

  9. jatim aritonang

    berhasil gan, terimaksih. namun saat hapus data untuk satu orang, maka semua ikut terhapus gan, lanjutkan gan,

    • lihat id nya, itu di database id nya harus beda-beda. soalnya ketika delete where nya berdasarkan id. jadi cek lagi

  10. lapakbrebes

    Saya pengin banget bisa system ini, saat ini masih banyak kesulitan untuk membuatnya tuk sementasa saya bookmark dulu tuk dipelajari n dicoba nanti untuk pembuatan administrasi sekolahan secara online, terima kasih ilmunya…
    Salam Hormat dari guru MTs

    • Silahkan pa nanti coba dibaca dan dipahami tutorial saya ini. kalau memang ada pertanyaan bapa bisa tanyakan melalui form komentar ini.
      Siap sama-sama pa, senang bisa membantu 😀
      Salam Juga.

NOTE ARCHIVES