php - 如何在 laravel 中使用 javascript 的 post 方法将数据传递给 Controller

标签 php mysql laravel-5

我想将数据从 View 传递到 Controller 以及一个指示我需要在 Controller 上执行的操作的变量

这是查看代码 函数 addUpdateData(数据)

{
    alert(data);
    $(function(){
      $.ajax({
        method : "POST",
        url: "welcome/addupdate",        
        data: {id: data},        
        success : function(response)
        {
          alert(response);
        }
      });
    });
}

<input type="submit" id="add" class="btn btn-primary" onclick="addUpdateData(id)" value="Add"></button>

下面是routes.php的代码

Route::post('welcome/addupdate','FormController@addUpdateData');

Controller 代码如下

public function addUpdateData(Request $req)
    {
        $id = $req['data'];
        return $id;
}

我想在带有数据变量的 Controller 上接收发布的数据,我将在其中获取是否要添加或更新数据..

我收到不允许方法的错误 我不知道我错过了什么!!!

请帮忙

最佳答案

你快到家了。你在你的 Controller 中犯了一个错误。它应该看起来像:

public function addUpdateData($id, Request $req)
    {
        $input = $req->all();
        return $id;
}

您的路线:

Route::post('welcome/addupdate/{id}','FormController@addUpdateData');

这是因为你没有传递带有键 data 的数据,而是直接像定义了 js 对象一样。最好像这样使用 $.post 方法:

$(function(){
  $.post("welcome/addupdate/" . data, $('form').serialize(), function(response) {
      alert(response);
    }
  });
});

我觉得比较清楚。

关于php - 如何在 laravel 中使用 javascript 的 post 方法将数据传递给 Controller ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36985426/

相关文章:

MySQL SUM、join 和 union 4 个表

php - INSERT INTO 不将数据发送到数据库

angularjs - 使用 Angular View 的 Laravel 5 密码重置

php - Netbeans将 “function print()”标记为语法错误

php - 基于 PHP session 变量的 Javascript 表单验证

php - Facebook 访问 token - 服务器端身份验证

MySQL语法从多个表扩展链接

php - MySQL PHP 黑客攻击预防/数据库备份?

php - 如何编写 Laravel Eloquent whereBetween 方法与两列

php - Laravel 和 Azure 错误 : Internal Server Error