• Translate

1/12/2015

Belajar Membuat Halaman CRUD dengan PHP dan MySQL

Tutorial PHP |

Advertisement

Sekarang kita akan mencoba membahas tentang bagaimana cara "Membuat Halaman CRUD (Create, Read, Update, Delete) dengan PHP dan MySQL. Tutorial kali ini hanya menggunakan PHP dan MySQL saja, jika ingin lebih menarik mungkin Anda bisa menggunakan Framework PHP seperti Code Igniter, Yii PHP Framework, Laravel atau sejenisnya. Kita akan membuat beberapa halaman yaitu "connect.php, index.php,  input.php,  simpan.php, edit.php, hapus.php, update.php"


 langkah-langkahnya :

1. Kita buat dulu database nya di phpmyadmin, contohnya seperti gambar di bawah ini, beri nama Database dengan biodata, kemudian tabel beri nama tabel_biodata :
Mysql

2. Kita buat "connect.php" :

<?php
$dsn  = "mysql:dbname=biodata;host=localhost";
$user = "root";
$pass = "";

try {
    $dbh = new PDO($dsn, $user, $pass);
} catch (PDOException $e) {
    echo "Koneksi ke database gagal: ".$e->getMessage();
}
?>

3. Kita buat halaman "index.php" :

<?php
include 'connect.php';
?>
<style>
    tbody > tr:nth-child(2n+1) > td, tbody > tr:nth-child(2n+1) > th {
        background-color: #ededed;
    }
    table{
        width: 70%;
        margin: auto;
        border-collapse: collapse;
        box-shadow: blue 3px;
    }
    thead tr {
        background-color: #80FFFE;
    }
</style>

<h1 align="center">Index CRUD | All Tutorials.info</h1>

<center>[<a href="input.php">Input Biodata Kamu</a>]</center>
 <br>

<table border="1">
    <thead>
        <tr>
            <th>No</th>
            <th>Nama</th>
            <th>Jenis Kelamin</th>
            <th>Alamat</th>
            <th>No Hp</th>
            <th>Pilihan</th>
        </tr>
    </thead>
   
    <tbody>
    <?php
    $sql = "SELECT * FROM tabel_biodata ORDER BY id";
    $no  = 1;
    foreach ($dbh->query($sql) as $data) :
    ?>
        <tr>
            <td><?php echo $no++; ?></td>
            <td><?php echo $data['nama'] ?></td>
            <td><?php echo $data['jenis_kelamin'] ?></td>
            <td><?php echo $data['alamat'] ?></td>
            <td><?php echo $data['no_hp'] ?></td>
            <td align="center">
                <a href="edit.php?id=<?php echo $data['id'] ?>">Edit |</a>
                 
                <a href="hapus.php?id=<?php echo $data['id'] ?>" onclick="return confirm('Anda Yakin Ingin Menghapus Biodata Ini?')">Hapus</a>
            </td>
        </tr>
    <?php
    endforeach;
    ?>
    </tbody>
</table> 

4. Sekarang kita buat "input.php" :

<h1 align="center">Input Biodata</h1>
<fieldset style="width: 50%; margin: auto;">
    <legend>Form Input Biodata</legend>
   
    <form action="simpan.php" method="post">
        <p>Nama Lengkap
           <input type="text" name="nama" required />
        </p>
   
        <p>Jenis Kelamin
          <input type="radio" name="jenis_kelamin" value="Laki-Laki" id="laki-laki" /><label for="laki-laki">Laki-Laki</label>
            <input type="radio" name="jenis_kelamin" value="Perempuan" id="perempuan" /><label for="perempuan">Perempuan</label>
        </p>
       
        <p>Alamat Lengkap
         <textarea name="alamat" cols="50" required></textarea>
        </p>
       
        <p>Nomor Handphone
         <input type="text" name="no_hp" required />
        </p>
       
       <p>  <input type="submit" value="Simpan" />
            <input type="reset" value="Reset" onclick="return confirm('hapus data yang telah diinput?')">
        </p>
    </form>
</fieldset>


<center>[<a href="index.php">Kembali ke Tabel Biodata</a>]</center> 

5. Sekarang buat file "simpan.php" :

<?php
include 'connect.php';

if (isset($_POST)) {
    $sql = "INSERT INTO tabel_biodata VALUE ('', '$_POST[nama]', '$_POST[jenis_kelamin]', '$_POST[alamat]', '$_POST[no_hp]')";
    $dbh->exec($sql);
}

header("location:index.php");
?> 

6. Kita buat file "edit.php" :

<?php
include 'connect.php';
if (isset($_GET['id'])) {
    $query = $dbh->query("SELECT * FROM tabel_biodata WHERE id = '$_GET[id]'");
    $data  = $query->fetch(PDO::FETCH_ASSOC);
} else {
    echo "ID tidak tersedia!
<a href='index.php'>Kembali</a>";
    exit();
}

if ($data === false) {
    echo "Data tidak ditemukan!
<a href='index.php'>Kembali</a>";
    exit();
}
?>
<h1 align="center">Edit Biodata</h1>
<fieldset style="width: 50%; margin: auto;">
    <legend>Form Input Biodata</legend>
   
    <form action="update.php" method="post">
        <input type="hidden" name="id" value="<?php echo $data['id']; ?>" />
        <p>Nama Lengkap
        <input type="text" name="nama" required value="<?php echo $data['nama']; ?>"/>
        </p>
       
        <p>Jenis Kelamin
            <?php if ($data['jenis_kelamin'] === "Laki-Laki") : ?>
            <input type="radio" name="jenis_kelamin" value="Laki-Laki" id="laki-laki" checked /><label for="laki-laki">Laki-Laki</label>
            <input type="radio" name="jenis_kelamin" value="Perempuan" id="perempuan" /><label for="perempuan">Perempuan</label>
            <?php else : ?>
            <input type="radio" name="jenis_kelamin" value="Laki-Laki" id="laki-laki" /><label for="laki-laki">Laki-Laki</label>
            <input type="radio" name="jenis_kelamin" value="Perempuan" id="perempuan" checked /><label for="perempuan">Perempuan</label>
            <?php endif; ?>
        </p>
       
        <p>Alamat Lengkap
        <textarea name="alamat" cols="50" required><?php echo $data['alamat']; ?></textarea>
        </p>
       
        <p>Nomor Handphone
        <input type="text" name="no_hp" required value="<?php echo $data['no_hp']; ?>" />
        </p>
       
        <p><input type="submit" value="Simpan" />
            <input type="reset" value="Reset" onclick="return confirm('Anda Yakin akan Menginput Data Yang Sudah Diinput?')">
        </p>
    </form>
</fieldset>


<center><a href="index.php">Kembali Tabel Biodata</a></center> 

7. Buat file "hapus.php" :

<?php
include 'connect.php';
if (isset($_GET['id'])) {
    $dbh->exec("DELETE FROM tabel_biodata WHERE id = '$_GET[id]'");
}
header("location:index.php")
?> 

8. terakhir buat "update.php" :

<?php
include 'connect.php';

if (isset($_POST)) {
    $sql = "UPDATE tabel_biodata SET nama = '$_POST[nama]',
                                     jenis_kelamin = '$_POST[jenis_kelamin]',
                                     alamat = '$_POST[alamat]',
                                     no_hp  = '$_POST[no_hp]'
                                 WHERE id = '$_POST[id]' ";
    $dbh->exec($sql);
}

header("location:index.php");
?>

Selesai juga kita membuat halaman CRUD dengan PHP dan MySql, cobaa kalian gabungkan file tersebut dalam satu folder namakan folder tersebut misalnya crud, trus jalankan dari browser dengan link http://localhost/ crud dan lihat hasilnya.

Disqus
Blogger
Comment
How to style text in Disqus comments Top Disqus Commentators
  • To write a bold letter please use <strong></strong> or <b></b>.
  • To write a italic letter please use <em></em> or <i></i>.
  • To write a underline letter please use <u></u>.
  • To write a strikethrought letter please use <strike></strike>.
  • To write HTML code, please use <code></code> or <pre></pre> or <pre><code></code></pre>, and please parse the code in the parser box below.
Show Parser Box

1 comment Add Comment

isian data updatenya tdk bisa tersimpan

Reply

Comments not appropriate topic will sign SPAM.