简单的PHP购物车数量


Simple PHP Shopping Cart Quantity

我是PHP的新手,我正在尝试为大学模块制作一个购物网站。

这是我的产品页面,列出了所有产品:

//Get the category from the URL
$category = $_GET['category'];
echo("<h1>Products: $category</h1>");
echo("<FORM METHOD='LINK' ACTION='products.php'>");
echo("<INPUT TYPE='submit' VALUE='Back'>");
echo("</FORM>");
echo("<hr>");
//Include database file with settings im
require "db.inc";
//Store the connection in a variable for later use
$connection = mysql_connect($hostname, $username, $password);
//Check for connection
if(! $connection )
{
  die('Could not connect: ' . mysql_error());
}
//If the category is all then
if($category == "All")
{
    $query = "SELECT * FROM products";//Select everything
}
//If it's not then..
else
{
    $query = "SELECT * FROM products WHERE category = '$category'";
}
//Open the Database
mysql_select_db($dbname);
//Start the query
$result = mysql_query($query, $connection);
if(!$result )
{
  die('Could not retrieve data: ' . mysql_error());
}
//Loop through the rows and display each object
while($row = mysql_fetch_array($result))
{
    //Define all variables we will use
    $productid = $row['id'];
    $productname = $row['name'];
    $productdescription = $row['description'];
    $productimage = $row['image'];
    $productprice = $row['price'];
    $productstock = $row['stock'];
    //Display each product and it's info
    echo("<h3>$productname</h3>");
    echo("<a href=$productimage><img border='0' alt=$productname src=$productimage width='100' height='100'></a><br>");
    echo("$productdescription<br>");
    echo("<b>Price:</b> £$productprice (ex VAT)<br>");
    echo("<b>Stock:</b> $productstock<br>");
    //Create a link for each product, that goes to the add to cart script with the product id in the URL
    //Only if youre logged in can you see this button
    if( isset($_SESSION['login']))
    {
        echo("<FORM METHOD='POST' ACTION='process_addtocart.php?id=$productid&quantity=1'>");
        echo("<INPUT TYPE='submit' VALUE='Add to Cart'>");
        echo("</FORM>");
    }
    echo("<hr>");
}

如您所见,它从数据库中获取所有产品,并添加一个按钮,该按钮链接到addcart php文件,其中包含要添加的ID和数量。

这是我添加到购物车的功能:

<?php
    //Make sure user is logged in first
    if( isset($_SESSION['login']))
    {
        //Setup our shopping cart if it isnt already setup into an array table to hold item info
        if( empty($_SESSION['shoppingcart']))
        {
            $_SESSION['shoppingcart'] = array();
        }
        $id = $_GET['id'];
        $quantitytoadd = $_GET['quantity'];
        if( isset( $_SESSION['shoppingcart'][$id]))
        {
            //CODE TO ADD TO QUANTITY????
        }
        array_push($_SESSION['shoppingcart'], $id);
        echo("Item has been added to your cart!");

    }
    else
    {
        echo("<p>Please login to add items to your shopping cart!</P>");
    }
?>

如何让它每次递增数组表中该特定 ID 的数量值?

会不会是这样的:

array_push($_SESSION['shoppingcart'], $id, $quantitytoadd++);
或者

,您可以使用已有的产品将产品递增 1,并将产品 ID 作为键。还要保持输入干净。

<?php
//Make sure user is logged in first
if( isset($_SESSION['login']))
{
    //Setup our shopping cart if it isnt already setup into an array table to hold item info
    if( empty($_SESSION['shoppingcart']))
    {
        $_SESSION['shoppingcart'] = array();
    }
    $id = $_GET['id'];
    $quantitytoadd = $_GET['quantity'];
    if( isset( $_SESSION['shoppingcart'][$id]))
    {
        //CODE TO ADD TO QUANTITY????
         $_SESSION['shoppingcart'][$id]++;
    }
    else
    {
        $_SESSION['shoppingcart'][$id] = 1;
    }
    echo("Item has been added to your cart!");

}
else
{
    echo("<p>Please login to add items to your shopping cart!</P>");
}
?>