Если не надоел, то вот как происходит:
нажатия ссылки add_to_cart&id=420 происходит переходна страницу add_to_cart. В SWITCH :
switch($page){
case('add_to_cart'):
$id = $_GET['id'];
$add_item = add_to_cart($id);
$_SESSION['total_items'] = total_items($_SESSION['cart']);
$_SESSION['total_price'] = total_price($_SESSION['cart']);
header('Location:index.php?page=cart');
break;
}
вызывается сначала функция php add_to_cart($id);
function add_to_cart($id){
$id = $_GET['id'];
if(isset($_SESSION['cart'][$id])){
$_SESSION['cart'][$id]++;
return true;
} else{
$_SESSION['cart'][$id] = 1;
return true;
}
return false;
}
потом цена и колличество заносится в сессию и присваиваются в фунцию total_items($_SESSION['cart']); и total_price($_SESSION['cart']); в $.ajax :
<script>
$('document').ready(function(){
function addtoCart(itemId){
console.log("js-addToCart()");
$.ajax({
type: 'POST',
async: false,
url:"../send/"+itemId+'/',
dataType: 'json',
succes: function(data){
if(data['success']){
$('#cartCntItems') .html(data['cntItems']);
$('#addCart_'+ itemId).hide();
$('#removeCart_'+ itemId).show();
}
}
});
}
});
</script>
И обработав все эти функции SWITH должен произвести header('Location: /index.php?page=cart');
... но.... SWITH это ж не асинхронный запрос.. или асинхронный?