Php 用户登录中的简单问题
我已经做完了,但是遇到了一个小错误,找不到它在哪里 这是我的控制器:Php 用户登录中的简单问题,php,validation,laravel,laravel-4,Php,Validation,Laravel,Laravel 4,我已经做完了,但是遇到了一个小错误,找不到它在哪里 这是我的控制器: public function CreateUserProcess() { $user = new User; $user->password = Hash::make(Input::get('password')); $user->UserName = Input::get('UserName'); if($user->save())
public function CreateUserProcess()
{
$user = new User;
$user->password = Hash::make(Input::get('password'));
$user->UserName = Input::get('UserName');
if($user->save())
{
return Redirect::to('createuser')->with('Message', 'User Details Saved Succesfully');
}
else
{
return Redirect::to('createuser')->with('Message', 'Error');
}
}
public function Login()
{
$UserName = Input::get('UserName');
$password = Input::get('password');
if (Auth::attempt(array('UserName' => $UserName, 'password' => $password)))
{
return Redirect::intended('dashboard');
}
else
{
$queries = DB::getQueryLog();
print_r(end($queries));
}
}
这是使用默认的laravel的BCrypt哈希创建用户名和密码的用户
这是我的登录控制器:
public function CreateUserProcess()
{
$user = new User;
$user->password = Hash::make(Input::get('password'));
$user->UserName = Input::get('UserName');
if($user->save())
{
return Redirect::to('createuser')->with('Message', 'User Details Saved Succesfully');
}
else
{
return Redirect::to('createuser')->with('Message', 'Error');
}
}
public function Login()
{
$UserName = Input::get('UserName');
$password = Input::get('password');
if (Auth::attempt(array('UserName' => $UserName, 'password' => $password)))
{
return Redirect::intended('dashboard');
}
else
{
$queries = DB::getQueryLog();
print_r(end($queries));
}
}
我的表只有4个字段:id、用户名、密码和remember_令牌
我可以创建用户,但无法检查登录过程
我可以看到用户名和密码,一旦它被发送到控制器,但我与这一步步履蹒跚
if (Auth::attempt(array('email' => $UserName, 'password' => $password)))
我所犯的错误是什么?我该如何纠正
每当我尝试登录时
我明白了
Array ( [query] => select * from `users` where `UserName` = ? limit 1 [bindings] => Array ( [0] => admin ) [time] => 0 )
为什么在你的尝试中有电子邮件
if (Auth::attempt(array('email' => $UserName, 'password' => $password)))
换成
if (Auth::attempt(array('Username' => $UserName, 'password' => $password)))
检查您的数据库表中是否有“UserName”列,可能是“UserName”对不起,这是一个输入错误,我已经更新了问题。但它仍然是相同的代码正在我的工作。从控制器中删除else条件,并在config/app.php上启用“debug”=>true。它将向您显示错误。试着解决这个问题。调试已经是真的,如果我删除了另一个条件,只有空白屏幕出现,你的密码在DB散列中,字段至少有60个字符长?你能在“用户表”中显示字段吗?我认为错误在于你给了尝试函数“UserName”而不是“email”