TypeError: Невозможно прочитать свойство 'param' из неопределенного в angularjs - PullRequest
0 голосов
/ 20 ноября 2018
$scope.productDetails = {};
$scope.getProductDetailById = function(arg) {

  var data = $.param({
    id: arg
  });

  $http({
    method: 'POST',
    url: 'http://' + $scope.url + '/scripts/viewProductById.php',
    headers: {
      'Content-Type': 'application/x-www-form-urlencoded;'
    },
    data: data
  })
  .then(function(response) {
    $scope.productDetails = response.data;
    $location.path('/single_product');
  },
  function(response) {
    //alert('wrong');
  })
}

Получение этой ошибки в консоли:

TypeError: Невозможно прочитать свойство 'param' из неопределенного

Вот мой внутренний код, написанный на PHPи я проверил с почтальоном и данные извлекаются в json:

session_start();
require 'db.php';
$id = $_POST['id'];
$sql = "SELECT * FROM product WHERE id='$id'";
$qur = $connection->query($sql);
$r = mysqli_fetch_assoc($qur);
$msg[] = array("id" => $r['id'],"name" => $r['name'],"category" => $r['category'],"material" => $r['material'],
"pattern" => $r['pattern'],"occasion" => $r['occasion'],"length" => $r['length'],"width" => $r['width'],
"wash_care" => $r['wash_care'],"color" => $r['color'],"stock" => $r['stock'],"new_price" => $r['new_price'],
"old_price" => $r['old_price'],"delivery_in" => $r['delivery_in'],"image_one" => $r['image_one'],
"image_two" => $r['image_two'],"image_three" => $r['image_three'],"image_four" => $r['image_four'],
"image_five" => $r['image_five'],"description" => $r['description'],"date" => $r['date']);

$json = $msg;

header('content-type: application/json');
echo json_encode($json);
@mysqli_close($connection);

После изменения:

var data = {
id: arg
  };

Получение пустых данных

enter image description here

1 Ответ

0 голосов
/ 20 ноября 2018

Вам не нужно использовать его таким образом.

var data = $.param({
    id: arg
});

Переменная данных может быть просто Object Literal примерно так.

var data = {
    id: arg
};
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...