Langsung ke konten utama

CREATE DATA WITH Laravel || Praktikum 12

CREATE DATA WITH DB FACADE 



CREATE DATA WITH DB FACADE

Menabah data pada data abse dengan laravel.

untuk kali ini pembahasanya adalah bagaimana cara membuat create data dengan frame work laravel dan bagaimana membuat form inputan dan validasi apda laravel.

Penjelasan Awal
 
 Di laravel menambah data sangantlah mudah  tidak perlu membuat panjang - panjang query untuk meninsert data ke data base.

yang peratama ahrus di  lalukan buat lah halaman untuk menampilkan data yang sudah kita insert tadi

sebagai contoh saya membuat halaman utama data kelas



Butlah button / url untuk menuju halaman insert data.

 <a href="{{url('/create')}}" class="btn alert-primary">Tambah data</a>
Priviewnya seperti gamabr diatas.

url ini diguanakan untuk menuju pada loaksi tertentu. contohnya  {{url('/create')}}
maka lokasi tujuanya dalah halaman dengan nama create  tadi yitu halaman insert data yang akan di buat.

Setelah itu buatlah pada route:: yaitu di web.php sebagai berikut

Route::get('/'"Kelas@index");
Route::get('/belajar''Kelas@index');
Route::get('/create''Kelas@create');

(Kelas) kelas ini berasal dari controller yang di buat.

Setelah itu kita buat fungsi create pada controller Kelas.

    public function create()
    {
        return view('kelas.form');
    }

nah pada fungsi create ini berfungsi sebagai ketika url button yang di buat di klik maka akan menuju function create dan me return kelas.form, kelas ini sebagai folder tempat menyimpan form untuk meng insert data.

<h1>Form Siswa</h1>
<form action="{{ url('kelas'}}" method="post">
    @csrf
    <div>
        Nama Kelas   : <input type="text" name="kelas" value="{{ old('kelas')}}"><br>
    </div>
    <div>
        Nama Jurusan : <input type="text" name="jurusan" value="{{ old('jurusan')}}"><br>
    </div>
    <div>
        Nama Wali Kelas : <input type="text" name="wali_kelas" value="{{ old('wali_kelas')}}"><br>  
    </div>
    <div>
        lLokasi ruangan : <input type="text" name="lokasi_ruangan" value="{{ old('lokasi_ruangan')}}"><br>
    </div>
    <input type="submit" value="Simpan">
    
</form>

ini sebagai contoh form insert data kelas nya :
action="{{ url('kelas'}}"
pada ction  ini mengarah pada kelas, unutk kelas ini kana menuju pada controller  dan akan menjalan kan fungsi apda cotrller kelas

@csrf 

Setiap request yang memiliki method selain GET (POST, PUT, PATCH, DELETE), syntax diatas wajib digunakan didalam form sebagai fungsi keamanan dari serangan CSRF.

CSRF (Cross-Site Request Forgery) merupakan bentuk eksploitasi website yang dieksekusi atas wewenang korban, tanpa dikehendakinya. CSRF menipu web site melalui request dari user yang dipercaya. Serangan bekerja melalui link atau script pada halaman site yang diakses user.
value="{{ old('kelas')}}"

nah fungsi utama dari ini adalah contoh naya ketika adata yang di input user gagal maka data yang sebelumnya di input akan tetap ada.

Setelah itu untuk menagrahkan data  dan menginsert data pada data base  pertama
buat lah  route:: untuk mengarahkanya ke kelas controller.

Route::post('/kelas''Kelas@store');

dan ini function untuk meng insert datanya.

public function store(Request $request)
    {  
        $input  = $request->all();
        unset($input['_token']);
        
        $status = \DB::table('t_kelas')->insert($input);
        if ($status) {
            return redirect('/belajar')->with('success','Data Berhasil Ditambahkan');
        }else {
            return redirect('/kelas/create')->with('error','Data Gagal Ditambahkan');            
        }
    }

nah pada ini adapbila data berhasil di insert maka akan langsung diarahkan ke halaman utama dan jika gagal maka akan tetap berada pada halaman input data.

Selanjutnya  ada untuk membaut validasi

public function store(Request $request)
    {
        $rule = 
        [
            'kelas' => 'required',
            'jurusan' => 'required',
            'wali_kelas' => 'required',
            'lokasi_ruangan' => 'required|max:5',
        ];
        $messages = [
            'required' => 'Isi Data terlebih dahulu dengan Benar!',
        ];
        $this->validate($request$rule$messages);
        
        $input  = $request->all();
        unset($input['_token']);
        
        $status = \DB::table('t_kelas')->insert($input);
        if ($status) {
            return redirect('/belajar')->with('success','Data Berhasil Ditambahkan');
        }else {
            return redirect('/kelas/create')->with('error','Data Gagal Ditambahkan');            
        }
    }

untuk validasi ketika data yang di input salah maka akan memunculkan pesan danger!



1. Studi Kasus  & Penyelesaianya

Data kelas :



kodinganya :

<h1>
    <p>Tabel Kelas</p>
</h1>
<br>
@if(session('success'))
<div class="alert alert-success">
    {{ session('success'}}
</div>
@endif

@if(session('error'))
<div class="alert alert-error">
    {{ session('error'}}
</div>
@endif
<br>
<div>
    <a href="{{url('/create')}}" class="btn alert-primary">Tambah data</a>
</div>

<br>
{{-- {{ dd($siswa) }} --}}
<table class="table">
    <tr>
        <th>no</th>
        <th>Kelas</th>
        <th>Nama Jurusan</th>
        <th>Nama Wali</th>
        <th>Lokasi Ruangan</th>
    </tr>
    @foreach ($kelas as $row)

    <tr>
        <td>{{ $loop->iteration }}</td>
        <td>{{ $row->kelas  }}</td>
        <td>{{ $row->jurusan }} </td>
        <td>{{ $row->wali_kelas}} </td>
        <td>{{ $row->lokasi_ruangan }}</td>
    </tr>
    @endforeach
</table>


Kelas controller nya :

<?php

namespace App\Http\Controllers;

use Illuminate\Http\Request;

class Kelas extends Controller
{   
    public function index(){
        $data['kelas'= \DB::table('t_kelas')
        ->get();
        return view('belajar'$data);
    }

    public function create()
    {
        return view('kelas.form');
    }
    public function store(Request $request)
    {
        $rule = 
        [
            'kelas' => 'required',
            'jurusan' => 'required',
            'wali_kelas' => 'required',
            'lokasi_ruangan' => 'required|max:5',
        ];
        $messages = [
            'required' => 'Isi Data terlebih dahulu dengan Benar!',
        ];
        $this->validate($request$rule$messages);
        
        $input  = $request->all();
        unset($input['_token']);
        
        $status = \DB::table('t_kelas')->insert($input);
        if ($status) {
            return redirect('/belajar')->with('success','Data Berhasil Ditambahkan');
        }else {
            return redirect('/kelas/create')->with('error','Data Gagal Ditambahkan');            
        }
    }

}

untuk Form input Data kelas;

@if(session('error'))
<div class="alert alert-error">
    {{ session('error'}}
</div>
@endif

@if (count($errors> 0)
<div class="alert alert-danger">
    <strong>Perhatian</strong>
    <br>
    <ul>
        @foreach ($errors->all() as $error)
        <li>{{ $error }}</li>
        @endforeach
    </ul>
</div>
@endif
<h1>Form Siswa</h1>
<form action="{{ url('kelas'}}" method="post">
    @csrf
    <div>
        Nama Kelas   : <input type="text" name="kelas" value="{{ old('kelas')}}"><br>
    </div>
    <div>
        Nama Jurusan : <input type="text" name="jurusan" value="{{ old('jurusan')}}"><br>
    </div>
    <div>
        Nama Wali Kelas : <input type="text" name="wali_kelas" value="{{ old('wali_kelas')}}"><br>  
    </div>
    <div>
        lLokasi ruangan : <input type="text" name="lokasi_ruangan" value="{{ old('lokasi_ruangan')}}"><br>
    </div>
    <input type="submit" value="Simpan">
    
</form>


Previewnya  :




Ketika tidak ada data yang dimasukan :

 

Data yang Di Masukan Salah 
menjalankan {{(old(' '))}}
Data yang sebelumnya di input tetap ada

 
 Insert Data


hasilnya:





Sekian Pembahasan Kali ini Terma Kasihh....

Komentar

Postingan populer dari blog ini

Struktur Kontrol - Percabangan di PHP || Praktikum 21

halo selamat berjumpa lagi di blog Praktikum.. Pembahasan kali ini adalah mengenai pembahasan : Struktur Kontrol - Percabangan di PHP Percabangan Percabangan (decision-making) sebagai cara untuk untuk memeriksa isi suatu variabel atau hasil perhitungan ekspresi dan mengambil tindakan yang sesuai dengan kondisi variable tersebut. macam macam percabangan Bentuk If (If-else, If- else if – else, Nested If) Bentuk Switch-case Ternary( ?: ) Bentuk IF-Else if(condition){ // statement 1 goes here }else{ // statemant 2 goes here } // statement 3 goes here Bentuk IF-Else If if(condition1){ // statement 1 }elseif(condition2){ // statement 2 }else{ // statement 3 } // statement 4 Nested IF( If Bersarang) if(condition){ if(condition1){    //statement 1 goes here }else{    // statemant 2 goes here } }else{ // statemant 3 goes here } Switch-case switch(a){ case 1; // statement 1 goes here break; case 2; // statement 2 goes here break; case 3; //

Searching dan Ordering || Praktikum 31

Assalamualaiku.. Halo berjumpa lagi di blog praktikum.. kali ini saya akan membahas bagai mana searching dan ordering searching dan ordering ini digunakan untuk mencari sebuah data dengan kata kunci dan ordering digunakan untuk menglist atau mengururtkan data sesuang dengan angka atau huruf tertentu. Searching pada searching ini kita gunakan kondisi dan query sebagai berikut: yang pertama harus kita lakukan adalah membuat form yang berfungsi se4bgai <form action="index.php" method="get">             <table>                 <tr>                     <td>Cari Berdasarkan NIS dan NAMA                         <input autocomplete="off" required type="text" name="search" class="in" value="<?= @$search ?>">                         <button class="but" type="submit">Cari</button>                         <a href="tambah.php">

Introducing Framework Laravel || Praktikum

  Hallo Selamt Datang.. Kali ini Pembahsan Tentang FrameWork  Laravel Aadalah pengembangan website berbasis MVP yang ditulis dalam PHP yang dirancang untuk meningkatkan kualitas perangkat lunak dengan mengurangi biaya pengembangan awal dan biaya pemeliharaan, dan untuk meningkatkan pengalaman bekerja dengan aplikasi dengan menyediakan sintaks yang ekspresif, jelas dan menghemat waktu.  Sebenarnya Framwork Php banyak jenisnya dan mempunyai berbagai keunggulan masing masing akan tetapi laravel menurut saya lebih mudah digunakan. Beberapa fitur yang terdapat di Laravel : Bundles, yaitu sebuah fitur dengan sistem pengemasan modular dan tersedia beragam di aplikasi. Eloquent ORM, merupakan penerapan PHP lanjutan menyediakan metode internal dari pola “active record” yang menagatasi masalah pada hubungan objek database. Application Logic, merupakan bagian dari aplikasi, menggunakan controller atau bagian Route. Reverse Routing, mendefinisikan relasi atau hub