繁体   English   中英

Laravel 5.5检查数据是否在数据库中

[英]Laravel 5.5 Checking if the data is on the database

任何人都可以帮助我。 我是laravel开发的新手。

table name
*Masterlist
*Users

列名

Masterlist = [id,name,date_of_birth,course];
Users = [id,name,date_of_birth,course];

我在RegisterController.php工作

这个流程是..

用户注册需要检查主列表数据的name,date_of_birth,course

如果用户注册等于主列表数据的数据,则注册将成功,然后数据将保存到用户表。

谢谢你的帮助。

假设您的MasterList是表MasterList模型。 然后,您可以先检查您的masterList是否存在您的数据,如果存在,请像下面这样进行user registration

$masterList = MasterList::where('name',$name)->where('date_of_birth',$date_of_birth)->where('course',$course)->first();
 if($masterList!=null){
     ///Your user registration process
 }

而且,如果您要从$request对象获取数据,则-

$masterList = MasterList::where('name',$request->input('name'))->where('date_of_birth',$request->input('date_of_birth'))->where('course',$request->input('course'))->first();
 if($masterList!=null){
     ///Your user registration process
 }

redirect并显示error message您可以在if语句后执行以下操作:

return redirect()->back()->with([
                'error' => 'Sorry! You are not listed in MasterList!!',
            ])->withInput();

在控制器中创建一个验证器。

$validator = Validator::make()

创建自定义规则。

php artisan make:rule filePath

将MasterList和Users数据发送到您的规则(创建规则实例时),最后,比较您规则中的数据,返回true或false。 我建议您使用验证器和rule.it有用且方便。

重写RegisterControllerregister方法,如下所示:

    public function register(Request $request)
{
    $this->validator($request->all())->validate();

    //query the Masterlist table
    $masterList = Masterlist::where('name', $request->input('name'))
        ->where('date_of_birth', $request->input('date_of_birth'))
        ->where('course', $request->input('course'))
        ->value('id');

    if ($masterList) {
        //masterList exist -> proceed registration process
        event(new Registered($user = $this->create($request->all())));

        $this->guard()->login($user);

        return $this->registered($request, $user)
            ?: redirect($this->redirectPath());
    }
    else {
        //masterList not exist => process the error;
    }
}

注: register最初定义的函数RegistersUsers特点这是在使用RegisterController

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM