我创建了一个管理界面,并在管理员和密码字段的数据库中创建了一个管理员表。在第一次尝试中,我手动创建了密码,并且我对它进行了md5加密,但是很快我就知道laravel不支持md5加密密码。无法以管理员身份登录laravel4
所以我决定创建散列密码,我做的是从我的最终用户注册面板,,我注册了一个新的用户,它会自动在数据库中创建一个哈希密码,我复制该密码并粘贴到我的管理员表的密码字段,只有那时我才能够登录到我的管理面板。
那时候,我没有创建注销功能,因为我只是测试,所以关闭了浏览器并进入第二天,突然间我无法用相同的用户名和密码登录到我的管理面板,提供未经授权的信息“您提供的用户名或密码错误!” 这让我感到吃惊,因为使用相同的用户名和密码,我可以在前一天登录到我的管理员帐户。我确信laravel有问题,或者可能是我的代码中有一些问题,但无法弄清楚。这里是文件夹结构,我的代码
src/
app/
controllers/
admin/
AdminController.php
model/
admin.php
routes.php
filters.php
admin.php的
<?php
use Illuminate\Auth\UserTrait;
use Illuminate\Auth\UserInterface;
use Illuminate\Auth\Reminders\RemindableTrait;
use Illuminate\Auth\Reminders\RemindableInterface;
class \Admin extends Eloquent implements UserInterface, RemindableInterface {
public function getRememberToken()
{
return $this->remember_token;
}
public function setRememberToken($value)
{
$this->remember_token = $value;
}
public function getRememberTokenName()
{
return 'remember_token';
}
protected $table = 'admins';
protected $fillable=array
( 'username',
'password'
);
use UserTrait, RemindableTrait;
AdminController.php
<?php
namespace Admin;
class AdminController extends \BaseController{
public function AdminLogin(){
return \View::make('admin.login');
}
public function AdminLoginPost(){
$auth=\Auth::attempt(array(
'username' => \Input::get('username'),
'password' => \Input::get('password')
));
if($auth){
return \Redirect::intended('marriage-admin');
}else{
return \Redirect::route('admin')->with('global','The username or password you provided is wrong!');
}
return \Rediret::route('admin')->with('global','Please Review Your Admin Database.');
}
}
?>
这是什么意思,auth.php file.make中的任何问题请清楚吗? @Lagul – RTan