Не могу войти в систему как администратор в Laravel4

0

Я создал интерфейс администратора (очень простой интерфейс администратора). Но если я хочу войти в систему как администратор, я не могу войти в систему как администратор, хотя мое имя пользователя и пароль абсолютно правильные.

Мои контроллеры Admin находятся,

app/
 controller/
   Admin/
      AdminController.php

И мои взгляды проживают

app/
 views/
   admin/
      Admin-login.blade.php

и я создал маршруты что-то вроде этого

Route::get('admin',array(

    'as' => 'admin',
    'uses' =>'Admin\AdminController@AdminLogin'

));

Route::group(array('before' => 'auth'),function(){


  //These Urls are Intended page after Admin Sign In
    Route::get('marriage-admin/',array(

         'as' => 'marriage-admin',
         'uses' => 'MarriageController@MarriageAdmin'
        ));

    Route::post('edit-marital-data',array('as' => 'edit-marital-data','uses' => 'MarriageController@EditMarritalStatus'));
    Route::post('searched-marital-data',array('as' => 'searched-marital-data','uses' => 'MarriageController@SearchMarriage'));

}

Route::group(array('before' => 'guest'),function(){

/* CSRF Protect*/
Route::group(array('before' => 'csrf'),function(){
   Route::post('admin-marriage',array(

               'as' => 'admin-marriage',
               'uses' => 'Admin\AdminController@AdminLoginPost'

            ));
 }
}

и это мой Admin Controller

<?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.');
}


}

?>

и я также создал модель Admin.php, так как у меня есть другая таблица, а именно admins в моей базе данных.

<?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';
    }

    /*public static function blood_search($blood_group){

        return static::where('blood_group','LIKE','%'.$blood_group.'%');
    } */



    protected $table = 'admins';

    protected $fillable=array
    (   'username',
        'password'

    );



    use UserTrait, RemindableTrait;



}

упоминание, страница после входа в систему или вы можете сказать, что тире, которая скучно от Admin, берется с другого контроллера, а именно MarriageController

Теперь, если я попытаюсь войти в систему как администратор. я получаю сообщение

The username or password you provided is wrong!

который я установил в своем контроллере Admin, если auth не работает.

Так почему я получаю это сообщение, хотя username и password я предоставляю, абсолютно правы? теперь мой вопрос в том, что я пропустил какую-то конфигурацию для Admin?

  • 0
    ваш пароль хешируется?
  • 0
    Нет. @SushantAryal
Показать ещё 3 комментария
Теги:
laravel-4

1 ответ

0

Laravel не использует шифрование md5. При создании пользователя вам нужно Хешировать пароль, используя laravel Hash :: make()

User::create(array(
    'username' => Input::get('username'),
    'password' => Hash::make(Input::get('password'))
));

Если вы хотите вручную вставить его в базу данных, тогда

return Hash::make('yourpass');

затем вставьте полученный результат.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню