Aplikasi CRUD ( CREATE, READ, UPDATE and DELETE ) Sederhana Dengan PHP PDO

Selamat Sore Sobat,

Mengingat sekarang Bahasa pemrograman semakin hari makin berkembang. Yang menuntut kita untuk menikutinya atau tetap diam enjoy dengan yang kita jalani sekarang. Kali ini saya akan sedikit berbagi tutorial tentang CRUD atau ( CREATE, READ, UPDATE and DELETE ). Bagi yang sudah belajar PHP pasti sudah tidak asing lagi, tetapi bagi yang baru mungkin akan sedikit kebingungan dalam koding CRUD. CRUD merupakan hal yang wajib bagi suatu aplikasi, karena merupakan koneksi dengan user.

Tutorial ini dibuat sangat sederhana, mengingat penulis juga masih sederhana banget ilmunya. Jadi bila ada salah kata mohon dikoreksi.

Susunan Direktori :
  1. -index.php
  2. -koneksi.php
  3. -form-input.php
  4. -insert.php
  5. -select.php
  6. -update.php
  7. -update-proses.php
  8. -delete.php 
Buat Database sesuai keinginan anda, untuk contoh saya beri nama 'project1'.  Perlu diingat bahwa aplikasi CRUD selalu berhubungan dengan form
Lalu buat tabel dengan kode:

CREATE TABLE IF NOT EXISTS 'alamat' (
    'id' int(5) NOT NULL AUTO_INCREMENT,
    'nama' varchar(125) NOT NULL,
    'alamat' varchar(1024) NOT NULL,
    PRIMARY_KEY ('id'),
    )
    ENGINE=MyISAM DEFAUTL CHARSET=latin1 AUTO_INCREMENT

1. koneksi.php
File ini berisi koneksi ke database yang memungkin user untuk me-manage database tersebut.
<?php
// koneksi.php
$dsn = 'mysql:dbhost=localhost;dbname=project1';
$user = 'root';
$pswd = '';
try {
    $dbh = new PDO($dsn,$user.$pswd);
}
catch(PDOException $e){
    echo 'Database Error : '.$e->getMessage();
}
Nb : Script diatas akan meng-koneksikan kedatabse dengan nama 'project1'.
 
2. form-input.php
File ini berisi tentang form yang memungkinkan user untuk memasukan nilai suatu value kedalam database.
Daftar Alamat Penduduk
<form action="insert.php" method="get">
  <table border="0">
    <tr>
      <td>Nama</td>
      <td>:</td>
      <td><input type="text" value="" name="nama" /></td>
    </tr>
    <tr>
      <td>Alamat</td>
      <td>:</td>
      <td><input type="text" value="" name="alamat" /></td>
    </tr>
    <tr>
    <td><input type="submit" value="Kirim" name="kirim" /></td>
    </tr>
  </table>
</form>
Nb : Nilai dari value yang dimasukan oleh form tersebut akan di-kirim ke file 'insert.php'.

3. insert.php
Script ini bertugas memasukan value dari form ke dalam database
<?php
// insert.php
require'koneksi.php';

$nama = isset($_GET['nama']) ? $_GET['nama'] : '';
$alamat = isset($_GET['alamat']) ? $_GET['alamat'] : '';

$data = array(
'nama' => $nama,
'alamat' => $alamat
);
$insert = $dbh->prepare("INSERT INTO alamat( nama, alamat ) VALUES ( :nama, :alamat )");

if($insert->execute($data)){
    echo "Data Added | Back <a href='index.php'>Index</a>";
}
else {
    echo "Data gagal insert to Database | Back <a href='index.php'>Index</a>";
}

4. select.php
Script ini bertugas untuk menampilkan data dari Database.
<?php
// select.php
require'koneksi.php';

$select = $dbh->prepare("SELECT * FROM alamat");
$select->execute();
$tampil = $select->fetchAll();
?>
<table border="1" style="border-collapse:collapse;text-align:left;" width="500px;">
<tr>
<th>Nama</th>
<th>Alamat</th>
<th colspan="2">Action</th>
</tr>
<?php foreach($tampil as $value){ ?>
<tr>
<td><?php echo $value['nama']; ?></td>
<td><?php echo $value['alamat']; ?></td>
<td><a href="update.php?id=<?php echo $value['id']; ?>">Edit</a></td>
<td><a href="delete.php?id=<?php echo $value['id']; ?>">Delete</a></td>
</tr>
<?php } ?>
</table>

5. update.php
File ini bertugas untuk menampilkan data yang dimasukan kedalam form.
<?php
// update.php
require'koneksi.php';
$id = isset($_GET['id']) ? $_GET['id'] : '';
$update = $dbh->prepare("SELECT * FROM alamat WHERE id=:id");
$update->bindParam( ':id', $id );
$update->execute();
// $update->fetchAll();

foreach($update->fetchAll() as $value){
    $nama = $value['nama'];
    $alamat = $value['alamat'];
    $id = $value['id'];
}
?>

<b>Edit Alamat Penduduk</b>
<form action="update-proses.php" method="get">
  <input type="hidden" value="<?php echo $id; ?>" name="id" />
  <table border="0">
    <tr>
      <td>Nama</td>
      <td>:</td>
      <td><input type="text" value="<?php echo $nama; ?>" name="nama" /></td>
    </tr>
    <tr>
      <td>Alamat</td>
      <td>:</td>
      <td><input type="text" value="<?php echo $alamat; ?>" name="alamat" /></td>
    </tr>
    <tr>
      <td><input type="submit" value="Update" name="Update" /></td>
    </tr>
  </table>
</form>

6. update-proses.php
Script ini akan memproses masukan dari file update.php yan akan menyimpannya dalam Database.
<?php
//update-proses.php
require'koneksi.php';
$id = isset($_GET['id']) ? $_GET['id'] : '';
$nama = isset($_GET['nama']) ? $_GET['nama'] : '';
$alamat = isset($_GET['alamat']) ? $_GET['alamat'] : '';

$data = array(
'id' => $id,
'nama' => $nama,
'alamat' => $alamat
);
$simpan = $dbh->prepare("UPDATE alamat SET nama=:nama, alamat=:alamat WHERE id=:id");
$simpan->execute($data);

if($simpan->execute($data)){
    echo "Data telah di ubah Come Back : <a href='index.php'>Index</a>";
}
else{
    echo "Data Gagal di ubah Come Back : <a href='index.php'>Index</a>";
}

6. delete.php
File inilah yang nantinya akan bertugas untuk menghapus nilai dalam database
<?php
// delete.php
require'koneksi.php';

$id = isset($_GET['id']) ? $_GET['id'] : '';
$delete = $dbh->prepare("DELETE FROM alamat WHERE id=:id");
$delete->bindParam(':id', $id );
$delete->execute();

if($delete->execute()){
    echo "Data telah di Hapus Come Back : <a href='index.php'>Index</a>";
}
else{
    echo "Data Gagal di Hapus Come Back : <a href='index.php'>Index</a>";
}

Contoh code di atas masih sangat sederhana, untuk keperluan pembelajaran bagi penulis yang munkin juga berguna untuk pembaca.  Jika ada kesalahan, atau ingin bertanya silakan tinggalkan komentar anda agar saya dapat meninjau lebih lanjut.

Thanks!!!

18 komentar :

  1. file index.php nya mana gan.....

    BalasHapus
  2. setelah ane perhatikan select.php bisa diganti ama index.php..
    trus tambahkan Insert buat inset data

    BalasHapus
  3. keep sharing gan, kami tunggu sumbangan source code php dari agan

    BalasHapus
  4. koneksi.php nya salah coding bro... gak pernah bisa tembus

    BalasHapus
  5. Terima kasih kak atas blog yang kakak buat sangat bagus dan membantu saya dalam memahami crud dengan php ke mysql dan terus berkarya kak dan ditunggu blog selanjut nya. Perkenalkan nama Andrian Antonius nim 1922500215 dan web Kampus says https://www.atmaluhur.ac.id/

    BalasHapus
  6. Malam kak. blognya ini sangat singkat , jelas dan lengkap sekali kak disertai dengan langkah langkah nya kak dan ditunggu lagi blog berikutnya kak. Terimaksih atas blog nya ya kak .Perkenalkan nama Andrian Antonius nim 1922500215 dan link kampus saya https://www.atmaluhur.ac.id/

    BalasHapus
  7. Malam kak. blognya ini sangat singkat , jelas dan mudah dimengerti sekaligus
    Dipahami ya kak dan disertai dengan langkah langkah nya kak dan ditunggu lagi blog berikutnya ya kak. Terimaksih atas blog nya ya kak .Perkenalkan nama saya Roki Abdul Jalil nim 1922500192 kelompok SI2K dan link kampus saya https://www.atmaluhur.ac.id/

    BalasHapus
  8. Artikel yang bagus kak, Saya jadi lebih memahami tentang CRUD dan juga saya dapat memulai mempelajarinya dengan lebih dalam. Perkenalkan saya Muhamad Asfarezhan nim 1922500056 kelompok si2j dan saya dari kampus ISB Atmaluhur pangkalpinang. Web kampus saya adalah https://www.atmaluhur.ac.id/

    BalasHapus
  9. Terima kasih kak atas blog yang kakak buat sangat membantu saya dalam memahami crud Dari php ke mysql dan terus berkarya kak di tunggu blog selanjut nya. Perkenalkan nama Martin nim 1922500184 dan web Kampus saya https://www.atmaluhur.ac.id/

    BalasHapus
  10. Artikelnya bagus kak buat saya yg baru belajar crud dari php ke mysql dan semagat terus kakak but artikelnya nama saya hena Mitriani nim 1922500189 web kampus sayahttps://mahasiswa.atmaluhur.ac.id/

    BalasHapus
  11. Terimakasih kak postingannya sangat membantu sekali untuk saya memahami CRUD penjelasan yang di berikan juga mudah dimengerti.. Semangat terus ya kak untuk membuat artikelnya.. Perkenalkan nama saya Sintia dan Nim saya 1922500186 dan link Web kampus saya https://www.atmaluhur.ac.id/

    BalasHapus
  12. Komentar ini telah dihapus oleh pengarang.

    BalasHapus
  13. Selamat malam kak, Terima kasih telah memberikan ilmu yang bermanfaat untuk saya, materinya mudah di pahami, dan juga contoh-contoh yang kakak bagikan sangat membantu saya untuk di praktekkan kembali dalam mempelajari materi tentang Aplikasi CRUD ( CREATE, READ, UPDATE and DELETE ) Sederhana Dengan PHP PDO ini , semoga sukses selalu, di beri kesehatan agar bisa memberikan ilmu yang bermanfaat di artikel selanjutnya, Perkenalkan
    nama saya : Reza anggraini
    Nim : 1922500196
    jangan lupa kunjungi web kampus saya ya kak https://www.atmaluhur.ac.id/
    Terima Kasih kak....

    BalasHapus
  14. Terimah kasih artikelnya sangat membantu kami terutama mahasiswa yang sedang belajar tentang web saya mahasiswa dari stmik atmaluhur dengan nim 1922500120 Sri Dewayanti, ini situs kampus saya https://www.atmaluhur.ac.id

    BalasHapus
  15. Komentar ini telah dihapus oleh pengarang.

    BalasHapus
  16. Halo kak, terimakasih artikelnya... ini sangat membantu saya dalam menyelesaikan tugas kuliah saya. oh ya kak, perkenalkan nama saya Nurhamimah dan jangan lupa kunjungi website kampus saya ISB Atma Luhur

    BalasHapus

tombol share icon
tombol kembali ke atas
Wait . . . !!!
tampilan ads aktif