laravel框架——表单验证

本文介绍了在Laravel框架中如何实现表单验证的过程,包括创建路由、控制器编写及使用自定义请求验证类的方法,并提供了具体的代码示例。

创建路由  

Route::get('test','VerController@index');

Route::post('tosubmit','VerController@tosubmit');

在控制器中编辑代码

class VerController extends Controller
{
    //表单页面
    public function index()
    {
        return view('from.from');
    }

    //表单提交验证
    //这种是用自带的Request进行验证
//    public function tosubmit(Request $request)
//    {
//        $this->validate($request, [
//            'title'=>'required',
//            'content'=>'required|min:10'
//        ]);
//        return 'success';
//    }

    //这种是用自己写的Request,用php artisan make:request FromRequest生成
    public function tosubmit(Requests\FromRequest $request)
    {
        return 'success';
    }
}

 

FromRequest

    public function authorize()
    {
        //别问为什么,就是要返回true
        return true;
    }
    public function rules()
    {
        return [
            //这里写规则
            'title'=>'required',
            'content'=>'required|min:10'
        ];
    }

 

自定义错误信息(设置成中文)

把en文件夹复制一份重命名为cn

然后在/config/app.php下修改

 

 

第二种:

  直接在Controller里面定义规则和错误信息

  

public function yanzhen()
    {
        $input = Input::except('_token');
        $relus = [
            //规则
            'name'=>'required|min:5'
        ];
        $message = [
            //错误信息
            'name.required' => '不能为空',
            'name.min' => '最少5个字符'
        ];
        //这里参数必须按照顺序(验证的内容,规则,错误信息)
        $vail = Validator::make($input,$relus,$message);
        if ($vail->passes()){
            return '通过验证';
        } else {
            //这里传入的是变量
            return back()->withErrors($vail);
        }
    }

  View:

<body>
<div class="container">
    @if(count($errors)>0)
        @if(is_object($errors))
            {{--这里一定要获取$error->all()--}}
            @foreach($errors->all() as $error)
                {{ $error }}
            @endforeach
        @endif
    @endif
    {{ Form::open(['url'=>url("yanzhen")]) }}
    {{ Form::text('name') }}
    {{ Form::submit('提交') }}
    {{ Form::close() }}
</div>
</body>

  

转载于:https://www.cnblogs.com/xj76149095/p/5627817.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值