發表文章

目前顯示的是有「Laravel」標籤的文章

[Laravel] Laravel 出現 SQLSTATE[42000] Syntax error or access violation 解法

圖片
今天使用MySQL出現SQLSTATE[42000]: Syntax error or access violation,這是因為 SQL_MODE 的限制,修正方式如下: 找到config/database.php,並將 strict 改成False 就可以了 'mysql' => [     'driver' => 'mysql',     'host' => env('DB_HOST', 'localhost'),     'port' => env('DB_PORT', '3306'),     'database' => env('DB_DATABASE', 'forge'),     'username' => env('DB_USERNAME', 'forge'),     'password' => env('DB_PASSWORD', ''),     'charset' => 'utf8',     'collation' => 'utf8_unicode_ci',     'prefix' => '',     'strict' => false,     'engine' => null, ]

[Laravel] Laravel 5.5 教你修改Auth認證失敗跳轉位置

圖片
從5.3開始,未認證跳轉的判斷搬到了app\Exceptions\Handler.php中處理。今天使用5.5,發現unauthenticated方法不見了,自己加還會有衝突,不過沒關係,5.5是搬家到了vendor/laravel/framework/src/Illuminate/Foundation/Exceptions/Handler.php中,修改方式如下: 加入下段程式碼即可    /**      * Convert an authentication exception into an unauthenticated response.      *      * @param  \Illuminate\Http\Request  $request      * @param  \Illuminate\Auth\AuthenticationException  $exception      * @return \Illuminate\Http\Response      */     protected function unauthenticated($request, AuthenticationException $exception)     {         if ($request->expectsJson()) {             return response()->json(['error' => 'Unauthenticated.'], 401);         }         return redirect()->guest(route('admin.login'));     }

[Laravel] 教你如何取得 Query Builder 或 Eloquent ORM 生成的 SQL 語法

圖片
想要查看Laravel生成的SQL語法嗎?跟著我一起做就可以了 步驟如下: 先引入DB檔  use Illuminate\Support\Facades\DB; 首先要開啟記錄 DB::connection()->enableQueryLog(); 資料庫查詢 $articles = DB::table('articles') ->where('articles.id', 'some_id')->get(); 使用 DB::getQueryLog(),為記錄下來的 sql 語法,這邊直接用 dd() 印出 dd(DB::getQueryLog()); 完成 Laravel官方說明

[Laravel] Laravel5.5 出現The page has expired due to inactivity 怎麼辦?

圖片
送出表單時,出現 The page has expired due to inactivity. Please refresh and try again 怎麼辦? 別慌張,因為您的表單沒加入csrf token,加入即可,以下為範例: 在您的form底下,加入這一段 <input type="hidden" name="_token" value="{{ csrf_token() }}"> 完成,是不是很簡單就解決了呢!

[Laravel] 教你如何使用Eloquent 批量insert

圖片
教你如何使用Eloquent做批量insert 假設要新增的資料為 $data = [   ['name' => 'John', 'age' => 25],   ['name' => 'Maria', 'age' => 31],   ['name' => 'Julia', 'age' => 55], ]; 使用insert或query builder都行 Model::insert($data); DB::table('table_name')->insert($data);

[Laravel] API身分驗證 - Laravel Passport 安裝及用法

圖片
Image from: http://www.cloudways.com/blog/wp-content/uploads/Laravel-Login-Authentication-Banner.jpg 什麼是Laravel Passport 使用前,先簡單介紹Laravel passport,開發API時身分驗證是很重要的,而Laravel Passport提供原生OAuth 2 服務的組件,可通過Composer 將Laravel Passport安裝到自己的專案中,而且使用上非常簡單。 環境配置 Laravel版本:5.4 Passport安裝流程 1.使用 Composer 在專案下安裝 Passport composer require laravel/passport 2. 將 Passport 的providers註冊到配置檔案 config/app.php 的 providers 陣列中: Laravel\Passport\PassportServiceProvider::class 3.執行migrate安裝passport需要的資料表 php artisan migrate 4.執行 passport:install php artisan passport:install 5. 修改 App\User.php ,引入 Laravel\Passport\HasApiTokens,用於檢查已認證使用者的token namespace App; use Laravel\Passport\HasApiTokens; // 新增 use Illuminate\Notifications\Notifiable; use Illuminate\Foundation\Auth\User as Authenticatable; class User extends Authenticatable { use HasApiTokens, Notifiable; // 增加 HasApiTokens } 6.修改 App\Providers\AuthServiceProvider.php,在文件中引入use Laravel\Passport\Passport;,...