Laravel.io

<?php

namespace App\Http\Requests;

use App\Http\Requests\Request;

class BidRequest extends Request
{
    /**
     * Determine if the user is authorized to make this request.
     *
     * @return bool
     */
    public function authorize()
    {
        return true;
    }

    /**
     * Get the validation rules that apply to the request.
     *
     * @return array
     */
    public function rules()
    {
        return [
            'name' => 'required',
            'email' => 'required|email|unique',
            'phone_number' => 'required|integer',
            'description' => 'required',
            'price' => 'required|integer',
        ];
    }
}


<?php

namespace App\Http\Controllers;

use App\Libs\Bid\BidManager;
use App\Http\Requests\BidRequest;
use Illuminate\Http\Request;

class IndexController extends Controller
{
    private $bidManager;

    public function __construct(BidManager $bidManager)
    {
        $this->bidManager = $bidManager;
    }

    public function main()
    {
        return view('index/index');
    }

    /*
     * @param  Request $request
     * @param  BidRequest  $bidRequest
     */
    public function createBid(BidRequest $bidRequest)
    {
        $result = $this->bidManager->addBid($bidRequest->all());
        if($result){
            return redirect('index/index');
        }
    }
}


@extends('default')
@section('content')
    <h1>Главная страница</h1>
    <form id="ad" method="POST" action="{{ action('IndexController@createBid') }}">
        <input name="name" type="text" placeholder="name"><br>
        <input name="number_telephone" type="text" placeholder="number telephone"><br>
        <input name="email" type="text" placeholder="emai"><br>
        <textarea name="description" name="" id="" cols="30" rows="10" placeholder="description"></textarea><br>
        <input name="price" type="text" placeholder="price"><br>
        <input type="submit">
    </form>
    @if (count($errors) > 0)
        <ul>
            @foreach ($errors->all() as $error)
                <li>{{ $error }}</li>
            @endforeach
        </ul>
    @endif
@stop


Please note that all pasted data is publicly available.