jest to mój pierwszy post bardzo prosił bym o pomoc.
Jest to rozwinięcie skryptu z książki php mysql kevina yanka. Nie wiem jak zrobić ograniczenie ilość dodawanych produktów, oraz by później w koszyku była jedna nazwa produktu, a zmieniała się ilość dodawanych rzeczy.
index.php
<?php
include $_SERVER['DOCUMENT_ROOT'] . '/includes/db1.inc.php';
$result = mysqli_query($link, 'SELECT id, produkt, ilosc, cena FROM produkt');
if(!$result)
{
$error = 'Błąd odczytu zawartosci tabeli produkty: ' .mysqli_error($link);
include 'error.html.php';
}
while ($row = mysqli_fetch_array($result))
{
$produkty[] = array('id' => $row['id'], 'text' => $row['produkt'], 'ilosc' => $row['ilosc'], 'cena' => $row['cena']);
}
if (!isset($_SESSION['cart'])) {
$_SESSION['cart'] = array(); }
if (isset($_POST['action']) and
$_POST['action'] == 'Kup' ) {
//Dodawanie produktów na koniec tablicy $_SESSION['cart']
$_SESSION['cart'][] = $_POST['id'];
}
if (isset($_GET['cart'])) {
$total = 0;
foreach ($_SESSION['cart'] as $id)
{
foreach($produkty as $produkt)
{
if ($produkt['id'] == $id)
{
$cart[] = $produkt;
$total += $produkt['cena'];
break;
}
}
}
include 'cart.html.php';
}
if (isset($_POST['action']) and
$_POST['action'] == 'Opróżnij koszyk') {
//wyczyszczenie tablicy $_SESSION['cart']
unset($_SESSION['cart']); }
include 'sklep.html.php';
?>
sklep.html.php
<?php include $_SERVER['DOCUMENT_ROOT'] . '/includes/helpers.inc.php'; ?>
<!DOCTYPE html>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> table {
border-collapse: collapse;
}
td, th {
border: 1px solid black;
}
<p>Twój koszyk na zapupy zawiera
<?php echo count($_SESSION['cart']); ?> produkt(ów).
</p> <p><a href="?cart">Sprawdź zawartość koszyka
</a></p> <?php foreach($produkty as $produkt): ?>
<td><?php htmlout($produkt['text']); ?></td> <?php echo number_format($produkt['cena'], 2); ?> zł
<td align="right"> <?php htmlout($produkt['ilosc']); ?> szt.
</td> <form action="" method="post"> <input type="hidden" name="id" value="<?php htmlout($produkt['id']); ?>" />
<input type="submit" name="action" value="Kup"/> <?php endforeach; ?>
<p>Oto wszystkie ceny w urojonej walucie.
</p>
cart.html.php (koszyk)
<?php include_once $_SERVER['DOCUMENT_ROOT'] . '/includes/helpers.inc.php';?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="pl" lang="pl"> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/> table {
border-collapse: collapse;
}
td, th {
border: 1px solid block;
}
<h1>Twój koszyk na zakupy
</h1> <?php if (count($cart) >0): ?>
<td><?php echo number_format($produkt['cena'], 2); ?> zł
</td> <?php foreach ($cart as $produkt): ?>
<td><?php htmlout($produkt['text']); ?></td> <?php echo number_format($produkt['cena'], 2); ?> zł
<?php endforeach; ?>
<?php else: ?>
<p>Twój koszyk jest pusty!
</p> <?php endif; ?>
<form action="?" method="post"> <a href="?">Kontynuuj zakupy
</a> lub
<input type="submit" name="action" value="Opróżnij koszyk"/>