0

私はこれに関する他のすべての質問に目を通しました...

Userそこで、テーブルを自動入力する userSeeder をセットアップしました。

public function run()
{
    $users = [
        [                
            "email"    => "email@myemail.co.uk",
            "fname" => "Nicola",
            "sname" => "Elvin",
            "password"=>Hash::make("password")
        ]
    ];
    foreach ($users as $user)
    {
        User::create($user);
    }
}

私の表は、これが保存され、パスワードがハッシュされていることを示しています。

私のログイン機能では:

  $credentials = [
                "email" => Input::get("email"),
                "password" => Input::get("password")
         ];
    if (Auth::attempt($credentials)) {
                return Redirect::route("user/profile");
     }else{
         echo 'wrong';
     }

を実行したところprint_r$credentialsメール アドレスとパスワードが正しく表示されました。

それでも、それは常に間違っているように見えます。それは決して検証されません。

ユーザーモデル

use Illuminate\Auth\UserInterface;
use Illuminate\Auth\Reminders\RemindableInterface;

class User extends Eloquent implements UserInterface, RemindableInterface {

protected $table = 'user';

protected $hidden = array('password');

public function getAuthIdentifier()
{
    return $this->getKey();
}
public function getAuthPassword()
{
    return $this->password;
}

public function getReminderEmail()
{
    return $this->email;
}

}
4

1 に答える 1

0

私はそれを考え出した。恥ずかしいことに、メールアドレスの末尾に空白がありました...トリミングしていないため、実際には正しくありません...

これを理解する方法は、 Laravel 4 プロファイラーauth:attemptをインストールして実行されていた sql クエリを確認することでしたが、

于 2013-10-16T10:03:07.113 に答える