Laravel 用户认证与登陆
先看看laravel 自带的用户认证
1.laravel 有内置了用户认证的控制器,它们被放置在 App\Http\Controllers\Auth

RegisterController 处理用户注册
LoginController 处理用户认证
ForgotPasswordController 处理重置密码的 e-mail 链接
ResetPasswordController 包含重置密码的逻辑
2.使用composer 生成需要的认证页面
php artisan make:auth
![]()
就会生成6个视图文件
![]()
一个控制器 HomeController
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use illuminate\Database\Schema\Blueprint;
class HomeController extends Controller
{
/**
* Create a new controller instance.
*
* @return void
*/
public function __construct()
{
$this->middleware('auth');
}
/**
* Show the application dashboard.
*
* @return \Illuminate\Http\Response
*/
public function index()
{
return view('home');
}
}
路由器routes\wed.php
<?php /* |-------------------------------------------------------------------------- | Web Routes |-------------------------------------------------------------------------- | | Here is where you can register web routes for your application. These | routes are loaded by the RouteServiceProvider within a group which | contains the "web" middleware group. Now create something great! | */ Route::get('/', function () { return view('welcome'); }); Auth::routes(); Route::get('/home', 'HomeController@index');
注: 不成功的原因
-1.composer 没有安装
-2.没有进入项目的目录输入命令
-3.routes\wed.php有改动过或框架有改动过
-4.PHP版本太低
3.配置
config/database.php
填写数据库的用户名,密码,表

http://localhost/login 进入登陆
注:出现 Access denied for user 'homestead'@'localhost' (using password: YES) 就修改 .env 文件 数据库的用户名,密码,表
如果找不到表,就进行运行迁移:
php artisan migrate
laravel 5.4 改变了默认的数据库字符集,现在utf8mb4包括存储emojis支持。如果你运行MySQL v5.7.7或者更高版本,则不需要做任何事情。
当你试着在一些MariaDB或者一些老版本的的MySQL上运行 migrations 命令时,你可能会碰到下面这个错误:
[PDOException] SQLSTATE[42000]: Syntax error or access violation: 1071 Specified key was too long; max key length is 767 bytes
public function boot() { // Schema::defaultStringLength(191); }



浙公网安备 33010602011771号