• Skip to primary navigation
  • Skip to main content
  • Skip to primary sidebar

Jaranguda

Belajar Mengajar

  • Home
  • Sponsor/Jasa
  • Tentang

Aplikasi CRUD di Laravel 5

Last Updated on 10 November 2017 By tommy 12 Comments

Untuk Laravel 5.5 bisa dilihat di Contoh Script PHP CRUD di Laravel 5.5

Disini kita akan menggunakan artisan untuk mempercepat pembuatan database dan controller.

Sebagai contoh kita akan membuat tabel mobil jalankan artisan

php artisan make:migration tabel_mobil
## output
Created Migration: 2015_04_08_050530_tabel_mobil

file yang baru dibuat berada di database/migrations. Edit file tersebut ubah menjadi

<?php
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Database\Migrations\Migration;
 
class TabelMobil extends Migration {
 
	/**
	 * Run the migrations.
	 *
	 * @return void
	 */
	public function up()
	{
		Schema::create('mobil', function(Blueprint $table)
		{
			$table->increments('id');
			$table->string('NOPOL');
			$table->string('merek_mobil');
			$table->timestamps();
		});		
	}
 
	/**
	 * Reverse the migrations.
	 *
	 * @return void
	 */
	public function down()
	{
		Schema::drop('mobil');
	}
 
}

gunakan artisan untuk membuat tabel diatas.

php artisan migrate 
## output
Migrated: 2015_04_08_050530_tabel_mobil

Buat controller baru dengan nama MobilController

php artisan make:controller MobilController
## output
Controller created successfully.

Buat routes untuk controller yang baru dibuat, tambahkan

Route::resource('mobil','MobilController');

di file app/Http/routes.php

Buat model

php artisan make:model Mobil --no-migration

Sebenarnya pembuatan Model dan Tabel database diatas bisa di persingkat dengan (php artisan make:model Mobil). Tapi karna kebiasaan :P jadi masih pake cara diatas.
di file composer.json tambahkan

 "illuminate/html": "5.*"

dibawah

"laravel/framework": "5.0.*",

lalu update dengan cara

composer update

Untuk tampilan web yang akan kita buat, semuanya diletakkan di folder resources/views/mobil buat terlebih folder tersebut

## cara ini khusus di linux
mkdir resources/views/mobil
## buat 4 buat file untuk UI CRUD
touch create.blade.php  edit.blade.php  index.blade.php  show.blade.php

di resources/views tambahkan file app.blade.php (resources/views/app.blade.php) yang isinya

<!doctype html>
<html lang="en">
 
<head>
    <meta charset="utf-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1">
	<title>Aplikasi</title>
	<link rel="stylesheet" href="//maxcdn.bootstrapcdn.com/bootstrap/3.3.4/css/bootstrap.min.css">
</head>
 
<body>
	<div class="container">
		@yield('content')
	</div>
 
 
	@yield('footer')
 
</body>

file diatas adalah template yang akan digunakan untuk aplikasi yang akan kita buat.

Semua file yang dibutuhkan sudah selesai, sekarang bagian coding. Edit file model Mobil.php (app/Mobil.php) ubah menjadi

<?php namespace App;
 
use Illuminate\Database\Eloquent\Model;
 
class Mobil extends Model {
 
    protected $table = 'mobil';
    protected $fillable = [
    'NOPOL', 
    'merek_mobil',
    ];	
 
}

Edit file MobilController.php tambahkan dibagian atas

use App\Mobil;

karena kita belum punya data, jadi kita akan membuat form untuk menambah data terlebih dahulu, di MobilController.php sesuaikan dengan script dibawah

	public function index()
	{
		$mobil = Mobil::all();
		return $mobil;
	}
	public function create()
	{
		return view('mobil.create');
	}
	public function store()
	{
		$input = Request::all();
		Mobil::create($input);
		return redirect ('mobil');
	}

edit file create.blade.php sehingga menjadi

@extends('app')
 
@section('content')
	<h1>Tambah Data</h1>
	<hr>
 
	{!! Form::open(['url' => 'mobil']) !!}
		<div class="form-group">
			{!! Form::label('NOPOL','Nomor Polisi :') !!}
			{!! Form::text('NOPOL',null, ['class' => 'form-control']) !!}
			{!! Form::label('merek_mobil','Merek Mobil :') !!}
			{!! Form::text('merek_mobil',null, ['class' => 'form-control']) !!}				
			{!! Form::submit('Tambah Data') !!}	
			{!! Form::close() !!}				
		</div>
 
@stop

Sampai tahap ini, coba akses web yang baru dibuat di alamat http:////mobil/create contoh di tempat saya
tambah data mobil
Coba input beberapa data :), setelah mengklik Tambah Data akan otomatis diarahkan ke http:////mobil
index mobil

Untuk menambahkan fungsi edit dan delete (hapus), edit kembali MobilController.php

<?php namespace App\Http\Controllers;
 
use App\Http\Requests;
use App\Http\Controllers\Controller;
use App\Mobil;
use Illuminate\Http\Request;
 
class MobilController extends Controller {
 
	/**
	 * Display a listing of the resource.
	 *
	 * @return Response
	 */
	public function index()
	{
		$mobil = Mobil::all();
		return view('mobil.index', compact('mobil'));
	}
 
	/**
	 * Show the form for creating a new resource.
	 *
	 * @return Response
	 */
	public function create()
	{
		return view('mobil.create');
	}
 
	/**
	 * Store a newly created resource in storage.
	 *
	 * @return Response
	 */
	public function store()
	{
		$input = Request::all();
		Mobil::create($input);
		return redirect ('mobil');
	}
 
	/**
	 * Display the specified resource.
	 *
	 * @param  int  $id
	 * @return Response
	 */
	public function show($id)
	{
		//
	}
 
	/**
	 * Show the form for editing the specified resource.
	 *
	 * @param  int  $id
	 * @return Response
	 */
	public function edit($id)
	{
		$mobil = Mobil::findOrFail($id);
		return view('mobil.edit', compact('mobil'));
	}
 
	/**
	 * Update the specified resource in storage.
	 *
	 * @param  int  $id
	 * @return Response
	 */
	public function update(Request $request, $id)
	{
		$mobil = Mobil::findOrFail($id);
		$mobil->update($request->all());
		return redirect('mobil');
	}
 
	/**
	 * Remove the specified resource from storage.
	 *
	 * @param  int  $id
	 * @return Response
	 */
	public function destroy($id)
	{
		$mobil = Mobil::findOrFail($id);
		$mobil->delete();
		return redirect('mobil');
 
	}
 
}

index.blade.php

@extends('app')
 
@section('content')
		<h1>Data Mobil</h1> <hr>
 
<table class="table table-bordered">
	<thead>
		<th>Nomor Polisi</th>
		<th>Merek Mobil</th>
		<th>Aksi</th>
	</thead>
	<tbody>
		@foreach ($mobil as $data)
 
		<tr>
			<td><a href="{{ url('mobil/'. $data->id . '/edit') }}">{{ $data->NOPOL }}</a></td>
			<td>{{ $data->merek_mobil }}</td>			
			<td>                
				{!! Form::open(['method' => 'DELETE', 'route' => ['mobil.destroy', $data->id]]) !!}
				{!! Form::submit('Hapus') !!}
				{!! Form::close() !!}
			</tr>
		</tbody>
		@endforeach
	</table>
 
 
@stop

edit.blade.php

@extends('app')
 
@section('content')
	<h1>Edit Data <small>{{ $mobil->NOPOL }}</small></h1>
	<hr>
 
{!! Form::model($mobil, ['method' => 'PATCH', 'action' => ['[email protected]', $mobil->id]]) !!}
    <div class="form-group">
        {!! Form::label('NOPOL', 'Nomor Polisi :') !!}
        {!! Form::text('NOPOL', null, array('class' => 'form-control')) !!}
    </div>
 
    <div class="form-group">
        {!! Form::label('merek_mobil', 'Merek Mobil :') !!}
        {!! Form::text('merek_mobil', null, array('class' => 'form-control')) !!}
    </div>
 
    {!! Form::submit('Edit data', array('class' => 'btn btn-primary')) !!}
 
{!! Form::close() !!}
 
@stop

data mobil edit hapus

Last Updated on 10 November 2017 by tommy

Tulisan menarik lainnya

  • Menggabungkan Total dan GroupBy di Laravel

    Untuk menggabungkan total query dan GROUP BY di Laravel kita harus menggabungkan eloquent dengan raw…

  • Menggunakan Datatables di Laravel 5.1 LTS

    Install package Datatables di Laravel dengan cara composer require yajra/laravel-datatables-oracle:~5.0 Buka file config/app.php dibagian providers…

  • Menambahkan Nomer Baris Tabel di Laravel 5

    Contoh sederhana memasukkan data ke tabel di Laravel 5. Client Code Client Name @foreach ($client…

  • Contoh Script PHP CRUD di Laravel 5.5

    Untuk pembejalaran pembuat aplikasi CRUD (Create, Read, Update, Delete) di Laravel 5.5 kita akan membuat…

Filed Under: PHP Tagged With: laravel 5

Reader Interactions

Comments

  1. fariz says

    26 December 2016 at 22:15

    View [App] not found. (View: C:xampphtdocslaravelresourcesviewsmobilindex.blade.php)

    kalau view app not found gimana ?

    Reply
  2. elhardus says

    24 November 2016 at 09:09

    FatalErrorException in 90206b3b9358f204a4dd837f609415c7 line 6: Class ‘Form’ not found

    masalanya di “illuminate/html”: “5.*” dan sudah saya coba install tapi proses installasi nya erro.
    kenapa yah min.

    Reply
    • tommy says

      1 December 2016 at 12:47

      laravel 5.2/5.3 ya?

      Reply
  3. Agus Byna says

    28 December 2015 at 13:28

    FatalErrorException in 90206b3b9358f204a4dd837f609415c7 line 6: Class ‘Form’ not found
    kenapa ya gan

    Reply
    • tommy says

      8 January 2016 at 14:52

      itu errornya keliatan. Bagian “illuminate/html”: “5.*” diatas udah dijalankan belum?

      Reply
      • error404 says

        12 April 2016 at 18:31

        “illuminate/html”: “5.*” sudah saya jalankan tapi masih
        FatalErrorException in 90206b3b9358f204a4dd837f609415c7 line 6: Class ‘Form’ not found

        apanya ya?

        Reply
  4. Jauhar says

    6 December 2015 at 17:33

    di bagan create.blade.php, {!! Form::open([‘url’ => ‘mobil’]) !!} merefernsikan ke [email protected]
    kalau form nya di refensikan ke fungsi store gimana ya bang?

    Reply
    • tommy says

      7 December 2015 at 22:00

      tinggal diganti 'mobil' jadi 'mobil/store'

      Reply
  5. radit says

    3 December 2015 at 16:05

    pak, saya sudah membuat file untuk table, tp setelah saya ketik php artisan migrate, malah muncul seperti ini : ‘SQLSTATE[HY000] [1045] Access denied for user ‘homestead’@’localhost’ (using password: YES)’

    apa yg salah ya

    localhost di database.php sudah sy ganti menjadi 127.0.0.1. masih tetap tdk bisa

    Reply
    • tommy says

      4 December 2015 at 11:03

      ganti 127.0.0.1 jadi IP vagrant (homestead) nya.

      user homestead punya akses ke database ga? coba login manual jalan ga?

      Reply
  6. Lara says

    2 June 2015 at 10:21

    sintaks file edit.blade.php nya mana bro?

    Reply
    • tommy says

      3 June 2015 at 09:53

      opps, ketinggalan. Udah di update diatas. thanks

      Reply

Leave a Reply Cancel reply

Your email address will not be published. Required fields are marked *

Primary Sidebar

Pencarian

Tanya Jawab tentang DevOps SRE CPE, gabung di https://t.me/devopsindonesia

Terbaru

  • Cara Menonaktifkan Pager di macOS
  • Cara Mengupdate Nama Apple silicon-as-a-Service Scaleway
  • Cara Force Delete Namespace di Kubernetes
  • Install PHP MariaDB di Mac Monterey
  • MacOS Minta Install Git

Komentar

  • Ari on Cara Mematikan SSID Molecool Balifiber
  • kiki anarki on Mengambil Data dari Situs BPJS Ketenagakerjaan dengan PHP cURL
  • musgan on Password Router Huawei HG8245H5 Indihome
  • ghabily on Mengambil Informasi Router Alcatel Lucent G-241W-A dengan PHP
  • nea on Mencari urutan angka yang hilang di PHP

Tulisan Populer

  • Password Router Huawei HG8245H5 Indihome 1.1m views
  • Password Terbaru ZTE F609 Indihome 784k views
  • Password Superadmin Huawei HG8245A 314.2k views
  • Cara Setting Manual Modem GPON ZTE F609 Indihome 272.2k views
  • Cara Setting Wireless ZTE F609 Indihome 256.1k views
  • Mengaktifkan Port LAN di Huawei HG8245 Indihome 169.1k views
  • Akses UseeTV Indihome via Wireless ZTE F609 156.5k views
  • Kemana Menghilangnya Saldo BCA 50 ribu 150.3k views
  • Cara Reset Password ZTE F609 Indihome 147.2k views
  • Cara Setting DHCP Server Modem/Router ZTE F609 112.9k views

Kategori

  • Delphi
  • dll
  • Gambas
  • Internet
  • Java
  • Lazarus
  • Linux
  • PHP
  • Review
  • Teknologi

Sponsor

kadal.id
carakami.com
kuotabisa.com
Untuk jadi sponsor, hubungi kita lewat halaman sponsor
© 2021. Jaranguda
  • Linux
  • PHP
  • Internet
  • Teknologi
  • Delphi
  • Gambas
  • Java