Я новичок в php (играю с ним всего пару месяцев), и я создаю другу действительно простой веб-сайт электронной коммерции, для которого я создаю столь же простую корзину для покупок.
Вот основная идея корзины: в настоящее время пользователь просматривает страницу продуктов (на основе productID), выбирает цвет для элемента (который выбирает ProdOptID, который уникален для каждого отдельного элемента), а затем отправляет информация в $ _SESSION ['Cart'] посредством публикации через форму. Затем эта информация используется для доступа к базе данных mysql для извлечения всей остальной информации о продукте, которая затем отображается в мини-корзине. До этого момента все работало нормально. Только когда я пытаюсь создать страницу рецензирования / редактирования, где меня спотыкают. По какой-то причине я могу обновить только последний. У кого-нибудь есть идеи или есть проблемы?
Код для просмотра / редактирования страницы:
<div class="ReviewCheckout_Main">
<h1 class="ReviewCheckout_Title">Review Your Cart</h1>
<div class="ReviewCheckout_Form">
<form action="/BeautifulUrns/includes/ReviewCheckout_Processing.php" method="post">
<?php
if (isset($_SESSION['Cart'])) {
foreach ($_SESSION['Cart'] as $ID => $QTY){
$Query = "SELECT *
FROM ProductsOptions
LEFT OUTER JOIN Products
ON ProductsOptions.ProductID=Products.ProductID
WHERE ProdOptID = $ID";
$Result = mysql_query($Query, $Connection);
$Row = mysql_fetch_array($Result);
echo "<input type='text' name='Edit_Qty' value=" . $QTY . " />";
echo "<b>" . $Row['ProductName'] . "</b> ";
echo "<b> - " . $Row['POName'] . "</b> ";
echo "<input type='hidden' name='Edit_ID' value='{$Row['ProductID']}' />";
echo "<input type='hidden' name='Edit_ProdOptID' value='{$Row['ProdOptID']}' />";
echo "<br />";
}
}
?>
<input type="submit" />
</form>
<a href="/BeautifulUrns/index.php">Return Home</a>
</div>
Код для страницы обработки:
<?php session_start();
$ID = mysql_real_escape_string((int)$_POST['Edit_ProdOptID']); // GRABS PRODOPT ID
$PRODUCTID = mysql_real_escape_string((int)$_POST['Edit_ID']); //GRABS PRODUCT ID
$QTY = mysql_real_escape_string((int)$_POST['Edit_Qty']); // GRABS QUANTITY
if(isset($ID)) {
if (isset($QTY) && $QTY > 0){
if (isset($_SESSION['Cart'])) {
$_SESSION['Cart'][$ID] = $QTY;
}
else {
$_SESSION['Cart'] = NULL;
$_SESSION['Cart'][$ID] = $QTY;
}
}
}
?>