Crud Php Mysqli sederhana untuk pemula

crud php mysql untuk pemula

    Pada tutorial kali ini anda akan belajar bagaimana membuat crud php mysql sederhana. Tutorial crud php mysql sederhana ini sangat cocok untuk pemula yang baru belajar implementasi dari php dasar. Pada php dasar anda mempelajari dasar-dasar dari pemrograman php, namun pada tutorial ini anda akan belajar dasar dari membuat sebuah aplikasi web.

    Dasar dari membuat aplikasi adalah membuat CRUD. CRUD adalah sebuah persamaan dari Create, Read, Update, dan Delete.  operasi CRUD  yaitu operasi untuk memanipulasi data dari database yang nantinya data tersebut dapat dilihat, diedit dan dihapus dari tampilan web.

    Didalam sebuah aplikasi hal yang paling dasar harus ada adalah crud, data dapat dilihat diaplikasi, diedit dari aplikasi dan dihapus dari aplikasi. Dalam tutorial kali ini anda akan belajar bagaimana cara  membuat crud sederhana dengan mysql dan membuat operasinya didalam satu tampilan.

Hal pertama yang akan anda pelajari adalah membuat tampilan terlebih dahulu kemudian memanipulasi data dari database mysql. Yang nantinya akan memiliki tampilan seperti gambar dibawah ini.

crud php mysql sederhana part 1
Dari gambar diatas nantinya dalam operasi crud php mysql anda akan membuat tampilan berupa tabel, dengan 3 tombol untuk memanipuasi databasenya. Tabel tersebut akan berisi Nama murid, alamat , kelas, usia dan aksi.

Langkah sebelum membuat crud php mysql sederhana

Sebelum membuat crud sederhana mysql buatlah database dengan nama database "data_kelas" Caranya dapat dilihat pada tutorial cara membuat database mysql di phpmyadmin xampp

Selanjutnya setelah database selesai dibuat maka buatlah table  dengan membuat field sebanyak lima buah seperti yang terlihat pada code dibawah ini


        CREATE TABLE `data_siswa` (
         `id` int(11) NOT NULL auto_increment,
         `name` varchar(100),
         `alamat` varchar(100),
         `kelas` varchar(15),
`usia` int(11),
         PRIMARY KEY  (`id`)
        );

 
Cara menggunakan code tersebut anda bisa membaca cara membuat table mysql diphpmyadmin

Langkah-Langkah membuat crud php mysqli sederhana.

Sebelum membuat file diatas buatlah folder didalam htdoct dengan nama folder_projek kemudian didalam folder_projek buat folder dengan nama crud. kemudian buat semua file dibawah ini didalam folder crud.

1. index.css
2. config.php
3. index.php
4. tambah.php
5. edit.php
6. delete.php

Adapun cara mengakses dan pembuatan semua filenya akan terlihat seperti gambar dibawah ini.

struktur folder untuk projek crud


1. index.css

index.css adalah file css untuk membuat tampilan crud sederhana menjadi enak dilihat dan terlihat rapih. tanpa index.css sebenarnya sudah bisa dijalankan semua kodingnya akan tetapi saya sarankan tetap gunakan file css ini.

buatlah file dengan nama index.css kemudian masukan code dibawah ini.

    
    h1{
      font-familysans-serif;
    }
    button{
      width:100px;
      height:30px;
      background-color:#808080;
      bordernone;
        colorwhite;
        text-aligncenter;
        text-decorationnone;
        margin4px 2px;
      
    }

    table {
      font-familyArialHelveticasans-serif;
      background#eaebec;
      border#808080 1px solid;
      text-align:center;
    }

    table th {
      colorwhite;
      padding15px 35px;
      background#808080;
    }
    table tr {
      text-aligncenter;
      padding-left20px;
    }

    table td {
      color#666;
      padding15px 35px;
      border#808080 1px solid;
    }

    table tr:hover td {
      background#f2f2f2;
      background-moz-linear-gradient(top#f2f2f2#f0f0f0);
    }
    .tambah{
    bordernone;
    } 
    .tambah td{
      bordernone;
      background:none;
      padding15px 25px;
      font-size12px;
    }
    .tambah tr:hover td {
      backgroundnone;
    }



2. Config.php

 File config.php berfungsi untuk mengkoneksikan database. untuk mengkoneksikan kedatabase diperlukan hal-hal seperti host, nama database, user database, dan password database. 
    Untuk mengkoneksikan atau menghubungkan mysql dengan PHP diperlukan fungsi mysqli_connect() dengan database host (host database) sebagai parameter pertama, database username (user database) sebagai parameter kedua , database password (password database) sebagai parameter ke tiga dan database Name(nama database) sebagai parameter ke empat.

jika diterapkan dalam coding maka akan terlihat seperti berikut.

$mysqli = mysqli_connect(host_database, user_database, password_database, nama_database); 

Buatlah file dengan nama config.php kemudian isi koding dengan code dibawah ini.

<?php
/**
 * menggunakan mysqli_connect untuk database koneksi
 * 
 * darsonoaja.blogspot.com
 */
/**
  * buat variabel untuk menampung * host, nama database, nama user database, password databasenya
  */
$databaseHost = 'localhost';
$databaseName = 'data_kelas';
$databaseUsername = 'root';
$databasePassword = '';

try {
     $mysqli = mysqli_connect($databaseHost$databaseUsername
              $databasePassword$databaseName); 
   } catch (Exception $e) {
     echo $e->getMessage();
   }
?>



variabel mysqli atau terlihat diatas $mysqli nantinya akan digunakan untuk semua file yang membutuhkan koneksi database.

3. Index.php

    <?php
    // buat koneksi database menggunakan file config 
    include_once("config.php");

    // Fetch all users data dari database
    $result = mysqli_query($mysqli"SELECT*FROM data_siswa ORDER BY id DESC");
    ?>
    <html>
    <head>
        <title>Membuat CRUD sederhana ala darsonoaja.blogspot.com</title>
        <link rel="stylesheet" type="text/css" href="index.css">
    </head>
    <body>
        <center><h1>Membuat CRUD sederhana PHP & MYSQL </h1></center>
        <center><h2>Ala darsonoaja.blogspot.com </h1></center>
        <button>Tambah Data</button>
        <br><br/>
        <table cellspacing='0'>
            <thead>
                <tr>
                    <th>Nama Murid</th>
                    <th>Alamat</th>
                    <th>Kelas</th>
                    <th>Usia</th>
                    <th>Aksi</th>
                </tr>
            </thead>
            <tbody>
            <?php  
        while($user_data = mysqli_fetch_array($result)) {         
            echo "<tr>";
            echo "<td>".$user_data['name']."</td>";
            echo "<td>".$user_data['alamat']."</td>";
            echo "<td>".$user_data['kelas']."</td>";
            echo "<td>".$user_data['usia']."</td>";     
            echo "<td>
            <a href='edit.php?id=$user_data[id]'><button>Edit</button></a> 
            <a href='delete.php?id=$user_data[id]'><button>Delete</button></a>
            </td>";
            echo "</tr>";        
        }
        ?>
            </tbody>
        </table>
    </body>
    </html>



Didalam index.php anda akan menampilkan data dari database yang kemudian menampilkan semua datanya kedalam table dengan menggunakan select query. Perhatikan pada code diatas, dalam kode diatas saya memasukan file config.php kedalam index.php dengan menggunkan include_once kemudian saya select semua datanya dengan mysql_query untuk ditampilkan didalam table.

Perlu diIngat.... keluaran dari mysql_query adalah sebuah array maka untuk menampilkan datanya kedalam tabel anda lakukan pemecahan array dengan menggunakan WHILE, FOR ataupun foreach


4. Tambah.php

<html>
<head>
    <title>Add Users</title>
    <link rel="stylesheet" type="text/css" href="index.css">
</head>

<body>
    <a href="index.php"><button>Kembali Home</button></a>
    <br/><br/>

    <form action="tambah.php" method="post" name="form1">
        <table class="tambah" >
            <tr> 
                <td>Name</td>
                <td><input type="text" name="name"></td>
            </tr>
            <tr> 
                <td>Alamat</td>
                <td><input type="text" name="alamat"></td>
            </tr>
            <tr> 
                <td>Kelas</td>
                <td><input type="text" name="kelas"></td>
            </tr>
            <tr> 
                <td>Usia </td>
                <td><input type="number" name="usia "></td>
            </tr>
            <tr> 
                <td></td>
                <td><button type="submit" name="Submit" >Kirim</button></td>
            </tr>
        </table>
    </form>

    <?php

    // Check jika form siap dikirim, masukan data ke database.
    if(isset($_POST['Submit'])) {
        $name = $_POST['name'];
        $alamat = $_POST['alamat'];
        $kelas = $_POST['kelas'];
        $usia= $_POST['usia'];

        include_once("config.php");

        $sql="INSERT INTO data_siswa(name,alamat,kelas,usia) 
        VALUES('$name','$alamat','$kelas','$usia')";

        if (mysqli_query($mysqli$sql)) {
            echo "Data Berhasil Ditambahkan";
         } else {
            echo "Error: " . $sql . "" . mysqli_error($mysqli);
         }
         $mysqli->close();
    
    }
    ?>
</body>
</html>

Tambah.php merupakan template yang memili fungsi untuk memasukan data siswa kedalam table data_siswa. 
Perhatikan code diatas, form html digunakan untuk menerima inputan dari html dengan methode post dengan action pada tambah.php. kemudian data dimasukan kedalam database dengan mysql insert query.

5. Edit.php

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


    if(isset($_POST['update']))
    {   
        $id = $_POST['id'];

        $name = $_POST['name'];
        $alamat = $_POST['alamat'];
        $kelas = $_POST['kelas'];
        $usia = $_POST['usia'];

        // update user data
        $result = mysqli_query($mysqli"UPDATE data_siswa SET name='$name',alamat='$alamat',kelas='$kelas',usia='$usiaWHERE id=$id");

        // Redirect ke homepage
        header("Location: index.php");
    }
    ?>
    <?php
    //mengambil id dari url
    $id = $_GET['id'];

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

    while($user_data = mysqli_fetch_array($result))
    {
        $name = $user_data['name'];
        $alamat =  $user_data['alamat'];
        $kelas =  $user_data['kelas'];
        $usia =  $user_data['usia'];
    }
    ?>
    <html>
    <head>
        <title>Edit Siswa</title>
        <link rel="stylesheet" type="text/css" href="index.css">

    </head>

    <body>
        <a href="index.php"><button>Kembali Home</button></a>
        <br/><br/>
        <form action="edit.php" method="post" name="form1">
            <table class="tambah" >
                <tr> 
                    <td>Name</td>
                    <td><input type="text" name="name" value="<?php echo $name;?>"> </td>
                </tr>
                <tr> 
                    <td>Alamat</td>
                    <td><input type="text" name="alamat" value="<?php echo $alamat;?>"></td>
                </tr>
                <tr> 
                    <td>Kelas</td>
                    <td><input type="text" name="kelas" value="<?php echo $kelas;?>"></td>
                </tr>
                <tr> 
                    <td>Usia</td>
                    <td><input type="number" name="usia" value=<?php echo $usia;?>></td>
                </tr>
                <tr> 
                    <td><input type="hidden" name="id" value=<?php echo $_GET['id'];?>></td>
                    <td><button type="submit" name="update" >Update</button></td>
                </tr>
            </table>
        </form>

    </body>
    </html>


edit.php adalah file code php yang digunakan untuk update data dari table. anda dapat memperbarui data siswa dengan data baru atau merubah data siswa jika terjadi kesalahan ketik nama ataupun alamat. file php ini akan mengembalikan ke tampilan halaman hompage jika update berhasil dilakukan.

6. Delete.php

    
<?php

    include_once("config.php");

    $id = $_GET['id'];

    $result = mysqli_query($mysqli"DELETE FROM data_siswa WHERE id=$id");


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


Delete.php digunakan untuk menghapus data siswa berdasarkan id-nya.data manapun ketika tombol delete di klik maka akan terhapus.


Demikian tutorial Crud dasar ini saya bua, semoga anda dapat memahami isi dari artikel crud php mysql sederhana untuk pemula. terimakasih salam koding ala darsonoaja.blogspot.com







Posting Komentar

1 Komentar

  1. Terimakasih kak, materi yang disampaikan pada blog ini sangat berguna sebagai acuan atau contoh untuk saya yang baru belajar crud dari php ke mysql. Semangat terus ya kak untuk membuat blog lainnya. Perkenalkan nama saya Sintia dan Nim saya 1922500186 dan link Web kampus saya https://www.atmaluhur.ac.id/

    BalasHapus