* 解决 *
我在我的一个项目中实现了SimpleCart(js) 。
一个可以register
和login
。进入logged
后,您可以使用购物车purchase items
。
我有一个问题,因为simplecart (js) 将购物车保存到localstorage,如果您login
使用其他帐户。您会看到相同的购物车结果。
有没有人为此提供php sql解决方案,将购物车结果存储到每个用户的sql中?individual session
我用这个解决了这个问题,这是一项基本技术,但它完美地满足了我的需要,我仍然会调整 php 以检查购物车项目是否存在于数据库中,是否更新或创建。
jQuery
$(".saveCart").click(function(){
$(".itemRow").each(function(){
var custId = "<?php echo $_SESSION['Username'] ?>";
var itemName = $(this).find(".item-name").text();
var itemPrice = $(this).find(".item-price").text();
var itemQty = $(this).find(".item-quantity").text();
var itemTotal = $(this).find(".item-total").text();
$.ajax({
// Enter below the full path to your "cart" php file
url: "cart.php",
type: "POST",
data: {custId: custId, itemName: itemName, itemPrice: itemPrice, itemQty: itemQty, itemTotal: itemTotal},
cache: false,
success: function (html) {
// If form submission is successful
if ( html == 1 ) {
}
// Double check if maths question is correct
else {
}
}
});
});
});
PHP
<?php
$con = mysql_connect("localhost","root","pass");
if (!$con)
{
die('Could not connect: ' . mysql_error());
}
mysql_select_db("test", $con);
$sql="INSERT INTO cart (Id, itemName, itemPrice, itemQty, itemTotal)
VALUES
('$_POST[custId]','$_POST[itemName]','$_POST[itemPrice]','$_POST[itemQty]','$_POST[itemTotal]')";
if (!mysql_query($sql,$con))
{
die('Error: ' . mysql_error());
}
if ($sql) { echo "1"; }
else {echo "2"; }
mysql_close($con);
?>