Вам необходимо добавить session_start();
перед использованием переменной $_SESSION
. Вы должны проверить, установлен ли $_SESSION['ids']
, используя isset()
.
session_start();
$product_id = $_POST['product_id'];
$_SESSION['ids'] = $product_id;
Это должно сработать, пожалуйста, проверьте это.
Тем не менее, я бы реструктурировал ваш код JavaScript, чтобы уменьшить количество отправляемых запросов. В данный момент вы отправляете отдельный запрос для каждого флажка, а не просто отправляете один массив (просто удалите цикл $.each
).
if(chkArray.length !== 0){
$.ajax({
method: 'POST',
url : "http://localhost/test/test2.php",
data : {product_id: chkArray},
success : function(resp){
alert("Product is added to be compared");
}
});
}
Помните, что теперь вы добавляете массив в массив каждый раз, когда выполняете POST.
Array
(
[0] => Array
(
[0] => 1
)
[1] => Array
(
[0] => 1
[1] => 3
)
)