Laravel - CRUD input data mahasiswa


Haloooo..
Assalamu 'alaikum wr wb
postingan kali ini kita akan membuat Input data mahasiswa di laravel 5.5

oke langsung saja
buka project laravel melalui cmd
cara intal laravel - disini

cd xampp/htdocs/nama_folder/nama_project

ketikan

php artisan serve

lalu buat Model untuk operasi crud

php artisan make:model mahasiswa -m

hasilnya membuat tabel mahasiswa


edit tabel mahasiswa buka
nama_project - database - migrations - create_mahasiswas_table.php


    public function up()
    {
        Schema::create('mahasiswas', function (Blueprint $table) {
            $table->increments('id');
            $table->integer('npm');
            $table->string('nama');
            $table->string('jurusan');
            $table->timestamps();
        });
    }

setelah itu kita migrate, ketikkan pada cmd

php artisan migrate

hasil migrate


buka databasenya maka akan ada tabel mahasiswas


dan field dari tabel mahasiswas yang tadi kita edit diatas

selanjutnya buat folder mahasiswas
resources - views - mahasiswas(yang baru dibuat)
buat file di dalam folder mahasiswas
buat file
- create.blade.php
- edit.blade.php
- index.blade.php

buat file pengontrol untuk operasi CRUD
pada cmd

php artisan make:controller MhsController --resource


edit dan tambah file route
routes - web.php

Route::resource('mahasiswas','MhsController');

pada cmd

php artisan route:list

hasilnya


koding create.blade.php

<!DOCTYPE html>

<html>

<head>

<meta charset="utf-8">

<title>Laravel 5.5 mhs</title>

<link rel="stylesheet" href="{{asset('css/app.css')}}">

</head>

<body>

<div class="container">

<h2>Tambah Mahasiswa</h2><br />

<form method="post">

<div class="row">

<div class="col-md-4"></div>

<div class="form-group col-md-4">

<label for="name">Npm</label>

<input type="text" class="form-control" name="npm">

</div>

</div>

<div class="row">

<div class="col-md-4"></div>

<div class="form-group col-md-4">

<label for="price">Nama</label>

<input type="text" class="form-control" name="nama">

</div>

</div>

<div class="row">

<div class="col-md-4"></div>

<div class="form-group col-md-4">

<label for="name">Jurusan</label>

<input type="text" class="form-control" name="jurusan">

</div>

</div>

</div>

<div class="row">

<div class="col-md-4"></div>

<div class="form-group col-md-4">

<button type="submit" class="btn btn-success" style="margin-left:38px">Add Mhs</button>

<a href="{{action('MhsController@index')}}" class="btn btn-info">Back</a>

</div>

</div>

</form>

</div>

</body>

</html>

pada file MhsController tambahkan

public function create()
    {
        return view('mahasiswas.create');
    }

Coba projectnya pada browser

http://localhost:8000/mahasiswas/create

kalau berhasil akan muncul sprti ini


pada file MhsController tambahkan use App\mahasiswa;

namespace App\Http\Controllers;

use Illuminate\Http\Request;
use App\mahasiswa;

class MhsController extends Controller

fungsinya untuk tampilkan index pada folder mahasiswa

pada file app - mahasiswa.php

class mahasiswa extends Model
{
    protected $fillable = ['npm','nama','jurusan'];
}

pada file MhsController

public function store(Request $request)
    {
        $mahasiswa = $this->validate(request(), [
        'npm' => 'required|numeric',
        'nama' => 'required',
        'jurusan' => 'required'
        ]);
        mahasiswa::create($mahasiswa);

        return back()->with('success', 'berhasil diinput');;
    }

update koding create.blade.php

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Laravel 5.5 CRUD</title>
<link rel="stylesheet" href="{{asset('css/app.css')}}">
</head>
<body>
<div class="container">
<h2>Tambah Mahasiswa</h2><br />
@if ($errors->any())
<div class="alert alert-danger">
<ul>
@foreach ($errors->all() as $error)
<li>{{ $error }}</li>
@endforeach
</ul>
</div><br />
@endif
@if (\Session::has('success'))
<div class="alert alert-success">
<p>{{ \Session::get('success') }}</p>
</div><br />
@endif
<form method="post" action="{{url('products')}}">
{{csrf_field()}}
<div class="row">
<div class="col-md-4"></div>
<div class="form-group col-md-4">
<label for="name">Npm </label>
<input type="text" class="form-control" name="npm">
</div>
</div>
<div class="row">
<div class="col-md-4"></div>
<div class="form-group col-md-4">
<label for="price">Nama Lengkap</label>
<input type="text" class="form-control" name="nama">
</div>
</div>
<div class="row">
<div class="col-md-4"></div>
<div class="form-group col-md-4">
<label for="name">Jurusan</label>
<input type="text" class="form-control" name="jurusan">
</div>
</div>
</div>
<div class="row">
<div class="col-md-4"></div>
<div class="form-group col-md-4">
<button type="submit" class="btn btn-success" style="margin-left:38px">Input</button>
<a href="{{action('MhsController@index')}}" class="btn btn-info">Back</a>
</div>
</div>
</form>
</div>
</body>
</html>

test create pada browser

http://localhost:8000/mahasiswas/create


pada database


 pada file MhsController

public function index()
    {
        $mahasiswas = mahasiswa::all()->toArray();
        return view('mahasiswas.index', compact('mahasiswas'));
    }

 kodingan index.blade.php

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Index Page</title>
<link rel="stylesheet" href="{{asset('css/app.css')}}">
</head>
<body>
<div class="container">
<br />
@if (\Session::has('success'))
<div class="alert alert-success">
<p>{{ \Session::get('success') }}</p>
</div><br />
@endif
<table class="table table-striped">
<thead>
<tr>
<th>ID</th>
<th>Npm</th>
<th>Nama Lengkap</th>
<th>Jurusan</th>
<th colspan="2">Action</th>
</tr>
</thead>
<a href="{{action('MhsController@create')}}" class="btn btn-primary">Create</a>
<tbody>

@foreach($mahasiswas as $mahasiswa)

<tr>
<td>{{$mahasiswa['id']}}</td>
<td>{{$mahasiswa['npm']}}</td>
<td>{{$mahasiswa['nama']}}</td>
<td>{{$mahasiswa['jurusan']}}</td>
<td><a href="{{action('MhsController@edit', $mahasiswa['id'])}}" class="btn btn-warning">Edit</a></td>
<td>
<form action="{{action('MhsController@destroy', $mahasiswa['id'])}}" method="post">
{{csrf_field()}}
<input name="_method" type="hidden" value="DELETE">
<button class="btn btn-danger" type="submit">Delete</button>
</form>
</td>
</tr>
@endforeach
</tbody>
</table>
</div>
</body>
</html>

update function store difile MhsController

    public function store(Request $request)
    {
        $mahasiswa = $this->validate(request(), [
        'npm' => 'required|numeric',
        'nama' => 'required',
        'jurusan' => 'required'
        ]);
        mahasiswa::create($mahasiswa);

        return back()->with('success', 'berhasil diinput');
    }

Test index pada browser

http://localhost:8000/mahasiswas

hasilnya


pada file MhsController

    public function edit($id)
    {
        $mahasiswa = mahasiswa::find($id);
        return view('mahasiswas.edit',compact('mahasiswa','id'));
    }

pada kodingan edit.blade.php

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>edit mhs</title>
<link rel="stylesheet" href="{{asset('css/app.css')}}">
</head>
<body>
<div class="container">
<h2>Edit mahasiswa</h2><br />
@if ($errors->any())
<div class="alert alert-danger">
<ul>
@foreach ($errors->all() as $error)
<li>{{ $error }}</li>
@endforeach
</ul>
</div><br />
@endif
<form method="post" action="{{action('MhsController@update', $id)}}">
{{csrf_field()}}
<input name="_method" type="hidden" value="PATCH">
<div class="row">
<div class="col-md-4"></div>
<div class="form-group col-md-4">
<label for="npm">Npm :</label>
<input type="text" class="form-control" name="npm" value="{{$mahasiswa->npm}}">
</div>
</div>
<div class="row">
<div class="col-md-4"></div>
<div class="form-group col-md-4">
<label for="nama">Nama lengkap :</label>
<input type="text" class="form-control" name="nama" value="{{$mahasiswa->nama}}">
</div>
</div>
<div class="row">
<div class="col-md-4"></div>
<div class="form-group col-md-4">
<label for="jurusan">Jurusan :</label>
<input type="text" class="form-control" name="jurusan" value="{{$mahasiswa->jurusan}}">
</div>
</div>
</div>
<div class="row">
<div class="col-md-4"></div>
<div class="form-group col-md-4">
<button type="submit" class="btn btn-success" style="margin-left:38px">Update</button>
<a href="{{action('MhsController@index')}}" class="btn btn-info">Back</a>
</div>
</div>
</form>
</div>
</body>
</html>

pada file MhsController

    public function update(Request $request, $id)
    {
        $mahasiswa = mahasiswa::find($id);
        $this->validate(request(), [
            'npm' => 'required|numeric',
            'nama' => 'required',
            'jurusan' => 'required'
            ]);
        $mahasiswa->npm = $request->get('npm');
        $mahasiswa->nama = $request->get('nama');
        $mahasiswa->jurusan = $request->get('jurusan');
        $mahasiswa->save();
        return redirect('mahasiswas')->with('success','sudah diupdate');
    }

    /**
     * Remove the specified resource from storage.
     *
     * @param  int  $id
     * @return \Illuminate\Http\Response
     */
    public function destroy($id)
    {
        $mahasiswa = mahasiswa::find($id);
        $mahasiswa->delete();
        return redirect('mahasiswas')->with('success','berhasil dihapus');
    }
    }

demo edit dan delete





sekian selamat mencoba
github - https://github.com/ekoaulian/CRUD-Laravel55
assalamu 'alaikum wr wb
Previous
Next Post »
Thanks for your comment