在laravel 5.2中,Laravel手动登录始终不匹配
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在laravel 5.2中,Laravel手动登录始终不匹配相关的知识,希望对你有一定的参考价值。
我一直在使用手动登录我的laravel进行“不匹配”身份验证这里是我的控制器
<?php
namespace AppHttpControllers;
use IlluminateHttpRequest;
use AppHttpRequests;
use AppHttpControllersController;
use AppAdmin;
use Input;
use Validator;
use Auth;
class CobaLogin extends Controller
{
public function index(){
return view('adminlogin');
}
public function username(){
return 'username';
}
public function doLogin(Request $request){
$username = $request ->input('username');
$password = $request -> input('password');
if(Auth::attempt(['username' => $username, 'password' => $password])){
echo "yes match";
}else{
echo "not match";
}
}
}
这是管理员表中的模型
<?php
namespace App;
use IlluminateDatabaseEloquentModel;
use IlluminateFoundationAuthUser as Authenticatable;
class Admin extends Authenticatable{
protected $table = "admin";
}
这是我的路线
Route::get('loginadmin', 'CobaLogin@index');
Route::post('dologin', 'CobaLogin@doLogin');
这是我的登录刀片文件
<div class="wrapper">
<form class="form-signin" action="{{ url('dologin')}}" method="POST">
{{ csrf_field() }}
<br/><h2 class="form-signin-heading text-center">ADMIN LOGIN</h2>
<input type="text" class="form-control" name="username" placeholder="Email Address" required="" autofocus="" />
<input type="password" class="form-control" name="password" placeholder="Password" required=""/>
<label class="checkbox">
<input type="checkbox" value="remember-me" id="rememberMe" name="rememberMe"> Remember me
</label>
<button class="btn btn-lg btn-primary btn-block" type="submit">Login</button>
</form>
</div>
这是我的auth.php文件
'providers' => [
'admin' => [
'driver' => 'eloquent',
'model' => AppAdmin::class,
],
这是我的注册功能
public function store(Request $request){
$data=Input::except(array('_token'));
// var_dump($data);
$rule=array(
'username' => 'required|unique:admin',
'password' => 'required|min:6',
'cpassword' => 'required|same:password',
'email' => 'required|email',
);
$message=array(
'username' => 'This username already taken',
'cpassword.min'=>'the password must at least 6 characters',
'cpassword.same'=>'the password and confirm password must same',
);
$validator= validator::make($data,$rule,$message);
if($validator->fails()){
return redirect() -> to('adduser')->withErrors($validator);
}else{
$tambah = new Admin();
$tambah->username = $request['username'];
$tambah->password = Hash::make($request['password']);
$tambah->email = $request['email'];
$tambah->alamat = $request['alamat'];
$tambah->lebih = $request['lebih'];
$tambah->save();
return redirect()->to('users')->with('success','Your Data Has Been Added');
}
}
这里是my database table我使用Hash加密密码,我认为注册没有错,我想念什么?
我一直有“不匹配”作为答案
请高手帮忙
答案
默认情况下,Laravel使用User
模型进行身份验证。您可以通过编辑config/auth.php
来自定义它:
'providers' => [
'users' => [
'driver' => 'eloquent',
'model' => AppAdmin::class,
],
以上是关于在laravel 5.2中,Laravel手动登录始终不匹配的主要内容,如果未能解决你的问题,请参考以下文章
Laravel 5.2 Entrust:如果他手动添加受限URL,则重定向用户