Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Корзина товаров на сессиях
 
 автор: tima2010   (24.08.2011 в 13:42)   письмо автору
 
 

Привет есть корзина товаров которая работает на сессиях
на данный момент функционал такой:
поля:
Артикул Наименование товара Количество Стоимость

есть три простых казалось бы проблемы, но не могу понять как их решить:
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">&nbsp;</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 в 14:01)   письмо автору
 
   для: tima2010   (24.08.2011 в 13:42)
 

по поводу вывода общей стоимости решил так:

$allprice = isset($_SESSION['cart']) ? $_SESSION['price'] : array();

  Ответить  
 
 автор: f111   (24.08.2011 в 14:01)   письмо автору
 
   для: tima2010   (24.08.2011 в 13:42)
 

1) if(x>0) x+=new_value
2,3) про вёрстку спрашиваете?

  Ответить  
 
 автор: tima2010   (24.08.2011 в 14:06)   письмо автору
 
   для: f111   (24.08.2011 в 14:01)
 

Спасибо все получилось

  Ответить  
 
 автор: tima2010   (24.08.2011 в 14:21)   письмо автору
 
   для: 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']; 
}

  Ответить  
 
 автор: emil116   (26.10.2011 в 02:53)   письмо автору
 
   для: tima2010   (24.08.2011 в 14:21)
 

здравствуйте. а можно увидеть окончательный файл. пытаюсь внедрить в netcat, пока безрузультатно

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования