Я не могу понять, как я могу передать через сценарии (ниже) переменную "action" и массив "products", созданные с помощью php.
<?php
$actionFile = "add";
$products = array("Name product", "price", "sku", ....);
?>
<script>
function uploadProducts() {
var formData = new FormData();
formData.append("action", <?php echo json_encode($actionFile); ?>);
formData.append("products", <?php echo json_encode($products); ?>);
$.ajax({
type: 'POST',
url: './controllers/uploadProductsController.php',
data: formData,
processData: false,
contentType: false,
beforeSend: function(){
// Show image container
//$("#loader").show();
console.log("1");
},
success: function(response){
//$('.response').empty();
//$('.response').append(response);
console.log("2");
console.log(response);
},
complete: function(){
// Hide image container
//$("#loader").hide();
console.log("3");
}
});
}
</script>
uploadProductsControlle.php (код ниже) Я печатаюмассив как одна строка, а не как массив.
<?php
include("../../functions.php");
$action = $_POST['action'];
$productsArr = $_POST['products'];
$response = array();
var_dump(json_encode($productsArr)); //ERROR THIS PRINT STRING
foreach($productsArr as $product) {
echo $product;
}
?>
Мне нужны «продукты» в качестве массива, чтобы сделать цикл.Спасибо