Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/462.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
如何将数据从Javascript传递到PHP Laravel?_Javascript_Php_Laravel - Fatal编程技术网

如何将数据从Javascript传递到PHP Laravel?

如何将数据从Javascript传递到PHP Laravel?,javascript,php,laravel,Javascript,Php,Laravel,我正在尝试的是javascript中的一个函数,它将一个简单的数据发送到一个laravel控制器,然后将其上传到数据库,我遇到的问题是,直到现在我还没有找到发送数据的方法,我总是得到错误500 拉威尔控制器: public function crearRegistro(Request $request){ $registro = new Registro(); $registro->indicador = $request->indicador; $registro->sav

我正在尝试的是javascript中的一个函数,它将一个简单的数据发送到一个laravel控制器,然后将其上传到数据库,我遇到的问题是,直到现在我还没有找到发送数据的方法,我总是得到错误500

拉威尔控制器:

public function crearRegistro(Request $request){

$registro = new Registro();
$registro->indicador = $request->indicador;
$registro->save(); 
}
Javasript功能:

    $scope.calculoIndicador = function(){
  $http.post("/calculoIndicador")
  .then(function(response) {
    });
  $scope.indicador = 5 +5;
   alert('Se ha guardado correctamente');

}
视图:

<input class="btn btn-success" style="" ng-click="calculoIndicador()" 
 type="submit" value="Enviar"/> 
(首先,很抱歉我的英语不好)

我假设您使用的是Laravel 5.6。在控制器上,您必须使用:
$request->all()。在您的代码中,我假设您想要“Indicator”,因此:

但在javascript上,必须将“indicator”作为参数传递给post请求数据。因此,在javascript(或Angular的typescript)post上执行以下操作:

$http.post("/calculoIndicador", {indicador: 'your_data'}).then(
    function(response) {
      $scope.status = response.status;
      $scope.data = response.data;
    }, function(response) {
      $scope.data = response.data || 'Request failed';
      $scope.status = response.status;
    }
)

你能用这个错误的堆栈跟踪更新这个页面吗

如果您在ajax请求中得到500个,您可能无法在浏览器中看到堆栈跟踪,但您仍然可以在文件
storage/logs/*.log
中找到堆栈跟踪(文件名可能会有所不同)。当出现500个请求时,跟踪说明了什么?它们带有时间戳,所以应该很容易识别:)谢谢你的帮助,这对我帮助很大
$requestData = $request->all();
$registro->indicador = $requestData['indicador'];
$http.post("/calculoIndicador", {indicador: 'your_data'}).then(
    function(response) {
      $scope.status = response.status;
      $scope.data = response.data;
    }, function(response) {
      $scope.data = response.data || 'Request failed';
      $scope.status = response.status;
    }
)