|
|
|
| Привет есть корзина товаров которая работает на сессиях
на данный момент функционал такой:
поля:
Артикул Наименование товара Количество Стоимость
есть три простых казалось бы проблемы, но не могу понять как их решить:
1. при добавлении товара если он уже есть в корзине, не обновлять число value а прибавлять его
2. под "Общее количество товаров:" вывести Общая стоимость всех товаров
3. рядом с каждым товаром добавить ссылку на удаление товара из списка
прилагаю код:
<?php
session_start();
if (isset($_POST['number'])) {
$_SESSION['cart'][$_POST['id']] = $_POST['number'];
$_SESSION['product'][$_POST['id']] = $_POST['product'];
$_SESSION['price'][$_POST['id']] = $_POST['price'] * $_POST['number'];
}
$a = isset($_SESSION['cart']) ? $_SESSION['cart'] : array();
?>
<table>
<tr>
<td>Артикул</td>
<td>Наименование товара</td>
<td>Количество</td>
<td>Стоимость</td>
</tr>
<tr>
<td colspan="4"><hr></td>
</tr>
<?php
if (isset($_SESSION['cart'])) {
foreach ($_SESSION['cart'] as $id => $number) {
echo " <tr>\n";
echo " <td>$id</td>\n";
echo " <td>" . $_SESSION['product'][$id] . "</td>\n";
echo " <td>$number</td>\n";
echo " <td>" . $_SESSION['price'][$id] . "</td>\n";
echo " </tr>\n";
}
}
?>
<tr>
<td colspan="2"> </td>
</tr>
<tr>
<td colspan="2"><?php echo "Общее количество товаров: " . $_SESSION['ammount_com'] = array_sum($a); ?></td>
<td colspan="2"><?php echo "Общая стоимость: :( "; ?></td>
</tr>
</table>
<br/>
<form method="POST">
Товар 1 <input type="text" name="number" value="1" /> шт.
<input type="hidden" name="id" value="001"/> <!-- Артикул -->
<input type="hidden" name="product" value="Ботинки"/> <!-- Название -->
<input type="hidden" name="price" value="100"/> <!-- Стоимость -->
<input name="submit" type="submit" value="Добавить"/>
</form>
<form method="POST">
Товар 2 <input type="text" name="number" value="1" /> шт.
<input type="hidden" name="id" value="002"/> <!-- Артикул -->
<input type="hidden" name="product" value="Шубы"/> <!-- Название -->
<input type="hidden" name="price" value="200"/> <!-- Стоимость -->
<input name="submit" type="submit" value="Добавить"/>
</form>
<br />
|
Большое спасибо за внимание! | |
|
|
|
|
|
|
|
для: tima2010
(24.08.2011 в 13:42)
| | по поводу вывода общей стоимости решил так:
$allprice = isset($_SESSION['cart']) ? $_SESSION['price'] : array();
|
| |
|
|
|
|
|
|
|
для: tima2010
(24.08.2011 в 13:42)
| | 1) if(x>0) x+=new_value
2,3) про вёрстку спрашиваете? | |
|
|
|
|
|
|
|
для: f111
(24.08.2011 в 14:01)
| | Спасибо все получилось | |
|
|
|
|
|
|
|
для: f111
(24.08.2011 в 14:01)
| | Спасибо за первый вариант, ответ таков:
if($_SESSION['cart'][$_POST['id']]>0) {
$numberplus = $_SESSION['cart'][$_POST['id']]+$_POST['number'];
$_SESSION['cart'][$_POST['id']] = $numberplus;
}
else {
$numberplus = "1";
$_SESSION['cart'][$_POST['id']] = $_POST['number'];
}
|
| |
|
|
|
|
|
|
|
для: tima2010
(24.08.2011 в 14:21)
| | здравствуйте. а можно увидеть окончательный файл. пытаюсь внедрить в netcat, пока безрузультатно | |
|
|
|