Я пытаюсь обрешетке очень простой shopping cart
Я использую session
и array
, чтобы добавить элементы в array
и сохранить array
в session
и отображения элементов в этом session
должным образом как пункта 1 имя - цена item 2 name - цена , а затем взять итог по моему способу оплаты.создания простой корзины покупок с помощью PHP
вот код, который я использую.
print_r($_SESSION['cart']);
if (isset($_POST['buy'])) {
//header("Location:?pid=18&pl=" . $pl);
$getData = $db->prepare('SELECT * FROM plans WHERE id=?');
$getData->bind_param('i', $pl);
if ($getData->execute()) {
$res = $getData->get_result();
if ($pn = $res->fetch_object()) {
$item['name'] = $pn->plan_name;
$item['price'] = $pn->price_dollar;
if (isset($_SESSION['cart'])) {
$_SESSION['cart'] = $item;
}
}
}
}
Вопросы (!) Notice: Undefined index: cart
EDIT
это то, что я закончу с
if (isset($_SESSION['cart'])) {
foreach ($_SESSION['cart'] as $c) {
echo $c['name'] . '<br />';
echo $c['price'] . '<br />';
echo '<a href="?pid=17&rc=' . $c['code'] . '">Remove item</a><br />';
}
}
if (isset($_POST['buy'])) {
//header("Location:?pid=18&pl=" . $pl);
if (isset($_POST['buy'])) {
$getData = $db->prepare('SELECT * FROM plans WHERE id=?');
$getData->bind_param('i', $pl);
if ($getData->execute()) {
$res = $getData->get_result();
if (($pn = $res->fetch_object()) !== null) {
$proCode = range(1, 100);
shuffle($proCode);
$item['name'] = $pn->plan_name;
$item['price'] = $pn->price_dollar;
$item['code'] = $proCode;
$_SESSION['cart'][] = $item;
}
}
}
}
if (isset($_GET['rc']) && isset($_SESSION['cart'])) {
$rem = $_GET['rc'];
if (($key = array_search($rem, $_SESSION['cart'])) !== false) {
unset($_SESSION['cart'][$key]);
}
}
но все-таки удалить не работает
Есть session_start(); где-то в вашем коде? – Netra
Да, есть один в заголовке, я имею в виду, что есть 'header.php', который содержит заголовки сайта, и есть' session_start() 'there –
Что такое вывод print_r ($ _ SESSION ['cart'])? – ply