我在laravel 5工作,我的身份验证登录有困难。
我无法登录(使用正确的用户并通过)并再次重定向到“登录”页面而不是我想要的页面。
我在phpmyadmin中的表被称为“用户”,因此使用Auth是正确的。
为什么不起作用?
<?php namespace App\Http\Controllers;
use Auth;
// product é a pasta e o index é a pagina
class BackendControlador extends Controller {
public function index() {
$email = 'email';
$password = 'password';
if (Auth::attempt(['email' => $email, 'password' => $password, 'acesso' => 1])) {
return redirect()->intended('backend/dashboard.index');
} elseif (Auth::attempt(['email'=> $email, 'password' => $password, 'acesso' => 0])) {
return redirect()->intended('welcome');
} else {
return view('auth/login');
}
}
public function portfolio() {
return view('backend/portfolio.index');
}
}
我的路线代码:
Route::get('/', function () {
return view('welcome');
});
Route::get('backend','BackendControlador@index');
Route::get('backend/portfolio','BackendControlador@portfolio');
// Authentication routes...
Route::get('auth/login', 'Auth\AuthController@getLogin');
Route::post('auth/login', 'Auth\AuthController@postLogin');
// Authentication routes...
Route::get('auth/logout', 'Auth\AuthController@getLogout');
// Registration routes...
Route::get('auth/register', 'Auth\AuthController@getRegister');
Route::post('auth/register', 'Auth\AuthController@postRegister');
答案 0 :(得分:2)
问题是
代码行没有记录您发送的变量,因此只有当您的用户名等于电子邮件并且密码等于数据库中的密码时才会登录。
$email = 'email';
$password = 'password';
将其更改为
$email = Request::input('email'),
$pass = \Hash::make(Request::input('password'))
您必须使用请求
use Illuminate\Support\Facades\Request;
或
use Request;
将您的json文件编辑为要求
"bestmomo/scafold": "dev-master"
- 更新您的作曲家 醇>
使用命令
composer update
3.下一步所需的步骤是将服务提供商添加到config / app.php:
Bestmomo\Scafold\ScafoldServiceProvider::class,
- 发布
醇>
php artisan vendor:publish