检查Laravel中的用户名可用性

时间:2015-08-04 03:16:08

标签: php laravel

有没有办法检查是否已经在laravel中使用了用户名?我的意思是我想检查是否已经提交了用户名而没有提交表单,这意味着在用户输入时检查用户名的可用性。如果我应该使用什么语言?请举例说明。谢谢!

3 个答案:

答案 0 :(得分:2)

$count = User::where('userName', 'like', '%Lyka%')->count();

if($count > 0)
{
  //username exists
}
else
{
  //username doesn't exist
}

或者您可以在laravel验证中验证

$rules = array('username' => 'required|unique:user');

$validator = Validator::make(Input::all(), $rules);

if ($validator->fails()) 
{
$messages = $validator->messages()->first();
Session::put('msg',$messages);
return Redirect::back();
} else {
// username not exist
}

unique:user =>从名为user的表中唯一 username =>是表用户的列

答案 1 :(得分:1)

更好的方法是使用laravel validation。使用ajax将输入发送到laravel后端。然后在你控制器的某个地方。

    $validator = Validator::make($request->all(), [
        'username' => 'unique:users',
    ]);

并检查它是否失败

    if ($validator->fails()) {
       //do whatever you want to do at fail
       //possible return appropriate json with error
    }

答案 2 :(得分:0)

  

有没有办法检查是否已经在laravel中使用了用户名?

是的,尝试使用以下PHP:

$count = User::where('userName', '=', 'Lyka')->count();

if($count > 0)
{
  //username exists
}
else
{
  //username doesn't exist
}

如果要异步检查,则必须编写一些Javascript并在用户填写表单时使用AJAX进行检查。

  

如果我应该使用哪种语言?

PHP显然和Javascript。

祝你好运。