尝试用PHP创建一个简单的购物车,其中包含会话
我有一个任务,我们应该创建一个电子商务网站,从数据库中提取产品,列出它们,并允许您将它们添加到购物车,虽然只需要一个数量的项目,但它必须有其他功能,我想我可以自己弄清楚 我现在要做的是,当用户点击“立即购买”按钮时,我为从数据库中取出的每一件物品创建了一个“立即购买”按钮,实际上是将物品添加到我的购物车中,但我真的迷路了。我正在尝试使用购物车会话,以便在浏览器关闭时删除所有内容 下面是我为列出可用项目的页面所做的:尝试用PHP创建一个简单的购物车,其中包含会话,php,session,cart,Php,Session,Cart,我有一个任务,我们应该创建一个电子商务网站,从数据库中提取产品,列出它们,并允许您将它们添加到购物车,虽然只需要一个数量的项目,但它必须有其他功能,我想我可以自己弄清楚 我现在要做的是,当用户点击“立即购买”按钮时,我为从数据库中取出的每一件物品创建了一个“立即购买”按钮,实际上是将物品添加到我的购物车中,但我真的迷路了。我正在尝试使用购物车会话,以便在浏览器关闭时删除所有内容 下面是我为列出可用项目的页面所做的: <?php $id = $_GET['id']; $sql
<?php
$id = $_GET['id'];
$sql = "SELECT * FROM products WHERE id=$id";
$result = mysqli_query($connection, $sql);
echo '<div id="description">';
if(mysqli_num_rows($result)>0){
while($row = mysqli_fetch_array($result)){
echo '<h2>'.$row['Name'].'</h2>';
echo '<p>'.$row['Description'].'</p>';
echo '<a href="cart.php" id="'.$row['id'].'" class="buyNow">Buy Now - $'.$row['Price'].'.00</a>';
}
}else{
echo "There is something wrong.";
}
echo '</div>';
?>
这是我为购物车准备的:
<?php
require('connection.php');
session_start();
$cart_content = array();
?>
我还没有完成为将成为购物车项目的阵列创建骨骼的工作。我不知道我是否有一个休息的上午或什么,但我似乎不知道如何用我创建的按钮添加项目。当我想做这件事的时候,看起来应该很容易,但我就是想不出来,不管我看的是什么教程。目前,这是我唯一需要帮助的事情,因为我非常确定我可以自己解决其余的问题。首先,当您使用锚定标记启动购物车处理时,需要将
id添加到查询字符串中
<?php
session_start();
// show all products in this script
$sql = "SELECT * FROM products";
$result = mysqli_query($connection, $sql);
echo '<div id="description">';
if(mysqli_num_rows($result)>0){
while($row = mysqli_fetch_array($result)){
// stop it showing a product if it has already been selected by user
if ( ! in_array($row['id'], $_SESSION['cart'] ) {
echo '<h2>'.$row['Name'].'</h2>';
echo '<p>'.$row['Description'].'</p>';
echo '<a href="cart.php?id=' . $row['id'] . '" class="buyNow">Buy Now - $'.$row['Price'].'.00</a>';
}
}
}else{
echo "There is something wrong.";
}
echo '</div>';
?>
还要解析while循环中产品的ID。单击“添加到购物车”按钮后,使用准备好的语句搜索数据库,并将产品添加到会话变量中。然后在结帐时,循环该会话变量并显示带有价格的项目。然后,您可以在PayPal网关或其他支付网关中进行构建。我不太理解您在会话变量上方添加的注释。我应该保留原来的$cart_content=array()吗;除了添加$_会话['cart'][=$_GET['id'];?这应该是没有必要的,好吧,所以我把我的ID带到cart.php页面,通过一点额外的工作,我应该也能够显示相关数据,但我仍然不确定如何让用户在多个项目上单击“立即购买”按钮,并将每个项目添加到购物车中。每次单击购买时。它将运行cart.php
脚本并向数组中添加一个新项。它似乎没有这样做,我不确定我应该做什么。我不想让你感到痛苦,但你介意再解释一遍吗?
<?php
session_start();
require('connection.php');
// add this id to the cart array in the session
$_SESSION['cart'][] = $_GET['id'];
// re-run the first script
header('Location: xxxx.php'); // sorry dont know what the fist script is called
?>