Javascript php会话数组未使用ajax添加新元素
我正在创建一个机票预订应用程序。我正在尝试使用PHP和Ajax创建一个基本购物车,当我单击AddtoCart按钮时,它会使用Ajax将座位号发送到“seatchecker.PHP”文件,该文件会检查座位是否可用,然后如果可用,它会使用Ajax将座位号发送到“seatader.PHP”文件,该文件会将座位号添加到会话数组中。但每次单击“添加到购物车”时,它只显示新值,而不是显示整个购物车。可能每次都会覆盖会话变量?任何帮助都将不胜感激。谢谢Javascript php会话数组未使用ajax添加新元素,javascript,php,ajax,session,Javascript,Php,Ajax,Session,我正在创建一个机票预订应用程序。我正在尝试使用PHP和Ajax创建一个基本购物车,当我单击AddtoCart按钮时,它会使用Ajax将座位号发送到“seatchecker.PHP”文件,该文件会检查座位是否可用,然后如果可用,它会使用Ajax将座位号发送到“seatader.PHP”文件,该文件会将座位号添加到会话数组中。但每次单击“添加到购物车”时,它只显示新值,而不是显示整个购物车。可能每次都会覆盖会话变量?任何帮助都将不胜感激。谢谢 <?php session_start(); //
<?php
session_start();
// Getting the value sent by checkseats.php using ajax
$seat_added = $_GET['seatadd'];
// ARRAY OF SESSION VARIABLE
$_SESSION['seat_add'] = array();
function multiple_seats_adder($getseat){
array_push($_SESSION['seat_add'],$getseat);
// TESTING
print_r($_SESSION['seat_add']);
// TESTING
echo sizeof($_SESSION['seat_add']);
}
echo multiple_seats_adder($seat_added);
?>
问题似乎源于这样一个事实:每次调用脚本时,您都在初始化一个空数组的
seat\u add
键。很可能,这不是你想要的。考虑下面的代码:
<?php
session_start();
// Getting the value sent by checkseats.php using ajax
$seat_added = $_GET['seatadd'];
// ONLY INITIALIZE THIS TO AN EMPTY ARRAY IF IT DOESN'T EXIST AT ALL:
if(!isset($_SESSION['seat_add'])){
// ARRAY OF SESSION VARIABLE
$_SESSION['seat_add'] = array();
}
function multiple_seats_adder($getseat){
array_push($_SESSION['seat_add'], $getseat);
// TESTING
print_r($_SESSION['seat_add']);
// TESTING
echo sizeof($_SESSION['seat_add']);
}
multiple_seats_adder($seat_added);
@Khuzema如果它解决了你的问题,你可以检查它作为答案。