Assalamualaikum Warrahmatullahi Wabarakatuh
Halo teman – teman sekarang kita lanjutkan dengan membuat
create tabel dengan DB Façade. Sebelumnya, kita sudah belajar membuat Database
Migration terlebih dahulu untuk mempelajari kedalam bab selanjutnya yaitu
Create Data. Basic nya kita membuat CRUD di laravel. Sebelumnya yang ingin
mengetahui tentang Database Migration bisa klik DISINI!!
Langsung saja cekidot!!!
CREATE
DATA DENGAN DB (1)
Buka file
resources/views/belajar.blade.php, tambahkan link menuju form add
Note :
URL digunakan untuk menciptakan URL menuju url tertentu. URL
yang diciptakan akan ditambahkan base_url dari project anda.
Misal: url(‘/siswa/create’), maka yang akan muncul di HTML nya adalah http://localhost/laravel5.7-fresh/public/belajar/create
CREATE
DATA DENGAN DB (2)
Buka file routes/web.php,
tambahkan route create
Perintah pada baris 19 akan
mengarahkan route /siswa/create ke function create pada
controller SiswaController
Ubah
juga route /belajar ke /siswa
CREATE DATA DENGAN DB (3)
Buka
file app/Http/Controllers/SiswaController.php
Menampilkan view dengan nama form
yang terdapat pada folder siswa
CREATE DATA DENGAN DB (4)
Buat
file resources/views/siswa/form.blade.php
Note:
Fungsi ini sudah memakai old,
penjelasan nya ada di bawah!
PENJELASAN @CSRF
csrf_token()
Digunakan untuk membuat csrf
token
csrf_field()
Digunakan untuk membuat
input hidden _token beserta token nya
<input type=“hidden”
name=“_token” value=“xxxxxxxxx”
@csrf
Fitur dari blade, sama dengan
csrf_field, namun tidak perlu menggunakan bracket ( {{ }} ) untuk menampilkannya
di HTML.
@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.
CREATE DATA DENGAN DB (5)
Buka
file routes/web.php, tambahkan route post
Perintah pada baris 20 akan
mengarahkan route /siswa dengan method request POST ke function store
pada controller SiswaController
CREATE DATA DENGAN DB (6)
Buka
file app/Http/Controllers/SiswaController.php, tambahkan fungsi store
Note :
Kalian bebas menggunakan fungsi
mana saja karena disana saya menggunakan garis miring yang fungsinya sama hanya
saja di garis miring agar mudah.
Cek Browser (1)
Cek Browser (2)
NAH SEKARANG BAGAIMANA
CARA MENAMPILKAN MESSAGE SUKSES / ERORR?
SUCCESS / ERROR MESSAGE
FEEDBACK
Nah gimana sih cara membuat Message
error atau sukses? Langsung saja kita praktekan!
Buka
file resources/views/belajar.blade.php
PENJELASAN @IF dan @ENDIF
Digunakan untuk menampilkan suatu
bagian pada HTML ketika kondisi pada PHP terpenuhi
@if(session(‘success’))
Pada contoh diatas, tampilkan div
dengan class success jika session(‘success’) tidak kosong. Div
tersebut berisikan data/pesan yang ada pada session(‘success’) tersebut
Perhatikan penempatan blok @endif
INPUT VALIDATION
VALIDASI INPUT (1)
Validasi
Input Menggunakan Validation
Untuk melakukan validasi input agar
sesuai dengan yang diharapkan, Laravel sudah menyediakan fiturnya yaitu dengan
menggunakan Facades Validator atau function validate.
VALIDASI INPUT (2)
Buka
file app/Http/Controllers/SiswaController.php, tambahkan code di fungsi store
VALIDASI INPUT (3)
Buka
file resources/views/siswa/form.blade.php, tambahkan di paling atas
Cek Browser
DISPLAYING USER’S OLD
VALUE
MENAMPILKAN VALUE SEBELUMNYA (1)
Menggunakan fungsi old
Ketika form tidak lengkap atau
tidak sesuai dengan rules, seharusnya form yang sudah diisi oleh user yang
sebelumnya harus tetap muncul
MENAMPILKAN VALUE SEBELUMNYA (2)
Buka
file resources/views/siswa/form.blade.php, tambahkan di paling atas
Bentuk umum untuk menampilkan value
yang user input:
<input ………………
value=“{{ old(‘nama_field’) }}” />
STUDI
KASUS
STUDI KASUS 1
1. Lakukan hal
yang sama seperti yang sudah dijelaskan pada slide sebelumnya untuk tabel
t_kelas. Buatlah tampilan form untuk menambahkan data kelas.
2. Implementasikan
validasi untuk tabel t_kelas, cobalah beberapa validasi yang berbeda selain
yang sudah dijelaskan (tidak boleh validasi numeric, string dan max)
CREATE
DATA DENGAN DB (1)
Buka file
resources/views/kelas.blade.php, tambahkan link menuju form add
CREATE
DATA DENGAN DB (2)
Buka file routes/web.php,
tambahkan route create
Perintah pada baris 19 akan
mengarahkan route /kelas/create ke function create pada
controller KelasController
Ubah
juga route /belajar ke /kelas
CREATE DATA DENGAN DB (3)
Buka
file app/Http/Controllers/KelasController.php
Menampilkan view dengan nama form
yang terdapat pada folder kelas
CREATE DATA DENGAN DB (4)
Buat
file resources/views/kelas/form.blade.php
Note:
Fungsi ini sudah memakai old,
penjelasan nya ada di bawah!
CREATE DATA DENGAN DB (5)
Buka
file routes/web.php, tambahkan route post
Perintah pada baris 20 akan
mengarahkan route /kelas dengan method request POST ke function store
pada controller KelasController
CREATE DATA DENGAN DB (6)
Buka
file app/Http/Controllers/KelasController.php, tambahkan fungsi store
Note :
Kalian bebas menggunakan fungsi
mana saja karena disana saya menggunakan garis miring yang fungsinya sama hanya
saja di garis miring agar mudah.
Cek Browser (1)
Cek Browser (2)
SUCCESS / ERROR MESSAGE
FEEDBACK
Buka
file resources/views/kelas.blade.php
INPUT VALIDATION
VALIDASI INPUT (1)
Validasi
Input Menggunakan Validation
Untuk melakukan validasi input agar
sesuai dengan yang diharapkan, Laravel sudah menyediakan fiturnya yaitu dengan
menggunakan Facades Validator atau function validate.
VALIDASI INPUT (2)
Buka
file app/Http/Controllers/KelasController.php, tambahkan code di fungsi store
VALIDASI INPUT (3)
Buka
file resources/views/kelas/form.blade.php, tambahkan di paling atas
Cek Browser
DISPLAYING USER’S OLD
VALUE
MENAMPILKAN VALUE SEBELUMNYA (1)
Menggunakan fungsi old
Ketika form tidak lengkap atau
tidak sesuai dengan rules, seharusnya form yang sudah diisi oleh user yang
sebelumnya harus tetap muncul
MENAMPILKAN VALUE SEBELUMNYA (2)
Buka
file resources/views/siswa/form.blade.php, tambahkan di paling atas
Bentuk umum untuk menampilkan value
yang user input:
<input ………………
value=“{{ old(‘nama_field’) }}” />
STUDI KASUS 2
1. Di tutorial
ini terdapat BUG, temukan BUG nya dan pecahkan solusi dari BUG tersebut!
Jadi, saya
menemukan BUG di dalam fungsi nama_kelas. Jika di tambahkan unique fungsi jadi
error dan tidak bisa di input. Jadi, saya menggunakan unique:t_kelas,jurusan
dan lokasi ruangan untuk mencegah double data.
STUDI KASUS 3
1. Sudah
menangkap maksud dari fungsi old? Implementasikan fungsi tersebut untuk field
berjenis radio button dan field berjenis select option pada form siswa (Field
jenkel dan goldar)!
SEKIAN!!
Nah, mungkin itu yang bisa aku bahas kurang lebihnya mohon di beri tahu karena saya juga sama sama belajar. Next kita akan membuat EDIT dan DELETE ya! Stay tune di Blog aku.
Waasalamualaikum Warrahmatullahi Wabarakatu
Tidak ada komentar:
Posting Komentar