-->
  • Menampilkan database ke website dengan PHP Framework [Laravel]

    Import databases dari luar

    Setelah proses di atas berhasil, selanjutnya kita perlu memasukkan data ke databases "hr" yang telah kita buat. Agar kita sudah memiliki data yang banyak. Kalian bisa mengunduh data berikut dan memasukkannya ke database kalian. 
    Berikut tutorial singkat untuk import isi file hr.sql tersebut.
    1. Buka MySQL command line
    2. Ketik tempat penyimpanan MySQL, contoh C:\php\mysql\bin
    3. Kemudian letakkan file hr.sql ke folder bin
    4. Pada MySQL command line, buatlah sebuah database
    5. Setelah itu, ketikan kode berikut hr.sql setelah itu tekan enter
    6. Tunggu beberapa saat dan file anda berhasil diimport.

    Menampilkan isi databse ke halaman dengan Framework Laravel

    Sebelum dapat menampilkan isi database teman-teman perlu membuat sebuah projek baru untuk laravelnya. Jika masih bingung teman-teman bisa melihat kembali postingan berikut.

    di sini, saya membuat projek baru dengan nama 'hr2' setelah itu teman-teman juga bisa membuat controller dan juga modelnya seperti pada gambar berikut.



    Kemudian mari kita atur konfigurasi dasar pada laravel agar data yang berada di database bisa terhubung dengan laravel. Laravel menyediakan sebuah fitur yang sangat bisa memudahkan kita dalam melakukan konfigurasi. fiitur tersebut yakni Environmental Configuration. File tersebut terletak di folder terluar saat melakukan instalasi laravel, ".env"
    Berikut konfigurasi yang perlu dilakukan

    Selanjutnya, teman-teman perlu perhatikan pada penamaan database. Maka hal pertama yang kita lakukan adalah dengan membuat route untuk menampilkan data employees.

    Buat route baru dengan alamat '/employees'.
    hr2_routes/web.php
    Isikan kode berikut pada file web.php

    Jika sudah menulis kode tersebut sekarang kita akan mengisi kode untuk file controller yang telah kita buat. Bukalah file hrController.php pada folder htdocs\hr2\app\Http\Controllers. Isikan seperti kode berikut.

    Fungsi yang ada pada kode tersebut sebetulnya mirip dengan fungsi SELECT yang ada pada MySQL.
    Selanjutnya kita belum mempunyai view index. maka sekarang kita buat dulu view nya dengan nama index.blade.php

    htdocs\hr2\resources\views

    Teman - teman dapat menggunakan berikut : 
    --------------------------------------------------------------------------------------------------------------------------
    <!DOCTYPE html>
    <html>
    <head>
        <title>Employees</title>
    </head>
    <body>
        <h2 align="center">Data Pegawai</h2>
        <a href="/pegawai/tambah"> + Tambah Pegawai Baru</a>
        
        <br/>
        <br/>
        <table border="1">
            <tr>
                <th>Employee ID</th>
                <th>First Name</th>
                <th>Last Name</th>
                <th>Email</th>
                <th>Phone Number</th>
                <th>Hire Date</th>
                <th>Job ID</th>
                <th>Salary</th>
                <th>Commission PCT</th>
                <th>Manager ID</th>
                <th>Department ID</th>
                <th>OPSI</th>
            </tr>
            @foreach($employees as $e)
            <tr>
                <td>{{ $e->employee_id }}</td>
                <td>{{ $e->first_name }}</td>
                <td>{{ $e->last_name }}</td>
                <td>{{ $e->email }}</td>
                <td>{{ $e->phone_number }}</td>
                <td>{{ $e->hire_date }}</td>
                <td>{{ $e->job_id }}</td>
                <td>{{ $e->salary }}</td>
                <td>{{ $e->commission_pct }}</td>
                <td>{{ $e->manager_id }}</td>
                <td>{{ $e->department_id }}</td>
                <td>
                    <a href="/employees/edit/{{ $e->employee_id }}">Edit</a>
                    |
                    <a href="/employees/hapus/{{ $e->employee_id }}">Hapus</a>
                </td>
            </tr>
            @endforeach
        </table>
    </body>
    </html>
    --------------------------------------------------------------------------------------------------------------------------

    Setelah itu jalankan php artisan serve dan buka alamat berikut di browser masing-masing http://localhost:8000/employees

    Menambahkan data ke dalam database dengan Framwork Laravel

    Pertama-tama mari kita buat dulu route dengan nama '/employees/tambah' seperti gambar berikut;

    htdocs\hr2\routes\web.php


    Disini kita membuat pengaturan route, jika route tersebut diakses maka akan kta perintahkan untuk menjalanjan method tambah yng ada dalam controller hrController, seperti gambar berikut;

    htdocs\hr2\app\Http\Controllers


    Pada kode di atas, method tambah tersebut memerintah untuk menampilkan view 'tambah'. Maka dari itu kita akan membuat sebuah file php yang bernama "tambah.blade.php" pada foolder htdocs\hr2\resources\views\tambah.blade.php
    berikut kode yang perlu diketik pada file tersebut
    --------------------------------------------------------------------------------------------------------------------------
    <!DOCTYPE html>
    <html>
    <head>
        <title>Tambah</title>
    </head>
    <body>
        <h2 align="center">Tambah Pegawai</h2>
        <a href="/employees"> Kembali</a>
        
        <br/>
        <br/>
        <form action="/employes/store" method="post">
            {{ csrf_field() }}
            <table>
                <tr>            
                    <td>Employee ID</td>
                    <td>:</td>
                    <td><input type="number" name="employee_id" required="required"></td>
                </tr>
                <tr>
                    <td>First Name</td>
                    <td>:</td>
                    <td><input type="text" name="first_name" required="required"></td>
                </tr>
                <tr>
                    <td>Last Name</td>
                    <td>:</td>
                    <td><input type="text" name="last_name" required="required"></td>
                </tr>
                <tr>            
                    <td>Email</td>
                    <td>:</td>
                    <td><input type="text" name="email" required="required"></td>
                </tr>
                <tr>            
                    <td>Phone Number</td>
                    <td>:</td>
                    <td><input type="text" name="phone_number" required="required"></td>
                </tr>
                <tr>            
                    <td>Hire Date</td>
                    <td>:</td>
                    <td><input type="date" name="hire_date" required="required"></td>
                </tr>
                <tr>            
                    <td>Job ID</td>
                    <td>:</td>
                    <td><select name="job_id" required="required">
                        <option value="AC_ACCOUNT"> AC_ACCOUNT
                        <option value="AC_MGR"> AC_MGR
                        <option value="AD_ASST"> AD_ASST
                        <option value="AD_PRESS"> AD_PRESS
                        <option value="AD_VP"> AD_VP
                        <option value="FI_ACCOUNT"> FI_ACCOUNT
                        <option value="FI_MGR"> FI_MGR
                        <option value="HR_REP"> HR_REP
                        <option value="IT_PROG"> IT_PROG
                        <option value="MK_MAN"> MK_MAN
                        <option value="MK_REP"> MK_REP
                        <option value="PR_REP"> PR_REP
                        <option value="PU_CLREK"> PU_CLREK
                        <option value="PU_MAN"> PU_MAN
                        <option value="SA_MAN"> SA_MAN
                        <option value="SA_REP"> SA_REP
                        <option value="SH_CLERK"> SH_CLREK
                        <option value="ST_CLREK"> ST_CLREK
                        <option value="ST_MAN"> ST_MAN
                    </select>
                        </td>
                </tr>
                <tr>            
                    <td>Salary</td>
                    <td>:</td>
                    <td><input type="text" name="salary" required="required"></td>
                </tr>
                <tr>            
                    <td>Commission Pct</td>
                    <td>:</td>
                    <td><input type="text" name="commission_pct" required="required"></td>
                </tr>
                <tr>            
                    <td>Manager ID</td>
                    <td>:</td>
                    <td><input type="text" name="manager_id" required="required"></td>
                </tr>
                <tr>            
                    <td>Department ID</td>
                    <td>:</td>
                    <td><select name="department_id" required="required">
                        <option value="10"> 10
                        <option value="20"> 20
                        <option value="30"> 30
                        <option value="40"> 40
                        <option value="50"> 50
                        <option value="60"> 60
                        <option value="70"> 70
                        <option value="80"> 80
                        <option value="90"> 90
                        <option value="100"> 100
                        <option value="110"> 110
                        <option value="120"> 120
                        <option value="130"> 130
                        <option value="140"> 140
                        <option value="150"> 150
                        <option value="160"> 160
                        <option value="170"> 170
                        <option value="180"> 180
                        <option value="190"> 190
                        <option value="200"> 200
                        <option value="210"> 210
                        <option value="220"> 220
                        <option value="230"> 230
                        <option value="240"> 240
                        <option value="250"> 250
                        <option value="260"> 260
                        <option value="270"> 270
                    </select>
                    </td>
                </tr>
            </table>
            <input type="submit" value="Simpan Data">
        </form>
    </body>
    </html>
    --------------------------------------------------------------------------------------------------------------------------
    Selajutnya adalah coba diperhatikan dulu, pada kode di atas ada sebuah action untuk formnya. kit diarahkan menuju route '/employees/store' ini yang akan menangani pemrosesan data yang diinput agar bisa diolah oleh controller. 

    Jika tombol simpan diklik kit belum bisa memasukkan dat ke database karena  kita belum punya aksi untuk mengolah data yang diinput agar diinsert ke database.

    Sekatang kita buat route baru lagi, yaitu route '/employees/store'

    hr2\routes\web.php



    Pada route ini kita menggunakan method post, tidak lag menggunakan method get seperti pada route sebelumnya. Route di atas akan mengirimkan data melalui form ke route  tersebut maka kita wajib menggunakan method post pada routenya.
    Route ini kita perintahkan untuk menjaankan methode store dalam controller, maka sekarang kita  buat lagi sebuah method baru dalam controller yakni method store

    hr2\app\Http\Controllers\hrController.php


    Setelah itu, teman-teman bisa menjalankan localhost:8000/employees pada browser masing-masing



    Sekian untuk tutorial kali. Terima Kasih Banyak!!

  • You might also like

Powered by Blogger.