- Pertama-tama aktifkan xampp anda terlebih dahulu, ikuti langkah tutorial sebelumnya .
- Buka salah satu Web Browser Anda Google Chrome, Mozilla, dll. Lalu ketik http://localhost/dashboard/ pada link URL anda.
![](https://i0.wp.com/www.rumahcoding.co.id/wp-content/uploads/2019/02/ss1-1-1024x524.png?resize=750%2C384&ssl=1)
3. Jika sudah muncul tampilan seperti gambar di atas, klik phpMyAdmin.
![](https://i0.wp.com/www.rumahcoding.co.id/wp-content/uploads/2019/02/ss2-1024x469.png?resize=750%2C344&ssl=1)
4. Klik New.
![](https://i0.wp.com/www.rumahcoding.co.id/wp-content/uploads/2019/02/n5-1024x354.png?resize=750%2C259&ssl=1)
5. Isikan nama tabel dengan lara_store . Lalu klik Create.
![](https://i0.wp.com/www.rumahcoding.co.id/wp-content/uploads/2019/02/ss3.png?resize=516%2C463&ssl=1)
6. Kemudian buka file .env di dalam folder LaraStore untuk pengaturan database, isi sesuai gambar di bawah
![](https://i0.wp.com/www.rumahcoding.co.id/wp-content/uploads/2019/02/s1.png?resize=497%2C120&ssl=1)
7. Sekarang, kita atur menu pada sidebar. Buka file sidebar.blade.php hapus baris code yg di block seperti gambar dibawah
![](https://i0.wp.com/www.rumahcoding.co.id/wp-content/uploads/2019/02/image-2.png?resize=750%2C386&ssl=1)
![](https://i0.wp.com/www.rumahcoding.co.id/wp-content/uploads/2019/02/image-3.png?resize=750%2C87&ssl=1)
8. Ubah baris code pada sidebar.blade.php seperti gambar dibawah
![](https://i0.wp.com/www.rumahcoding.co.id/wp-content/uploads/2019/02/image-6.png?resize=750%2C223&ssl=1)
9. Sekarang coba buka di browser nya, masukkan http://localhost/LaraStore/public/admin
![](https://i0.wp.com/www.rumahcoding.co.id/wp-content/uploads/2019/02/image-5-1024x467.png?resize=750%2C342&ssl=1)
10. Buatlah sebuah tabel dengan migration, menggunakan php artisan lewat cmd
![](https://i0.wp.com/www.rumahcoding.co.id/wp-content/uploads/2019/02/image-9.png?resize=538%2C19&ssl=1)
11. Kemudian buka folder database/migrations/ cari file dengan akhiran create_products_table.php, masukkan code seperti gambar di bawah
![](https://i0.wp.com/www.rumahcoding.co.id/wp-content/uploads/2019/02/image-10.png?resize=750%2C205&ssl=1)
12. Lalu hapus dua file paling atas dalam folder
database/migrations/
![](https://i0.wp.com/www.rumahcoding.co.id/wp-content/uploads/2019/02/image-11.png?resize=512%2C276&ssl=1)
![](https://i0.wp.com/www.rumahcoding.co.id/wp-content/uploads/2019/02/image-12.png?resize=353%2C92&ssl=1)
13. Gunakan perintah berikut untuk membuat tabel pada database
![](https://i0.wp.com/www.rumahcoding.co.id/wp-content/uploads/2019/02/image-13.png?resize=331%2C17&ssl=1)
apabila muncul keterangan seperti ini, maka tabel berhasil dibuat
![](https://i0.wp.com/www.rumahcoding.co.id/wp-content/uploads/2019/02/image-14.png?resize=385%2C46&ssl=1)
14. Sekarang kita buat model dari Product, masukkan perintah berikut
![](https://i0.wp.com/www.rumahcoding.co.id/wp-content/uploads/2019/02/image-15.png?resize=406%2C14&ssl=1)
15. Buatlah sebuah folder dengan nama product
![](https://i0.wp.com/www.rumahcoding.co.id/wp-content/uploads/2019/02/image-17.png?resize=160%2C138&ssl=1)
16. Install library tambahan untuk membuat form lebih mudah, masukkan perintah berikut
![](https://i0.wp.com/www.rumahcoding.co.id/wp-content/uploads/2019/02/image-18.png?resize=544%2C15&ssl=1)
17. Sekarang kita atur dalam config/app.php tambahkan code berikut
![](https://i0.wp.com/www.rumahcoding.co.id/wp-content/uploads/2019/02/image-19.png?resize=678%2C83&ssl=1)
![](https://i0.wp.com/www.rumahcoding.co.id/wp-content/uploads/2019/02/image-20.png?resize=560%2C141&ssl=1)
code diatas berada dalam ‘aliases’ =>
18. Buatlah sebuah file create.blade.php dalam folder product
![](https://i0.wp.com/www.rumahcoding.co.id/wp-content/uploads/2019/02/image-21.png?resize=206%2C158&ssl=1)
19. Masukkan code berikut ke dalam file create.blade.php
@extends('admin/admin') @section('content') <div class="row"> <div class="col-12"> {{ Form::open() }} <div class="card"> <div class="card-header"> <h3 class="card-title">Tambah Barang</h3> </div> <div class="card-body"> @if(!empty($errors->all())) <div class="alert alert-danger"> {{ Html::ul($errors->all())}} </div> @endif <div class="row"> <div class="col-md-6"> <div class="form-group"> {{ Form::label('name', 'Nama Barang') }} {{ Form::text('name', '', ['class'=>'form-control', 'placeholder'=>'Masukkan Nama Barang']) }} </div> <div class="form-group"> {{ Form::label('price', 'Harga Barang') }} {{ Form::text('price', '', ['class'=>'form-control', 'placeholder'=>'Masukkan Harga Barang']) }} </div> </div> <div class="col-md-6"> <div class="form-group"> {{ Form::label('condition', 'Kondisi Barang') }} {{ Form::select('condition', ['baru'=>'baru', 'bekas'=>'bekas'], null, ['class'=>'form-control']) }} </div> <div class="form-group"> {{ Form::label('image', 'Gambar Barang') }} {{ Form::file('imageFile', ['class'=>'form-control']) }} </div> </div> </div> <div class="row"> <div class="col-12"> {{ Form::label('description', 'Description') }} {{ Form::textarea('description', '', ['class'=>'form-control', 'placeholder'=>'Enter description', 'rows'=>5]) }} </div> </div> </div> <div class="card-footer"> <a href="{{ URL::to('admin') }}" class="btn btn-outline-info">Kembali</a> {{ Form::submit('Proses', ['class' => 'btn btn-primary pull-right']) }} </div> </div> <!-- </form> --> {{ Form::close() }} </div> </div> @endsection
20. Sekarang kita buat Product controller , serta route Resource agar mempermudah penggunaan method.
![](https://i0.wp.com/www.rumahcoding.co.id/wp-content/uploads/2019/02/image-22.png?resize=588%2C18&ssl=1)
21. Tambahkan Route::resource seperti gambar di bawah
![](https://i0.wp.com/www.rumahcoding.co.id/wp-content/uploads/2019/02/image-23.png?resize=662%2C233&ssl=1)
22. Buka file ProductController.php tambahkan code dalam method create( ) seperti gambar dibawah
![](https://i0.wp.com/www.rumahcoding.co.id/wp-content/uploads/2019/02/image-24.png?resize=641%2C128&ssl=1)
23. Sekarang coba buka di browser nya, masukkan http://localhost/LaraStore/public/admin/product/create
![](https://i0.wp.com/www.rumahcoding.co.id/wp-content/uploads/2019/02/image-25-1024x548.png?resize=750%2C401&ssl=1)
24. Tambahkan code berikut pada file create.blade.php
![](https://i0.wp.com/www.rumahcoding.co.id/wp-content/uploads/2019/02/image-26.png?resize=507%2C25&ssl=1)
25. Aktifkan folder public untuk menyimpan gambar
![](https://i0.wp.com/www.rumahcoding.co.id/wp-content/uploads/2019/02/image-27.png?resize=365%2C17&ssl=1)
26. Buka file ProductController.php tambahkan code seperti gambar di bawah
![](https://i0.wp.com/www.rumahcoding.co.id/wp-content/uploads/2019/02/image-28.png?resize=425%2C177&ssl=1)
27. Buka file ProductController.php tambahkan code dalam method store( )
public function store(Request $request) { // $rules =[ 'name'=>'required', 'price'=>'required|integer', 'imageFile'=>'required|mimes:jpg,png,jpeg,JPG', 'description'=>'required' ]; $pesan=[ 'name.required'=>'Nama Barang Tidak Boleh Kosong', 'price.required'=>'Harga Barang Tidak Boleh Kosong', 'imageFile.required'=>'Gambar Tidak Boleh Kosong', 'description.required'=>'Deskripsi Tidak Boleh Kosong' ]; $validator=Validator::make(Input::all(),$rules,$pesan); //jika data ada yang kosong if ($validator->fails()) { //refresh halaman return Redirect::to('admin/product/create') ->withErrors($validator); }else{ $image=$request->file('imageFile')->store('productImages','public'); $product=new \App\Product; $product->name=Input::get('name'); $product->condition=Input::get('condition'); $product->description=Input::get('description'); $product->price=Input::get('price'); $product->image=$image; $product->save(); Session::flash('message','Product Stored'); return "Berhasil Input Barang"; } }
28. Sekarang coba input data pada form tambah data, lihat apakah berhasil
![](https://i0.wp.com/www.rumahcoding.co.id/wp-content/uploads/2019/02/image-29-1024x510.png?resize=750%2C374&ssl=1)
![](https://i0.wp.com/www.rumahcoding.co.id/wp-content/uploads/2019/02/image-30.png?resize=567%2C123&ssl=1)
![](https://i0.wp.com/www.rumahcoding.co.id/wp-content/uploads/2019/02/image-31-1024x205.png?resize=750%2C150&ssl=1)
29. Buatlah sebuah file index.blade.php dalam folder product
![](https://i0.wp.com/www.rumahcoding.co.id/wp-content/uploads/2019/02/image-32.png?resize=207%2C114&ssl=1)
30. Masukkan code di bawah ini ke dalam index.blade.php
@extends('admin/admin') @section('content') <div class="row"> <div class="col-12"> <div class="card"> <div class="card-header"> <h3 class="card-title">Data Barang</h3> <div class="card-tools"> <a href="{{ URL::to('/admin/product/create')}}" class="btn btn-tool"> <i class="fa fa-plus"></i> Add </a> </div> </div> <div class="card-body"> @if (Session::has('message')) <div id="alert-msg" class="alert alert-success alert-dismissible"> <button type="button" class="close" data-dismiss="alert" aria-hidden="true">×</button> {{ Session::get('message') }} </div> @endif <div class="row"> <div class="col-md-12"> <table class="table table-bordered table-hover"> <thead> <tr class="text-center"> <th>ID</th> <th>Nama</th> <th>Harga</th> <th>Deskripsi</th> <th>Kondisi</th> <th>Gambar</th> <th>Aksi</th> </tr> </thead> <tbody> @foreach($products as $product) <tr> <td class="text-center">{{ $product['id'] }}</td> <td>{{ $product['name'] }}</td> <td>Rp. {{ $product['price'] }}</td> <td>{{ $product['description'] }}</td> <td>{{ $product['condition'] }}</td> <td class="text-center"><img src="{{ asset('storage/'.$product['image']) }}" width="100"/></td> <td class="text-center"> <form method="POST" action="{{ URL::to('/admin/product/'.$product['id']) }}"> {{ csrf_field() }} <input type="hidden" name="_method" value="DELETE" /> <div class="btn-group"> <a class="btn btn-info" href="{{ URL::to('/admin/product/'.$product['id']) }}"><i class="fa fa-eye"></i></a> <a class="btn btn-success" href="{{ URL::to('/admin/product/'.$product['id'].'/edit') }}"><i class="fa fa-pencil"></i></a> <button type="submit" class="btn btn-danger"><i class="fa fa-trash"></i></button> </div> </form> </td> </tr> @endforeach </tbody> </table> </div> </div> </div> </div> </div> </div> @endsection
31. Buka file ProductController.php tambahkan code dalam method index ( )
![](https://i0.wp.com/www.rumahcoding.co.id/wp-content/uploads/2019/02/image-33.png?resize=460%2C197&ssl=1)
32. Sekarang coba buka di browser nya, masukkan http://localhost/LaraStore/public/admin/product/
![](https://i0.wp.com/www.rumahcoding.co.id/wp-content/uploads/2019/02/image-34-1024x375.png?resize=750%2C275&ssl=1)
33. Buka file ProductController.php ubah code dalam method store ( )
![](https://i0.wp.com/www.rumahcoding.co.id/wp-content/uploads/2019/02/image-35.png?resize=562%2C109&ssl=1)
34. Buka file sidebar.blade.php ubah code seperti gambar di bawah
![](https://i0.wp.com/www.rumahcoding.co.id/wp-content/uploads/2019/02/image-36.png?resize=750%2C77&ssl=1)
35. Sekarang kita akan menampilkan detail barang, buatlah sebuah file show.blade.php dalam folder product
![](https://i0.wp.com/www.rumahcoding.co.id/wp-content/uploads/2019/02/image-37.png?resize=234%2C92&ssl=1)
36. Buka file show.blade.php tambahkan code di bawah
@extends('admin/admin') @section('content') <div class="row"> <div class="col-12"> <div class="card"> <div class="card-header"> <h3 class="card-title">Detail Barang</h3> </div> <div class="card-body"> <div class="row"> <div class="col-md-12"> <img src="{{ asset('storage/'.$product['image']) }}" height="200" width="100%"/> </div> </div> <div class="row"> <div class="col-md-6"> <div class="form-group"> <label for="name">Nama Barang</label> <input id="name" type="text" value="{{ $product['name'] }}" class="form-control" disabled /> </div> <div class="form-group"> <label for="price">Harga Barang</label> <input id="price" type="text" value="{{ $product['price'] }}" class="form-control" disabled /> </div> </div> <div class="col-md-6"> <div class="form-group"> <label for="status">Kondisi Barang</label> <input id="status" type="text" value="{{ $product['condition'] }}" class="form-control" disabled /> </div> </div> </div> <div class="row"> <div class="col-md-12"> <div class="form-group"> <label for="description">Description</label> <input id="description" type="text" value="{{ $product['description'] }}" class="form-control" disabled /> </div> </div> </div> </div> </div> </div> </div> @endsection
37. Buka file ProductController.php tambahkan code dalam method show ( )
![](https://i0.wp.com/www.rumahcoding.co.id/wp-content/uploads/2019/02/image-38.png?resize=430%2C166&ssl=1)
38. Klik simbol mata dalam kolom aksi pada salah satu data
![](https://i0.wp.com/www.rumahcoding.co.id/wp-content/uploads/2019/02/image-39.png?resize=191%2C110&ssl=1)
![](https://i0.wp.com/www.rumahcoding.co.id/wp-content/uploads/2019/02/image-40-1024x532.png?resize=750%2C390&ssl=1)
39. Sekarang kita akan membuat form untuk edit data, buatlah sebuah file edit.blade.php dalam folder product
![](https://i0.wp.com/www.rumahcoding.co.id/wp-content/uploads/2019/02/image-41.png?resize=230%2C117&ssl=1)
40. Buka file edit.blade.php tambahkan code di bawah
@extends('admin/admin') @section('content') <div class="row"> <div class="col-12"> {{ Form::model($product,['route'=>['product.update',$product['id']], 'files'=>true,'method'=>'PUT']) }} <div class="card"> <div class="card-header"> <h3 class="card-title">Ubah Data Barang</h3> </div> <div class="card-body"> @if(!empty($errors->all())) <div class="alert alert-danger"> {{ Html::ul($errors->all())}} </div> @endif <div class="row"> <div class="col-md-12"> <img src="{{ asset('storage/'.$product['image'])}}" width="100%" height="200"> </div> <div class="col-md-6"> <div class="form-group"> {{ Form::label('name', 'Nama Barang') }} {{ Form::text('name', $product['name'], ['class'=>'form-control', 'placeholder'=>'Masukkan Nama Barang']) }} </div> <div class="form-group"> {{ Form::label('price', 'Harga Barang') }} {{ Form::text('price', $product['price'], ['class'=>'form-control', 'placeholder'=>'Masukkan Harga Barang']) }} </div> </div> <div class="col-md-6"> <div class="form-group"> {{ Form::label('condition', 'Kondisi Barang') }} <select name="item_kind" class="form-control"> <option value="baru" {{ $product['condition']=='baru'?'selected':'' }}>Baru</option> <option value="bekas" {{ $product['condition']=='bekas'?'selected':'' }}>Bekas</option> </select> </div> <div class="form-group"> {{ Form::hidden('imagePath',$product['image'])}} {{ Form::label('image', 'Image') }} {{ Form::file('imageFile', ['class'=>'form-control']) }} </div> </div> </div> <div class="row"> <div class="col-12"> {{ Form::label('description', 'Description') }} {{ Form::textarea('description', $product['description'], ['class'=>'form-control', 'placeholder'=>'Enter description', 'rows'=>5]) }} </div> </div> </div> <div class="card-footer"> <a href="{{ URL::to('admin/product') }}" class="btn btn-outline-info">Back</a> {{ Form::submit('Proses', ['class' => 'btn btn-primary pull-right']) }} </div> </div> <!-- </form> --> {{ Form::close() }} </div> </div> @endsection
41. Buka file ProductController.php tambahkan code dalam method edit ( )
![](https://i0.wp.com/www.rumahcoding.co.id/wp-content/uploads/2019/02/image-42.png?resize=426%2C131&ssl=1)
42. Klik simbol pensil pada kolom aksi
![](https://i0.wp.com/www.rumahcoding.co.id/wp-content/uploads/2019/02/image-39.png?resize=191%2C110&ssl=1)
![](https://i0.wp.com/www.rumahcoding.co.id/wp-content/uploads/2019/02/image-43-1024x655.png?resize=750%2C480&ssl=1)
43. Buka file ProductController.php tambahkan code dalam method update ( )
public function update(Request $request, $id) { // $rules=[ 'name'=>'required', 'price'=>'required|integer', 'description'=>'required', ]; $pesan=[ 'name.required'=>'Nama Tidak Boleh Kosong!!', 'price.required'=>'Harga Tidak Boleh Kosong!!', 'description.required'=>'Deskripsi Barang Tidak Boleh Kosong!!', ]; $validator=Validator::make(Input::all(),$rules,$pesan); if ($validator->fails()) { return Redirect::to('admin/product/'.$id.'/edit') ->withErrors($validator); }else{ $image=""; if (!$request->file('imageFile')) { # code... $image=Input::get('imagePath'); }else{ $image=$request->file('imageFile')->store('productImages','public'); } $product=\App\Product::find($id); $product->name=Input::get('name'); $product->condition=Input::get('condition'); $product->price=Input::get('price'); $product->description=Input::get('description'); $product->image=$image; $product->save(); Session::flash('message','Data Barang Berhasil Diubah'); return Redirect::to('admin/product'); } }
44. Sekarang coba anda ubah salah satu data barang
![](https://i0.wp.com/www.rumahcoding.co.id/wp-content/uploads/2019/02/image-44-1024x362.png?resize=750%2C265&ssl=1)
45. Terakhir kita aktifkan fungsi hapus, buka file ProductController.php tambahkan code dalam method delete ( )
![](https://i0.wp.com/www.rumahcoding.co.id/wp-content/uploads/2019/02/image-45.png?resize=395%2C164&ssl=1)
46. Coba hapus salah satu data dengan klik simbol tong sampah
![](https://i0.wp.com/www.rumahcoding.co.id/wp-content/uploads/2019/02/image-39.png?resize=191%2C110&ssl=1)
![](https://i0.wp.com/www.rumahcoding.co.id/wp-content/uploads/2019/02/image-46-1024x292.png?resize=750%2C214&ssl=1)
1 Comment
TUTORIAL 3 : Register dan Login Menggunakan Laravel - Rumah Coding · February 27, 2019 at 10:06 am
[…] Pada tutorial ini, melanjutkan dari tutorial sebelumnya […]