Thứ Sáu, 16 tháng 9, 2016

#Part5 laravel 5 Blog Tutorial : Insert Data, Validation, Redirect Page and Flash Message


Create Blog using Laravel 5.3 - Next Lessons about How to create blog apps using Laravel 5 Insert Data, Validation, Redirect Page and Flash Message, to continue the previews lessons, we will make new function to create/insert new data into database and create the form validation, after all data hasbeen saved, we will create redirect page to home page and displaying the message.

At the previews lessons, we has create database and connect it form laravel project, than we have configuration Restful Controllers and Routing System in our project, and make an Model Eloquent & Displaying Data from Databaseif you still confused, just read Model Eloquent & Displaying Data from Database.

Insert Data, Validation, Redirect Page and Flash Message

Insert Data, Validation, Redirect Page and Flash Message

Add two function in our controller (BlogController.php) to show form insert data and will be proccess data into database

BlogController.php

public function create()
    {
        // we will return to our new views
        return view('blog.create');
    }

    /**
     * Store a newly created resource in storage.
     *
     * @param  IlluminateHttpRequest  $request
     * @return IlluminateHttpResponse
     */
    public function store(Request $request)
    {
        // we will create validation function here
        $this->validate($request,[
            'title'=> 'required',
            'description' => 'required',
        ]);

        $blog = new Blog;
        $blog->title = $request->title;
        $blog->description = $request->description;
        // save all data
        $blog->save();
        //redirect page after save data
        return redirect('blog')->with('message','data hasbeen updated!');
    }

Next, create new page for our Form insert data page (create.blade.php) will stored on resources\views\blog\create.blade.php

create.blade.php

<!-- @if (count($errors) > 0)
  <ul>
    @foreach ($errors->all() as $error )
      <li>{{ $error }}</li>
    @endforeach
  </ul>
@endif -->

<h2>Add new post</h2>
<form class="" action="/blog" method="post">
  <input type="text" name="title" value="" placeholder="this is title"><br>
  {{ ($errors->has('title')) ? $errors->first('title') : '' }} <br>

  <textarea name="description" rows="8" cols="40" placeholder="this is description"></textarea><br>
  {{ ($errors->has('description')) ? $errors->first('description') : '' }} <br>

  <input type="hidden" name="_token" value="{{ csrf_token() }}">
  <input type="submit" name="name" value="post">
</form>

next, in the index page (index.blade.php) add new session to get the message session after form create hasbeen redirect to index page.

index.blade.php

{{ Session::get('message') }}

<h1>My First Blog</h1>
@foreach ($blogs as $blog)
  <h2>{{ $blog->title }}</h2>
  <p>{{ $blog->description }}</p>
  <hr>
@endforeach

Video tutorial Insert Data, Validation, Redirect Page and Flash Message



See you next Lessons .....

Không có nhận xét nào:

Đăng nhận xét