Oke teman-teman setelah kita berhasil menjalankan proses Read atau menampilkan data dari database dengan Laravel, maka selanjutnya akan kita bahas membuat input data ke database dengan Laravel.
Untuk menginputkan data ke database maka kita perlu sebuah form data yang mewakili baris data tabel “kontaks” pada database. Sehingga kita perlu menambahkan satu file view “create.blade.php” pada folder “resources/views/kontak/create.blade.php”.
Buka jendela Terminal/ Command Prompt, masih aktif pada project Laravel ketikkan perintah berikut:
cd resources/views/kontak
touch create.blade.php
Seperti tampak pada gambar berikut:
Selanjutnya kita buka file view “create.blade.php” yang telah kita buat, dan ketikkan kode berikut kemudian simpan.
@extends('layouts.app')
@section('content')
<div class="container">
<div class="row justify-content-center">
<div class="col-md-8">
<div class="card">
<div class="card-header">Tambah Data</div>
<div class="card-body">
<form method="POST" action="{{ route('kontak.store') }}">
@csrf
<div class="form-group row">
<label for="email" class="col-md-4 col-form-label text-md-right">Nama Lengkap</label>
<div class="col-md-6">
<input id="nama_lengkap" type="text" class="form-control @error('nama_lengkap') is-invalid @enderror" name="nama_lengkap" value="{{ old('nama_lengkap') }}" required autocomplete="nama_lengkap" autofocus>
@error('nama_lengkap')
<span class="invalid-feedback" role="alert">
<strong>{{ $message }}</strong>
</span>
@enderror
</div>
</div>
<div class="form-group row">
<label for="email" class="col-md-4 col-form-label text-md-right">E-Mail</label>
<div class="col-md-6">
<input id="email" type="email" class="form-control @error('email') is-invalid @enderror" name="email" value="{{ old('email') }}" required autocomplete="email" autofocus>
@error('email')
<span class="invalid-feedback" role="alert">
<strong>{{ $message }}</strong>
</span>
@enderror
</div>
</div>
<div class="form-group row">
<label for="email" class="col-md-4 col-form-label text-md-right">Pekerjaan</label>
<div class="col-md-6">
<input id="pekerjaan" type="text" class="form-control @error('pekerjaan') is-invalid @enderror" name="pekerjaan" value="{{ old('pekerjaan') }}" required autocomplete="pekerjaan" autofocus>
@error('pekerjaan')
<span class="invalid-feedback" role="alert">
<strong>{{ $message }}</strong>
</span>
@enderror
</div>
</div>
<div class="form-group row">
<label for="email" class="col-md-4 col-form-label text-md-right">Alamat</label>
<div class="col-md-6">
<textarea id="alamat" class="form-control @error('alamat') is-invalid @enderror" name="alamat" value="{{ old('alamat') }}" required autocomplete="alamat" autofocus></textarea>
@error('alamat')
<span class="invalid-feedback" role="alert">
<strong>{{ $message }}</strong>
</span>
@enderror
</div>
</div>
<div class="form-group row mb-0">
<div class="col-md-8 offset-md-4">
<button type="submit" class="btn btn-primary">
{{ __('Simpan') }}
</button>
</div>
</div>
</form>
</div>
</div>
</div>
</div>
</div>
@endsection
Kemudian mari kita panggil melalui controller. Buka file controller “KontakController.php” pada folder “app/Http/Controllers/KontakController.php”, kemudian ketikkan kode berikut pada method create():
public function create()
{
return view('kontak.create');
}
Dan tambahkan kode berikut pada method strore()
public function store(Request $request)
{
//pertama cek validasi
$this->validate($request,[
'nama_lengkap' => 'required',
'email' => 'required',
'pekerjaan' => 'required',
'alamat' => 'required'
]);
//selanjutnya insert ke database
DB::table('kontaks')->insert([
'nama_lengkap' => $request->nama_lengkap,
'email' => $request->email,
'pekerjaan' => $request->pekerjaan,
'alamat' => $request->alamat
]);
//setelah berhasil insert di redirect
return redirect('/kontak')->with('status','Data Kontak Berhasil Ditambahkan');
}
Kemudian buka jendela web browser anda, dan akses url berikut
localhost:8000/kontak/create
Jika berjalan dengan baik, maka akan ditampilkan form input data seperti berikut:
Teman-teman bisa isikan data dan menekan tombol “simpan”, maka data akan dikirim ke database.
Oke, sampai disini proses membuat input data ke database dengan Laravel selesai, selanjutnya kita bahas fungsi edit dan update data di Laravel.
Membuat Edit dan Update Data di Laravel (Update)