<?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