Blogroll

Senin, 24 September 2018

Guru Infomatika

Cara buat Aplikasi Crud dengan PHP dan MySQL



Cara membuat Crud sederhana dengna PHP MySQL
1.       Buat Database

Tahap pertama adalah membuat database dahulu di phpMyAdmin, saya umpamakan Anda sudah membuat sebuah database dengan nama webprog.
Jika database sudah di buat, sekarang buat table yang berisi di bawah ini.



Database dan Table sudah ada, biarkan saja datanya kosong.

2.       Buat Koneksi ke Database

Tahap selanjutnya adalah melakukan koneksi ke database, file untuk ke database adalah config.php

Silahkan buat file baru dan beri nama config.php kemudian isi dari file seperti di bawah ini.

<?php
$databaseHost = 'localhost';
$databaseName = 'web2';
$databaseUsername = 'root';
$databasePassword = '';

$mysqli = mysqli_connect($databaseHost, $databaseUsername, $databasePassword, $databaseName);

?>

Silahkan simpan dan jangan lupa merubah detail koneksinya, misalkan passwordnya beda ya silahkan di ganti dengan password Anda.

3.       Menampilkan Data (Read / Select)
Tahap ketiga adalah menampilkan data dari database atau jika dalam singkatan CRUD maka kali ini adalah R --> Read.

Untuk menampilkan data, kita akan membuat file dengan nama index.php. Dan isi file index.php adalah script di bawah ini.

<?php
include_once("config.php");
$result = mysqli_query($mysqli, "SELECT * FROM users ORDER BY id DESC");
?>

<html>
<head>               
                <title>Aplikasi CRUD</title>
</head>
<body bgcolor="#CCCCCC">

<h2>Tugas Pemrograman Web 2</h2>
<hr>
<a href=add.html  title="Tambah Data Lagi"><button>TAMBAH DATA</button></a><br/><br/>


<table width='80%' border="1">

                <tr bgcolor='#CCCCCC'>
                                <td width="112" height="29" align="center" valign="middle" bgcolor="#81BFD5">NAMA</td>
                                <td width="176" align="center" valign="middle" bgcolor="#81BFD5">EMAIL</td>
                                <td width="200" align="center" valign="middle" bgcolor="#81BFD5">USERNAME</td>
                                <td width="200" align="center" valign="middle" bgcolor="#81BFD5">PASSWORD</td>
                                <td width="100" align="center" valign="middle" bgcolor="#81BFD5">OPSI</td>
                </tr>
                <?php
               
                while($res = mysqli_fetch_array($result)) {                        
                                echo "<tr>";
                                echo "<td>".$res['nama']."</td>";
                                echo "<td>".$res['email']."</td>";
                                echo "<td>".$res['username']."</td>";
                                echo "<td>".$res['password']."</td>"; 
                                echo "<td><a href=\"edit.php?id=$res[id]\">Edit</a> | <a href=\"delete.php?id=$res[id]\" onClick=\"return confirm('Anda yakin akan menghapus data?')\">Delete</a></td>";                    
                }
                ?>
</table>
</body>
</html>

Jangan lupa disimpan ya....

Untuk penjelasan script sudah saya masukkan pada script di atas, silahkan di baca sendiri kegunaan tiap-tiap baris kode.

tampilan dari file index.php bisa terlihat seperti gambar di bawah ini.




4.       Memasukkan Data (Create / Insert)

Tahap keempat adalah memasukkan data ke database dengan perintah INSERT INTO.

Pertama tentu saja kita buat form untuk memasukkan datanya.

Form ini akan kita simpan dalam file add.php dengan script seperti di bawah ini:

<html>
<head>
                     <title>Tambah User</title>
</head>

<body>
<?php
include_once("config.php");

if(isset($_POST['Submit'])) {      
                     $nama = mysqli_real_escape_string($mysqli, $_POST['nama']);
                     $email = mysqli_real_escape_string($mysqli, $_POST['email']);
                     $username = mysqli_real_escape_string($mysqli, $_POST['username']);
                     $password = mysqli_real_escape_string($mysqli, $_POST['password']);

                     if(empty($nama) || empty($email) || empty($username) || empty($password)) {
                                                               
                                if(empty($nama)) {
                                                echo "<font color='red'>Anda belum menambahkan Nama.</font><br/>";
                                }
                               
                                if(empty($email)) {
                                                echo "<font color='red'>Anda belum menambahkan Email.</font><br/>";
                                }

                                if(empty($username)) {
                                                echo "<font color='red'>Anda belum menambahkan Username.</font><br/>";
                                }
                               
                                if(empty($password)) {
                                                echo "<font color='red'>Anda belum menambahkan Password.</font><br/>";
                                }
                               
                                echo "<br/><a href='javascript:self.history.back();'>Kembali Ke Halaman Sebelumnya</a>";
                     } else {            
                                $result = mysqli_query($mysqli, "INSERT INTO users(nama,email,username,password) VALUES('$nama','$email','$username','$password')");
                                echo "<font color='green'>Data berhasil di tambahkan.";
                                echo "<br/><a href='index.php'>Lihat Data User</a>";
                     }
}
?>
</body>
</html>

Dari form tidak ada yang spesial, hanya form tersebut action nya tambah-proses.php

Tampilannya seperti gambar di bawah ini.


5 4.  Update data (Update / Edit)

Tahap ini adalah untuk melakukan edit data pada database. File yang akan kita buat adalah edit.php

Link untuk menuju halaman edit adalah pada file index.php dimana disana pada tabel kolom Pilihan ada Link Edit dan Hapus. Dimana untuk Link Edit yang di klik Anda akan mendapatkan Link seperti <a href="edit.php?id=1">Edit</a> dimana id ini adalah nilai dari id. Jika id tersebut adalah 1, maka akan menampilkan data siswa dimana id=1.

Oke , silahkan buat file edit.php dan salain script di bawah ini.

<?php
include_once("config.php");

if(isset($_POST['update']))
{                  

                     $id = mysqli_real_escape_string($mysqli, $_POST['id']);
                    
                     $nama = mysqli_real_escape_string($mysqli, $_POST['nama']);
                     $email = mysqli_real_escape_string($mysqli, $_POST['email']);
                     $username = mysqli_real_escape_string($mysqli, $_POST['username']);        
                     $password = mysqli_real_escape_string($mysqli, $_POST['password']);          
                    
                     if(empty($nama) || empty($email) || empty($username)|| empty($password)) {    
                                               
                                if(empty($nama)) {
                                                echo "<font color='red'>Anda belum menambahkan Nama.</font><br/>";
                                }
                               
                                if(empty($email)) {
                                                echo "<font color='red'>Anda belum menambahkan Email.</font><br/>";
                                }
                               
                                if(empty($username)) {
                                                echo "<font color='red'>Anda belum menambahkan Username.</font><br/>";
                                }

                                if(empty($password)) {
                                                echo "<font color='red'>Anda belum menambahkan Password.</font><br/>";
                                }                                             
                     } else {            
                               
                                $result = mysqli_query($mysqli, "UPDATE users SET nama='$nama',email='$email',username='$username',password='$password' WHERE id=$id");

                                header("Location: index.php");
                     }
}
?>
<?php
$id = $_GET['id'];

$result = mysqli_query($mysqli, "SELECT * FROM users WHERE id=$id");

while($res = mysqli_fetch_array($result))
{
                     $nama = $res['nama'];
                     $email = $res['email'];
                     $username = $res['username'];
                     $password = $res['password'];
}
?>
<html>
<head>    
                     <title>Ubah Data</title>
</head>
<script language="javascript">
    function hanyaAngka(e, decimal) {
    var key;
    var keychar;
     if (window.event) {
         key = window.event.keyCode;
     } else if (e) {
         key = e.which;
     } else return true;
  
    keychar = String.fromCharCode(key);
    if ((key==null) || (key==0) || (key==8) ||  (key==9) || (key==13) || (key==27) ) {
        return true;
    } else
    if ((("0123456789").indexOf(keychar) > -1)) {
        return true;
    } else
    if (decimal && (keychar == ".")) {
        return true;
    } else return false;
    }
   
    function huruf(evt){
        var charCode = (evt.which) ? evt.which : event.keyCode
        if ((charCode < 65 || charCode > 90)&&(charCode < 97 || charCode > 122)&&charCode>32)
            return false;
        return true;
    }
</script>
<body>
<h2>Form Ubah Data</h2>
<hr>
                     <a href="index.php">Home</a>
                     <br/><br/>
                    
                     <form name="form1" method="post" action="edit.php">
                                <table border="0">
                                                <tr>
                                                                <td>Nama</td>
                                                                <td><input type="text" name="nama" value="<?php echo $nama;?>" onkeypress="return huruf(event)"></td>
                                                </tr>
                                                <tr>
                                                                <td>Email</td>
                                                                <td><input type="text" name="email" value="<?php echo $email;?>"></td>
                                                </tr>
                                                <tr>
                                                                <td>Username</td>
                                                                <td><input type="text" name="username" value="<?php echo $username;?>"></td>
                                                </tr>
                                                <tr>
                                                                <td>Password</td>
                                                                <td><input type="text" name="password" value="<?php echo $password;?>"></td>
                                                </tr>
              <div class="col-sm-3"></div>
                                                                <td><input type="hidden" name="id" value=<?php echo $_GET['id'];?>></td>
                                                                <td><input type="submit" name="update" value="Update">
               <a href="index.php" class="btn btn-warning">Close</a></td>
                                                </tr>
                                </table>
                     </form>
</body>
</html>

Jika sudah silahkan simpan, dan hasil tampilan dari script di atas seperti gambar di bawah ini.




6.       Hapus Data (Delete / Hapus)

Tahap keenam ini adalah yang terakhir, yaitu melakukan perintah Delete untuk menghapus data dari database.

File yang akan kita buat adalah hapus.php dan isi scriptnya seperti di bawah ini.

<?php
include("config.php");
$id = $_GET['id'];
$result = mysqli_query($mysqli, "DELETE FROM users WHERE id=$id");
header("Location:index.php");
?>

Sekian dan terimakasih. semoga bermanfaat :)

Guru Infomatika

About Guru Infomatika -

Author Description here.. Nulla sagittis convallis. Curabitur consequat. Quisque metus enim, venenatis fermentum, mollis in, porta et, nibh. Duis vulputate elit in elit. Mauris dictum libero id justo.