# 那些年我們一起踩的 Laravel 地雷 ## 使用表單上傳檔案後無法從 $request 獲取檔案? > `<form>` 表單屬性必須要有 `enctype="multipart/form-data" ``` <form enctype="multipart/form-data"> 表單內容 </form> ``` ## 用 `method()` 更改 `<form>` 表單卻沒變化? > `<form>` 表單屬性的 `method` 必須要是 `POST` ``` <form method="POST"> @method('DELETE'); </form> ``` ## 頁面中出現奇怪的 `;` 符號? > 檢查作為 template 的 blade 檔案中,`yield()` 後面是否有分號 ## 路由執行的 Controller 與預期中的不同? ```php= Route::get(/news/{id}, NewsController@content); Route::get(/news/create, NewsController@create); ``` > 此時如果使用者前往 /news/create,執行的函式會是 content 而非 create,將帶有變數的路由放在最下方可解決 ## 表單 POST 後頁面出現 Error 419 > 在表單中加入 `@csrf` ``` <form> @csrf </form> ```