此次咱們須要開始使用繼承開發環境了,由於咱們須要使用數據庫,完成用戶的登陸註冊功能。
首先要配置好XAMPP環境,咱們須要添加一個vhost,指向blog5.8的public目錄。php
打開XAMPP的配置目錄xampp/apache/conf
,編輯http.conf
文件,搜索Listen 80
,而後在下面再添加一個端口監聽Listen 8000
。修改後以下mysql
Listen 80 Listen 8000
打開XAMPP的配置目錄xampp/apache/conf/extra
編輯 httpd-vhosts.conf
文件,在文件末尾添加如下內容,注意修改blog5.8的目錄laravel
``
<VirtualHost *:8000>
ServerAdmin wulei@jingcheng.cn
DocumentRoot "D:/code/blog5.8/public"
ServerName localhost
</VirtualHost>
<Directory "D:/code/blog5.8/public">
Options Indexes FollowSymLinks Includes ExecCGI
AllowOverride All
Order allow,deny
Allow from all
</Directory>
``web
到這裏,咱們已經配置好了xampp,其餘的咱們使用默認配置。如今訪問http://localhost:8000 能夠看到以前使用laravel內置服務器訪問過的首頁。sql
數據庫使用默認的http://localhost/phpmyadmin
管理。訪問http://localhost/phpmyadmin
建立一個名爲laravel58
的數據庫,字符集設置爲utf8mb4_general_ci
數據庫
Laravel 自己已經生成好了配置文件。數據庫的配置文件在blog5.8/conf/database.php
中。Laravel5.8的數據庫配置文件中包含了各類數據庫配置的例子,這裏咱們使用的是mysql數據庫,因此咱們須要修改database.php
中的mysql配置apache
'mysql' => [ 'driver' => 'mysql', 'host' => env('DB_HOST', '127.0.0.1'), 'port' => env('DB_PORT', '3306'), 'database' => env('DB_DATABASE', 'forge'), 'username' => env('DB_USERNAME', 'forge'), 'password' => env('DB_PASSWORD', ''), 'unix_socket' => env('DB_SOCKET', ''), 'charset' => 'utf8mb4', 'collation' => 'utf8mb4_unicode_ci', 'prefix' => '', 'prefix_indexes' => true, 'strict' => true, 'engine' => null, 'options' => array_filter([ PDO::MYSQL_ATTR_SSL_CA => env('MYSQL_ATTR_SSL_CA'), ]), ],
咱們須要修改的內容有數據庫鏈接地址,數據庫名稱,數據庫用戶名,數據庫密碼,其餘的參數,視本身本地數據庫配置修改。這裏要注意,通常在開發中,對數據庫配置而已經是比較敏感的內容。所以通常使用本地環境變量配置實際的數據庫信息。Laravel 的全部本地環境變量都配置在根目錄下的.env
文件中。這個文件在默認windowns
文件瀏覽器下是隱藏的。瀏覽器
這裏咱們也使用本地環境便利配置好咱們的本地書庫服務器
``
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=larave58 #//註釋,數據庫名稱
DB_USERNAME=root #//註釋,數據庫用戶名
DB_PASSWORD= #註釋,數據庫密碼,xampp默認爲空
``app
Laravel自己提供快捷構建用戶登陸的命令。在根目錄下,執行如下命令:
``sh
php artisan make:auth
``
這樣,laravel就爲咱們構建好了,用戶登陸註冊的界面了。界面的試圖文件在resources\views\auth
目錄下。註冊登陸相關的控制器在app\Http\Controllers\Auth
目錄下
訪問http://localhost:8000 能夠發現頂部欄已經出現了登陸註冊的入口。
登陸界面
註冊界面
除了生成界面以外,這個命令還在路由文件中route/web.php
添加了用戶登陸註冊須要的路由。
Auth::routes();
上面的操做只是生成了用戶註冊登陸的界面,並無建立用戶表。加入你嘗試去註冊用戶,你就會看到相似下面的錯誤提示:
請不要懼怕,這只是laravel在告訴你,你在註冊用戶以前,系統沒有準備好數據表。
Laravel已經準備好了數據遷移文件,咱們只要在命令行中執行數據遷移命令,laravel就會幫咱們建立好所須要的數據表。在根目錄下,執行下面的命令:
php artisan migrate
這一步,若是你的命令提高錯誤,錯誤信息相似於下面
``
PDOException::("SQLSTATE[42000]: Syntax error or access violation: 1071 Sp
ecified key was too long; max key length is 767 bytes")
``
這是因爲mysql版本照成的。若是出現這個錯誤提高,那麼,請編輯app\Provides\AppServiceProvider.php
,修改register方法以下:
public function register() { \Schema::defaultStringLength(191); }
而後刪除掉數據庫中的全部的表,從新執行一遍數據遷移命令就能夠了。
以上操做成功以後,咱們就能夠註冊用戶了,這裏咱們註冊一個admin的用戶。註冊成功以後,Laravel會將當前註冊用戶登陸,因此咱們看到的是下面的界面:
到這裏,僅僅幾個命令就實現了簡單的用戶註冊登陸功能。其實上面的操做還實現了郵箱找會密碼的功能,等後續咱們實現用戶註冊添加郵件驗證的時候一塊兒詳細講解。