Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/270.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php Symfony\Component\HttpKernel\Exception\MethodNotAllowedHttpException-Laravel 5.7_Php_Laravel_Laravel 5_Laravel 5.7_Forms_Http Post - Fatal编程技术网

Php Symfony\Component\HttpKernel\Exception\MethodNotAllowedHttpException-Laravel 5.7

Php Symfony\Component\HttpKernel\Exception\MethodNotAllowedHttpException-Laravel 5.7,php,laravel,laravel-5,laravel-5.7,forms,http-post,Php,Laravel,Laravel 5,Laravel 5.7,Forms,Http Post,我有一条路线 Route::post('skill/store','SkillController@store'); 我有一张表格叫它 {!! Form::open(array('class' => 'form-horizontal', 'role' =>'form', 'url'=>'skill/store','files' => true, 'method' => 'POST' )) !!} 当我提交时,我不断地得到 Symfony\Component\Ht

我有一条路线

Route::post('skill/store','SkillController@store');
我有一张表格叫它

{!! Form::open(array('class' => 'form-horizontal', 'role' =>'form', 'url'=>'skill/store','files' => true, 'method' => 'POST' )) !!}
当我提交时,我不断地得到

Symfony\Component\HttpKernel\Exception\MethodNotAllowedHttpException

如何进一步调试这一点

+--------+----------+--------------------------------------------------------+-----------------------------+------------------------------------------------------------------------+----------------+
| Domain | Method   | URI                                                    | Name                        | Action                                                                 | Middleware     |
+--------+----------+--------------------------------------------------------+-----------------------------+------------------------------------------------------------------------+----------------+
|        | POST     | /                                                      |                             | App\Http\Controllers\AccountController@postSignIn                      | web            |
|        | GET|HEAD | /                                                      |                             | App\Http\Controllers\FEController@index                                | web            |
|        | GET|HEAD | api/distributors                                       |                             | App\Http\Controllers\APIController@getDistributors                     | web            |
|        | GET|HEAD | api/reset-password                                     |                             | App\Http\Controllers\APIController@resetPassword                       | web            |
|        | GET|HEAD | code/{file}/_                                          |                             | App\Http\Controllers\ToolController@showFile                           | web            |
|        | GET|HEAD | coding-puzzle                                          |                             | App\Http\Controllers\CodeController@codingPuzzle                       | web            |
|        | POST     | coding-puzzle/process                                  |                             | App\Http\Controllers\CodeController@codingPuzzleProcess                | web            |
|        | GET|HEAD | contact                                                |                             | App\Http\Controllers\ContactController@index                           | web,auth       |
|        | POST     | contact-form                                           |                             | App\Http\Controllers\AccountController@contact                         | web            |
|        | GET|HEAD | contact/{id}                                           |                             | App\Http\Controllers\ContactController@show                            | web,auth       |
|        | DELETE   | contact/{id}/destroy                                   | contact.destroy             | App\Http\Controllers\ContactController@destroy                         | web,auth       |
|        | GET|HEAD | dashboard                                              |                             | App\Http\Controllers\FEController@dashboard                            | web,auth       |
|        | POST     | forgot-password                                        | forgot-password-post        | App\Http\Controllers\AccountController@postForgotPassword              | web            |
|        | GET|HEAD | getCaptivePortalURLs/{hostname}/{cpe_mac}/{device_mac} |                             | App\Http\Controllers\ToolController@getCaptivePortalURLs               | web            |
|        | GET|HEAD | getCertbyHostName/{hostname}                           |                             | App\Http\Controllers\ToolController@getCertbyHostName                  | web            |
|        | GET|HEAD | getCommitIDBaseOnBuildNumber/{buildNumber}             |                             | App\Http\Controllers\ToolController@getCommitIDBaseOnBuildNumber       | web            |
|        | GET|HEAD | getImagesFromSite/{hostname}                           |                             | App\Http\Controllers\ToolController@getImagesFromSite                  | web            |
|        | GET|HEAD | getUpdateServiceTypeCommand                            |                             | App\Http\Controllers\ToolController@getUpdateServiceTypeCommand        | web            |
|        | GET|HEAD | getskilldata                                           | getskilldata                | App\Http\Controllers\SkillController@skilldata                         | web            |
|        | GET|HEAD | guest                                                  |                             | App\Http\Controllers\GuestController@index                             | web,auth       |
|        | GET|HEAD | guest/create                                           | guest.create                | App\Http\Controllers\GuestController@create                            | web,auth       |
|        | POST     | guest/store                                            |                             | App\Http\Controllers\GuestController@store                             | web,auth       |
|        | GET|HEAD | guest/{id}                                             |                             | App\Http\Controllers\GuestController@show                              | web,auth       |
|        | DELETE   | guest/{id}/destroy                                     | guest.destroy               | App\Http\Controllers\GuestController@destroy                           | web,auth       |
|        | GET|HEAD | guest/{id}/edit                                        |                             | App\Http\Controllers\GuestController@edit                              | web,auth       |
|        | PUT      | guest/{id}/update                                      | guest.update                | App\Http\Controllers\GuestController@update                            | web,auth       |
|        | GET|HEAD | image                                                  |                             | App\Http\Controllers\ImageController@index                             | web,auth,admin |
|        | GET|HEAD | image/create                                           |                             | App\Http\Controllers\ImageController@create                            | web,auth,admin |
|        | POST     | image/store                                            |                             | App\Http\Controllers\ImageController@store                             | web,auth,admin |
|        | PUT      | image/type/{id}/update                                 |                             | App\Http\Controllers\ImageController@updateType                        | web,auth,admin |
|        | GET|HEAD | image/types                                            |                             | App\Http\Controllers\ImageController@types                             | web,auth,admin |
|        | GET|HEAD | image/{id}                                             |                             | App\Http\Controllers\ImageController@get                               | web,auth,admin |
|        | DELETE   | image/{id}/destroy                                     |                             | App\Http\Controllers\ImageController@destroy                           | web,auth,admin |
|        | GET|HEAD | image/{id}/edit                                        |                             | App\Http\Controllers\ImageController@edit                              | web,auth,admin |
|        | PUT      | image/{id}/update                                      |                             | App\Http\Controllers\ImageController@update                            | web,auth,admin |
|        | GET|HEAD | images                                                 |                             | App\Http\Controllers\ImageController@all                               | web,auth,admin |
|        | GET|HEAD | info                                                   |                             | App\Http\Controllers\FEController@info                                 | web            |
|        | POST     | login                                                  |                             | App\Http\Controllers\Auth\LoginController@login                        | web,guest      |
|        | GET|HEAD | login                                                  | login                       | App\Http\Controllers\Auth\LoginController@showLoginForm                | web,guest      |
|        | POST     | logout                                                 | logout                      | App\Http\Controllers\Auth\LoginController@logout                       | web            |
|        | GET|HEAD | logout                                                 |                             | App\Http\Controllers\FEController@getSignout                           | web,auth       |
|        | GET|HEAD | logs                                                   |                             | App\Http\Controllers\GeneralController@logs                            | web,auth,admin |
|        | GET|HEAD | nuc/{tableName}                                        |                             | App\Http\Controllers\DatabaseController@show                           | web            |
|        | POST     | password/email                                         | password.email              | App\Http\Controllers\Auth\ForgotPasswordController@sendResetLinkEmail  | web,guest      |
|        | POST     | password/reset                                         | password.update             | App\Http\Controllers\Auth\ResetPasswordController@reset                | web,guest      |
|        | GET|HEAD | password/reset                                         | password.request            | App\Http\Controllers\Auth\ForgotPasswordController@showLinkRequestForm | web,guest      |
|        | GET|HEAD | password/reset/{token}                                 | password.reset              | App\Http\Controllers\Auth\ResetPasswordController@showResetForm        | web,guest      |
|        | GET|HEAD | phpinfo                                                |                             | App\Http\Controllers\GeneralController@phpinfo                         | web,auth       |
|        | GET|HEAD | portfolio                                              |                             | App\Http\Controllers\PortfolioController@index                         | web,auth,admin |
|        | GET|HEAD | portfolio/all                                          |                             | App\Http\Controllers\FEController@portfolioall                         | web            |
|        | GET|HEAD | portfolio/create                                       |                             | App\Http\Controllers\PortfolioController@create                        | web,auth,admin |
|        | POST     | portfolio/image/{id}/destroy                           |                             | App\Http\Controllers\PortfolioController@destroyImage                  | web,auth,admin |
|        | POST     | portfolio/store                                        |                             | App\Http\Controllers\PortfolioController@store                         | web,auth,admin |
|        | DELETE   | portfolio/{id}/destroy                                 |                             | App\Http\Controllers\PortfolioController@destroy                       | web,auth,admin |
|        | GET|HEAD | portfolio/{id}/edit                                    |                             | App\Http\Controllers\PortfolioController@edit                          | web,auth,admin |
|        | GET|HEAD | portfolio/{id}/get                                     |                             | App\Http\Controllers\PortfolioController@get                           | web,auth,admin |
|        | POST     | portfolio/{id}/update                                  |                             | App\Http\Controllers\PortfolioController@update                        | web,auth,admin |
|        | GET|HEAD | projects/oop/{id}                                      |                             | App\Http\Controllers\ProjectController@oop                             | web,auth,admin |
|        | GET|HEAD | register                                               | register                    | App\Http\Controllers\Auth\RegisterController@showRegistrationForm      | web,guest      |
|        | POST     | register                                               |                             | App\Http\Controllers\AccountController@postRegister                    | web            |
|        | POST     | reset-password                                         | reset-password-post         | App\Http\Controllers\AccountController@postReSetPassword               | web            |
|        | GET|HEAD | reset-password/{code}                                  | reset-password              | App\Http\Controllers\AccountController@getReSetPassword                | web            |
|        | GET|HEAD | resume                                                 |                             | App\Http\Controllers\GeneralController@resume                          | web            |
|        | GET|HEAD | resume/doc                                             |                             | App\Http\Controllers\GeneralController@resumeDoc                       | web            |
|        | GET|HEAD | run/{file}                                             |                             | App\Http\Controllers\GeneralController@code                            | web            |
|        | GET|HEAD | run/{file}/_                                           |                             | App\Http\Controllers\ToolController@showFile                           | web            |
|        | GET|HEAD | seed/{tableName}                                       |                             | App\Http\Controllers\DatabaseController@seed                           | web            |
|        | POST     | set-password                                           | set-password-post           | App\Http\Controllers\AccountController@postSetPassword                 | web            |
|        | GET|HEAD | set-password/{code}                                    | set-password                | App\Http\Controllers\AccountController@getSetPassword                  | web            |
|        | GET|HEAD | showFiles                                              |                             | App\Http\Controllers\ToolController@showFiles                          | web            |
|        | GET|HEAD | showFiles/{fileName}                                   |                             | App\Http\Controllers\ToolController@showFile                           | web            |
|        | GET|HEAD | skill                                                  |                             | App\Http\Controllers\SkillController@index                             | web,auth,admin |
|        | GET|HEAD | skill/create                                           |                             | App\Http\Controllers\SkillController@create                            | web,auth,admin |
|        | POST     | skill/store                                            | skill.store                 | App\Http\Controllers\SkillController@store                             | web,auth,admin |
|        | DELETE   | skill/{id}/destroy                                     |                             | App\Http\Controllers\SkillController@destroy                           | web,auth,admin |
|        | GET|HEAD | skill/{id}/edit                                        |                             | App\Http\Controllers\SkillController@edit                              | web,auth,admin |
|        | POST     | skill/{id}/update                                      |                             | App\Http\Controllers\SkillController@update                            | web,auth,admin |
|        | GET|HEAD | skills                                                 |                             | App\Http\Controllers\SkillController@all                               | web            |
|        | GET|HEAD | user                                                   |                             | App\Http\Controllers\UserController@index                              | web,auth,admin |
|        | GET|HEAD | user-profile/{id}                                      |                             | App\Http\Controllers\UserController@profile                            | web,auth       |
|        | GET|HEAD | user/create                                            | user.create                 | App\Http\Controllers\UserController@create                             | web,auth,admin |
|        | POST     | user/store                                             | user.store                  | App\Http\Controllers\UserController@store                              | web,auth,admin |
|        | GET|HEAD | user/{id}                                              |                             | App\Http\Controllers\UserController@show                               | web,auth,admin |
|        | DELETE   | user/{id}/destroy                                      | user.destroy                | App\Http\Controllers\UserController@destroy                            | web,auth       |
|        | GET|HEAD | user/{id}/edit                                         |                             | App\Http\Controllers\UserController@edit                               | web,auth       |
|        | PUT      | user/{id}/update                                       | user.update                 | App\Http\Controllers\UserController@update                             | web,auth       |
|        | PUT      | user/{id}/update_basic_info                            | user.update_basic_info      | App\Http\Controllers\UserController@update_basic_info                  | web,auth       |
|        | PUT      | user/{id}/update_contact_info                          | user.update_contact_info    | App\Http\Controllers\UserController@update_contact_info                | web,auth       |
|        | PUT      | user/{id}/update_cover_picture                         | user.update_cover_picture   | App\Http\Controllers\UserController@update_cover_picture               | web,auth       |
|        | PUT      | user/{id}/update_profile_picture                       | user.update_profile_picture | App\Http\Controllers\UserController@update_profile_picture             | web,auth       |
|        | PUT      | user/{id}/update_summary_info                          | user.update_summary_info    | App\Http\Controllers\UserController@update_summary_info                | web,auth       |
|        | GET|HEAD | visitor                                                |                             | App\Http\Controllers\VisitorController@index                           | web,auth,admin |
|        | DELETE   | visitor/truncate                                       | visitor.truncate            | App\Http\Controllers\VisitorController@truncate                        | web,auth,admin |
|        | GET|HEAD | visitor/{id}                                           |                             | App\Http\Controllers\VisitorController@show                            | web,auth,admin |
|        | GET|HEAD | wedding                                                |                             | App\Http\Controllers\WeddingController@index                           | web            |
|        | GET|HEAD | wedding/guest/api                                      |                             | App\Http\Controllers\WeddingController@api                             | web            |
|        | GET|HEAD | wedding/guest/{id}/note/display                        |                             | App\Http\Controllers\WeddingController@display                         | web            |
|        | GET|HEAD | wedding/guest/{id}/note/not_display                    |                             | App\Http\Controllers\WeddingController@notDisplay                      | web            |
|        | GET|HEAD | wedding/invite                                         |                             | App\Http\Controllers\WeddingController@invite                          | web            |
|        | GET|HEAD | wedding/mexico                                         |                             | App\Http\Controllers\WeddingController@mexico                          | web            |
|        | POST     | wedding/note                                           |                             | App\Http\Controllers\WeddingController@note                            | web            |
|        | POST     | wedding/rsvp                                           |                             | App\Http\Controllers\WeddingController@rsvp                            | web            |
|        | GET|HEAD | works                                                  |                             | App\Http\Controllers\ImageController@works                             | web            |
+--------+----------+--------------------------------------------------------+-----------------------------+------------------------------------------------------------------------+----------------+
在表单的操作中使用像skill/store这样的硬编码url总是一个坏主意,尤其是在这种情况下,当您可以很好地访问相对url时

说出你的路线:

Route::post('skill/store','SkillController@store')->name('skill.store');
。。。并将窗体的操作更改为

{!! Form::open(array('class' => 'form-horizontal', 'role' =>'form', 'route'=> 'skill.store' ,'files' => true, 'method' => 'POST' )) !!}
编辑:或者,也可以按如下方式指定操作属性:

{!! Form::open(array('class' => 'form-horizontal', 'role' =>'form', 'action'=> 'SkillController@store', 'files' => true )) !!}
编辑2:从你的截图来看,似乎没有为技能/商店定义获取路线。在您的特定情况下,您需要定义通常会显示成功消息的路由,或者您可以这样做

public function store(Request $request)
{
    // save the record

    return back()->with('success', 'The record has been saved successfully'); 
}
这将使您返回上一个路由,该路由已存在,您还可以在视图中添加一条成功消息

在表单的操作中使用像skill/store这样的硬编码url总是一个坏主意,尤其是在这样的情况下,当您可以很好地访问相对url时

说出你的路线:

Route::post('skill/store','SkillController@store')->name('skill.store');
。。。并将窗体的操作更改为

{!! Form::open(array('class' => 'form-horizontal', 'role' =>'form', 'route'=> 'skill.store' ,'files' => true, 'method' => 'POST' )) !!}
编辑:或者,也可以按如下方式指定操作属性:

{!! Form::open(array('class' => 'form-horizontal', 'role' =>'form', 'action'=> 'SkillController@store', 'files' => true )) !!}
编辑2:从你的截图来看,似乎没有为技能/商店定义获取路线。在您的特定情况下,您需要定义通常会显示成功消息的路由,或者您可以这样做

public function store(Request $request)
{
    // save the record

    return back()->with('success', 'The record has been saved successfully'); 
}

这将使您返回上一个路由,该路由已存在,您还可以在视图中添加一条成功消息

调用类Route::method时,它只接受该方法调用它。因此,在你的情况下,该职位不起作用。首先,我将发布表单和var_dump它的请求方法。

当您调用类Route::method时,它只接受通过该方法调用它。因此,在你的情况下,该职位不起作用。首先,我会发布表单和var_dump它的请求方法。

我也有同样的错误。 为了向前调试,我决定检查match方法第157行中的$Request变量,在我的示例中,该变量位于文件…\vendor\laravel\framework\src\light\Routing\RouteCollection.php中

public function match(Request $request)
{
    $routes = $this->get($request->getMethod());
    dd($request);
在我的例子中,我发现这个方法不是POST而是补丁

警告:顺便说一句,如果您决定修改框架文件中的任何代码,那么在进行此类测试之前提交或备份并不是一个坏主意

我希望这能有所帮助

我也犯了同样的错误。 为了向前调试,我决定检查match方法第157行中的$Request变量,在我的示例中,该变量位于文件…\vendor\laravel\framework\src\light\Routing\RouteCollection.php中

public function match(Request $request)
{
    $routes = $this->get($request->getMethod());
    dd($request);
在我的例子中,我发现这个方法不是POST而是补丁

警告:顺便说一句,如果您决定修改框架文件中的任何代码,那么在进行此类测试之前提交或备份并不是一个坏主意


我希望这能有所帮助

为什么需要此“方法”=>“发布”?表单打开时应该是默认的。我明白了,我遵循了其中一个家伙的建议。不管怎样,我得到了和name相同的结果。Symfony\Component\HttpKernel\Exception\methodnotallowedhttpexceptioninterest。你能把php artisan route:list的结果添加到你的问题中吗?看起来,你也可以只做route=>name。您可以尝试一下更新后的代码吗?您也可以指定action属性。我也删除了这个方法。你能试一下更新后的代码吗?为什么需要这个“方法”=>POST?表单打开时应该是默认的。我明白了,我遵循了其中一个家伙的建议。不管怎样,我得到了和name相同的结果。Symfony\Component\HttpKernel\Exception\methodnotallowedhttpexceptioninterest。你能把php artisan route:list的结果添加到你的问题中吗?看起来,你也可以只做route=>name。您可以尝试一下更新后的代码吗?您也可以指定action属性。我也删除了这个方法。你能试试更新后的代码吗?我更新了我的帖子,除了var_dump,你还有什么其他建议吗?我想你误解了我。您必须将表单发布到另一个PHP,然后var_转储它的请求,以查看该方法是否作为post接收。也许拉威尔在做消毒什么的。对于html5,post是小写的。要测试,请尝试以下操作:Route::match['get','post'],'/user',['uses'=>'AppController@user“,”作为“=>”用户访问“,”角色“=>”HomeController@useroles', ];明白了,让我做一个dd看看我是否在正确的存储功能中。我更新了我的帖子,除了var_转储之外,你还有其他建议吗?我想你误解了我。您必须将表单发布到另一个PHP,然后var_转储它的请求,以查看该方法是否作为post接收。也许拉威尔在做消毒什么的。对于html5,post是小写的。要测试,请尝试以下操作:Route::match['get','post'],'/user',['uses'=>'AppController@user“,”作为“=>”用户访问 ss'、'角色'=>'HomeController@useroles', ];明白了,让我做一个dd,看看我是否在正确的存储功能中。