验证一个字段mysql laravel 5

时间:2015-12-12 17:58:52

标签: php mysql validation laravel laravel-5

我打算在我的后端使用一种形式的验证作为prestashop,但我没有想到我正确执行此任务的方式。

我打算这样做我的验证。

enter image description here

我的表

ID|Id_workshop|videos|validate

我的索引代码

现在我只是在非活动状态时尝试验证它。我打算激活数据库,而不是继续使用值0。

    @if ($video->validate == 1) 
            <td style="text-align: center;">
                <a href="{{URL::to('backend/workshops/validate/'.$video->id) }}">
                    <button type="button" class="btn btn-success">
                        <i class="fa fa-check"></i>
                    </button>
                </a>
            </td>
    @else 
        {!! Form::open(array('url' => 'backend/workshops/validate/{{$video->id}}', 'id' => 'form', 'name' => 'ValidateWorkshop', 'role' => 'form', 'class' => 'form-signin'))!!}
        <input type="hidden" name="id" value="{{ $video->id }}">
        <input type="hidden" name="validate" value="{{ $video->validate }}">

            <td style="text-align: center;">
                    {!! Form::submit('X', ['class' => 'btn btn-danger']) !!}
            </td>       
        {!! Form::close() !!}
    @endif

我的控制器

    public function ValidateWorkshop($id) {
        $validate = Input::except('_token'); 
        $validate = Input::get('id');
        $validation = Validator::make($validate, Videos::$validate); 
        if ($validation->passes()) {
            if($user = Videos::find($validate['id'])) {
                $user -> update($validate); 
            }
        Session::flash('validate_workshop', 'O workshop foi validado'); 
        return Redirect::to('backend/workshops'); 
        } else { 
            return Redirect::to('backend/workshops')->withInput()->withErrors($validation); 
        }           
    }

我的路线

Route::post('backend/workshops/validate/{id}','BackendControlador@ValidateWorkshop');

我的模特

public static $validate = array(
        'validar' =>  'int',
        );  

欢迎任何帮助。

1 个答案:

答案 0 :(得分:1)

控制器中的解决方案

我使用laravel eloquent orm的预定义函数来进行更新。 我们需要做的唯一参数是提供ID。

    public function ValidarWorkshop($id) {
        $validar = Input::get('validar');
        $id = Input::get('id');
        if ($validar == 0) {
            $validar = Videos::find($id);
            $validar->validar = '1';
            $validar->save();                                                       
            Session::flash('workshop', 'Workshop inserido com sucesso'); 
            return Redirect::to('backend/workshops');               
        }
    }