inlinecss

WELCOME TO SCHOOLBLOG

Minggu, 29 Maret 2020

Create Data with DB, Validation, and Old input

Assalamualaikum Wr, Wb.

Welcome back in SchoolBlog!! Saya Muhamad Syahrul Ramadhan akan terus mentransferkan ilmu yang sudah saha pelajari dikelas kepada kalian semua para pembaca blog ini. And today in this postingan, saya akan membahas mengenai yang tertulis di judul.. Okey langsung saja kepembahasannya yuk!

*postingan ini adalah lanjutan dari postingan sebelumnya yang membahas mengenai 

Create Data with Database Facade

Step 1
Buka file siswa.blade.php, tambahkan link menuju form add seperti ini :
<a href="{{ url('/siswa/create') }}">Tambah Data</a>

Penjelasan
URL digunakan untuk menciptakan URL menuju url tertentu. URL yang diciptakan akan ditambahkan base_url dari project anda.
Misal: url('/siswa/crete'), maka yang akan muncul di HTML-nya adalah http://localhost/laravel/public/siswa/create

Step 2
Buka file web.php, tambahkan route create seperti ini :
Route::get('/kelas/create', 'KelasController@create');
   Perintah tersebut akan mengarahkan route /siswa/create ke function create pada controller SiswaController

Step 3
Buka file SiswaController.php. Lalu tambahkan tag seperti ini :

Tag tersebut untuk menampilkan view dengan nama Form yang terdatap pada folder siswa di resource.

Step 4
Buat file form.blade.php, pada folder siswa di resource/views. Dengan format :


Penjelasan
   csrf_token() digunakan untuk membuat csrf token.
csrf_field() digunakan untuk membuat input hidden _token beserta tokennya. Contoh tag :
<input type="hidden" name="_token" valuew=" "
   @csrf adalah fitur dari blade, sama dengan csrf_field, namun tidak perlu menggunakan bracket ({{}}) untuk menampilkannya di HTML. Setiap request yang memiliki method selain GET, wajib digunakan didalam form sebagai fungsi keamanan dari serangan CSRF.
   CSRF (Cross-Site Request Forgery) merupakan bentuk eksploitast website yang dieksekusi atas wewenang korban, tanpa dikehendakinya.CSRF menipu web site melalui request dari user yang dipercaya. Serangan bekerja melalui link atau scrip pada halaman site yang diakses user.

Step 4
Buka file web.php, tambahkan route post seperti ini :
Route::post('/kelas', 'KelasController@store');
   Perintah tersebut akan mengarahkan route /siswa dengan methode POST ke function store pada controller SiswaController.

Step 5
Buka file SiswaController.php, tambahkan fungsi store :


Coba di Browser :
tabel siswa

form siswa 

setelah di submit

Success/Error Message Feedback

Buka file siswa.blade.php :


Penjelasan
@if digunakan untuk menampilkan suatu bagian pada HTML ketika kondisi pada PHP trepenuhi.

Coba di Browser
Maka akan muncul tamoilan ini dengan pesan Data berhasil di Tambahkan

Input Validation

Untuk melakukan validasi input agar sesuai dengan yang diharapkan, Laravel sudah menyediakan fiturnya yaitu dengan menggunakan Facades Validator atau function validate.

Step 1
Buka file SiswaController.php, tambahkan code di fungsi store :


Step 2
Buka file form.blade.php, lalu tambahkan di paling atas :


Coba di Browser :
akan tampil error seperti ini jika field yang diisi belum sesuai dengan yanga ada di rule.

Penjelasan
   Cara menulis rule adalah dengan membuat array asosiatif yang didalmnya berisi key yang berupa nama field yang ada pada form dan value yang berisi string validasinya. Jika terdapat lebih dari 2 validasi, digunakan simbil | jika string validasi memerlukan parameter, gunakan simbol titik dua.


Displaying User's Old Value

Ketika form tidak lengkap atau tidak sesuai dengan rules, seharusnya form yang sudah diisi oleh user yang sebelunya harus tetap muncul.

Buka file form.blade.php, lalu tamabahkan jadi seperti ini :



Studi Kasus

1. Lakukan hal seperti yang sudah dijelaskan pada slide sebelumnya untuk tabel t_kelas. Buatlah tampilan form untuk menambahkan data kelas. lalu implementasikan validasi nya.

Web.php :

KelasController.php :

kelas.blade.php :

form.blade.php :


Coba di Browser :
tabel kelas
form kelas 
validasi 
message feedback 


2.  Temukan BUG pada tutorial ini!

Menurut saya tidak ada bug, hanya saja ada kesalahan dalam penempatan koma yang seharusnya tidak perlu karena sudah tidak ada variable untuk selajutnya.


3. Implementasilan fungsi old untuk field berjenis radio button dan field berjenis optio pada form siswa (Field jenis kelamin dan golongan darah).

Untuk Jenis kelamin :

Untuk Golongan darah :




Alhamdulillah sudah sampai di ujung postingan yang lumbayan banyak ini. Semoga membantu dan mudah di pahami. Mohon maaf bila ada salah kata atau typo.

Wassalamualaikum Wr, Wb.

Tidak ada komentar:

Posting Komentar