我正在使用 $_SESSION 数组来控制添加到购物车的产品。
我发现浏览器之间的差异在于 SESSION “接受”在 SESSION 中显示最新数据的速度。
A: 我快速添加一些东西到购物车/更新购物车中的金额。
Mozilla : 直接效果 - 没问题
IE:没有直接响应 - 等待 10 秒刷新.. :显示正确的数据
Chrome:没有直接响应 - 等待 10 秒刷新.. :显示正确的数据
//
B:我添加了一些动作之间等待时间为 10 秒的内容:
Mozilla : 直接效果 - 没问题
IE:直接效果 - 没问题
Chrome:直接效果 - 没问题
是什么原因在 Mozilla 中只有直接直播效果而在 IE/Chrome 中没有?我该如何解决这个问题?
function basket_skuadd(item) {
var prod_sku_passed = ($(item).attr("id"));
var result = $("#basket").empty();
$.post('../coo.php',{cookieskuadd : prod_sku_passed},
function(data){
result.append(data);
location.reload(true);
} )
}
.. 酷.php
elseif (!empty($_POST['cookieskuadd']))
{
session_start();
//check for current product in visitor's shopping cart content
$i=0;
while ($i<count($_SESSION["prodsku"]) && $_SESSION["prodsku"][$i]
!= $_POST["cookieskuadd"]) $i++;
if ($i < count($_SESSION["prodsku"])) //increase current product's item quantity
{
$_SESSION["prodpcs"][$i]++;
}
我发现:
location.reload(true);
导致问题。我虽然然后需要另一个解决方案。
当用户在购物车内时,由于主页需要更新,我添加了重新加载功能。
无需重新加载 Coo.php 更新得很好,并在页面顶部的 DIV 中显示得很好。