我在向表格添加购买信息时遇到问题。我创建了一个购物车,在结账时有一个购买按钮。在我开始之前,这是我的表格结构的方式:
购买(表):
BikeStock:
当有人点击购买表时,我想要输入购买ID,从Bikestock表中抓取FrameNumber,其中Bikecode ='我想购买的自行车代码'。
到目前为止,我所拥有的是:<?php
session_start();
include ("connection.php");
$sql = "SELECT b.FrameNumber, b.BikeCode, p.FrameNumber FROM BikeStock b LEFT JOIN Purchase p on b.FrameNumber = p.FrameNumber WHERE b.bikecode = 'MABE2012-5'";
$result = mysqli_query($con, $sql) or die('Query1 failed: ' . mysqli_error($con));
while($row = mysqli_fetch_array($result)) {
$framenumber = $row[0];
echo $framenumber . "<br>";
}
$PurchaseID = (rand(1,24));
$date = date("d/m/Y");
$Email = $_SESSION["user"];
$sql1 = "INSERT INTO Purchase VALUES (\"$date\",\"$PurchaseID\",\"$Email\", \"$framenumber\")";
$result1 = mysqli_query($con, $sql1) or die('Query2 failed: ' . mysqli_error($con));
echo $date . "<br>";
echo $PurchaseID . "<br>";
echo $Email . "<br>";
?>
我不确定我将如何添加$ bikecode信息,同时我继续使用主键获取重复条目,因为它选择随机数并且framenumber一直被复制但是它是一个外键所以如果使用一个framenumber它必须选择另一个,如果它没有帧数我想让它说缺货。
非常感谢帮助,如果我不清楚,请告诉我在哪里,我会解决它。
答案 0 :(得分:1)
一些建议:
1)更改您的购买表以包含自动增量主键。不要使用随机数 2)更改此插入内容:
插入购买价值
更像是:
INSERT INTO购买(PurchaseID,FrameNumber,...)VALUES?,?,...
并使用准备好的声明。
3)如果您将日期格式化为YYYY-MM-DD,则MySQL对日期更满意 4)在将它添加到购物车之前检查“缺货框架”。