【问题标题】:Symfony\Component\HttpKernel\Exception\MethodNotAllowedHttpExceptionsgrSymfony\Component\HttpKernel\Exception\MethodNotAllowedHttpExceptionsgr
【发布时间】:2018-11-07 21:24:22
【问题描述】:

当我点击发布按钮时,出现下一个错误:

Symfony\Component\HttpKernel\Exception\MethodNotAllowedHttpException 无消息 这是我的代码,位于blade.php

<!DOCTYPE html>
<html>
<head>
<title> PHP Basics </title>
</head>
</body>
<form method="post" action="<?php echo $_SERVER['PHP_SELF'];?>">
        Guest name:<input type="text" name="guest_name" value="Arsen" required>
        <input type="submit">
</form>

<?php

    if($_SERVER["REQUEST_METHOD"] == "POST") {
        $guest_name = $_POST['guest_name'];
        echo "Hello, $guest_name!<br>";
    }

    echo "</div>";

?>
</body>
</html>

【问题讨论】:

  • 它是如何与laravel连接的?这可以在没有任何框架的情况下完成。
  • 也许你是对的,但我用 laravel 做了,所以决定指定这个标签
  • 你应该检查路由文件中表单操作url的方法。可能您只定义了GET 方法。所以要么将帖子添加到允许的方法,要么将表单方法更改为 GET。

标签: php


【解决方案1】:

您收到该错误是因为您无法从 laravel 声明路由。

而不是使用

<form method="post" action="<?php echo $_SERVER['PHP_SELF'];?>">
        Guest name:<input type="text" name="guest_name" value="Arsen" required>
        <input type="submit">
</form>

你必须这样做

<form method="post" action="{{route('myroutename')}}"> 
    <!-- csrf_field()  This is the validation of valid post request -->    
     {{ csrf_field() }}      
     Guest name:<input type="text" name="guest_name" value="Arsen" required>
     <input type="submit">
</form>

在你的route.php or web.php

Route::get('/my-route-name', 'MyModelController@store')->name('myroutename');

希望这能让您了解如何解决此类问题。

【讨论】:

    猜你喜欢
    • 2021-05-28
    • 1970-01-01
    • 2014-06-28
    • 2021-12-19
    • 2021-01-19
    • 2020-06-22
    • 2014-11-20
    相关资源
    最近更新 更多