С Новым годом! Форум программистов, компьютерный форум, киберфорум
PHP: базы данных
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.82/11: Рейтинг темы: голосов - 11, средняя оценка - 4.82
0 / 0 / 0
Регистрация: 27.10.2014
Сообщений: 63

Корзина для интернет-магазина на php и сессиях

27.01.2016, 16:10. Показов 1991. Ответов 4
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте, необходимо разработать корзину товаров для интернет магазина , скажем у меня на сайте есть каталог товаров , у каждого товара есть название , изображение, цена и кнопка в корзину. Все данные о товаре ( изображение , цена и название ) находятся в БД MySQL , думал сделать так что бы при нажатии на кнопку 'В корзину' все эти данные из базы заносились и хранились в сессии и выводились на страницу 'корзина' , также хотел сделать поле для выбора количества товара и его общую стоимость и после оформление заказа . Ниже прилагается код ТОГО что у меня пока что получилось :

PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
<?PHP
    session_start();
 
   include "db_use.php"; // Открываем базу данных
 
    $_SESSION['name_tov'] = $result;
 
    $_SESSION['price'] = $result1;
 
    $_SESSION['count'] = $_POST['count'];
 
$result = mysql_query("SELECT name_tov FROM tovari_katalog WHERE id='5'",$db);
 
$result1 = mysql_query("SELECT cena_tov FROM tovari_katalog WHERE id='5'",$db);
 
$array = mysql_fetch_array($result);
echo " Название товара: ".$array['name_tov'].""; 
echo "Его кол-во ".$_SESSION['count']."<br/>";
 
$array = mysql_fetch_array($result1);
echo "Вы должны заплатить: ".$_SESSION['count'] * $_SESSION['price']." UAH";
    
?>
 
<form method="post">
    Кол-во товара: <input name="count" type="text" size="5"/><br/>
</form>
Ругается на следующие строки:
PHP
1
2
3
4
$result = mysql_query("SELECT name_tov FROM tovari_katalog WHERE id='5'",$db);
$result1 = mysql_query("SELECT cena_tov FROM tovari_katalog WHERE id='5'",$db);
$array = mysql_fetch_array($result);
$array = mysql_fetch_array($result1);
Помогите реализовать корзину или подскажите как лучше это сделать.
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
27.01.2016, 16:10
Ответы с готовыми решениями:

Корзина для интернет-магазина
Здравствуйте, я новичок и мне очень нужна корзина для моего интернет-магазина. Желательно через сессию. Напишите пожалуйста, кому не...

Простая корзина для интернет магазина
Здраствуйте, сейчас работаю над одним сайтом где необхадима простая корзина для покупок.В интернете нашел множество всяких примеров, но все...

Корзина интернет магазина PHP массивы + сессии
Всем добрый день. Помогите пожалуйста разобраться с массивом внутри массива в сессии. Задачи: Проверить на существование массив...

4
Эксперт PHP
3899 / 3237 / 1353
Регистрация: 01.08.2012
Сообщений: 10,909
27.01.2016, 16:23
Цитата Сообщение от roma1998 Посмотреть сообщение
все эти данные из базы заносились и хранились в сессии
Зачем? id и количества достаточно.
0
0 / 0 / 0
Регистрация: 27.10.2014
Сообщений: 63
27.01.2016, 16:54  [ТС]
Мне нужно вывести только определенные поля ( название и цену , но не изображение , которое хранится там же под тем же id .
0
Эксперт PHP
3899 / 3237 / 1353
Регистрация: 01.08.2012
Сообщений: 10,909
27.01.2016, 17:23
roma1998, в куках храните id и кол-во, остальное при каждом заходе в корзину подцепляете из БД.
0
0 / 0 / 0
Регистрация: 27.10.2014
Сообщений: 63
03.02.2016, 12:35  [ТС]
Помогите пожалуйста переделать данный код , нужно сделать что бы информация о товарах выводилась из моей БД по id при нажатии на Добавить в корзину!!!

PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
<?php
// wfCart Demo
 
// You must included wfcart.php BEFORE you start the session. 
include "wfcart.php";
session_start();      // start the session
 
 
$cart =& $_SESSION['wfcart']; // point $cart to session cart.
if(!is_object($cart)) $cart = new wfCart(); // if $cart ( $_SESSION['cart'] ) isn't an object, make a new cart
 
// end of header stuff
 
?>
<html><head><title>wfCart Demo</title></head>
<body><h3>wfCart Demo</h3>
 
<?
 
// Usually you would get your products from a database but we'll pretend.. 
 
$products = array();
$products[1] = array("id"=>1,"name"=>"A Bar of Soap","price"=>2.00);
$products[2] = array("id"=>2,"name"=>"Shampoo","price"=>4.80);
$products[3] = array("id"=>3,"name"=>"Pizza","price"=>12.95);
 
 
// check to see if any items are being added
if($_POST['add']) {
    $product = $products[$_POST['id']];
    $cart->add_item($product['id'],$_POST['qty'],$product['price'],$product['name']);
}
if($_POST['remove']) {
    $rid = intval($_POST['id']);
    $cart->del_item($rid);
 
}
 
// spit some forms
// You can have many different types of forms, such as many quantity boxes
// and an "add to cart" button at the bottom which adds all items
// but for the purposes of this demo we will handle one item at a time. 
echo "<table>";
foreach($products as $p) {
    echo "<tr><td><form method='post' action='demo.php'>";
    echo "<input type='hidden' name='id' value='".$p['id']."'/>";
    echo "".$p['name'].' $'.number_format($p['price'],2)." ";
    echo "<input type='text' name='qty' size='5' value='1'><input type='submit' value='Add to cart' name='add'>";
    echo "</form></td></tr>";
}
echo "</table>";
 
 
echo "<h2>Items in cart</h2>";
 
if($cart->itemcount > 0) {
    foreach($cart->get_contents() as $item) {
        echo "<br />Item:<br/>";
        echo "Code/ID :".$item['id']."<br/>";
        echo "Quantity:".$item['qty']."<br/>";
        echo "Price   :$".number_format($item['price'],2)."<br/>";
        echo "Info    :".$item['info']."<br />";
        echo "Subtotal :$".number_format($item['subtotal'],2)."<br />";
        echo "<form method=post><input type='hidden' name='id' value='".$item['id']."'/><input type='submit' name='remove' value='Remove'/></form>";
    }
    echo "---------------------<br>";
    echo "total: $".number_format($cart->total,2);
} else {
    echo "No items in cart";
}
 
?>
Добавлено через 1 минуту
Второй файл wfCart:

PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
class wfCart {
    var $total = 0;
    var $itemcount = 0;
    var $items = array();
        var $itemprices = array();
    var $itemqtys = array();
        var $iteminfo = array();
 
    function cart() {} // constructor function
 
    function get_contents()
    { // gets cart contents
        $items = array();
        foreach($this->items as $tmp_item)
        {
                $item = FALSE;
 
            $item['id'] = $tmp_item;
                        $item['qty'] = $this->itemqtys[$tmp_item];
            $item['price'] = $this->itemprices[$tmp_item];
            $item['info'] = $this->iteminfo[$tmp_item];
            $item['subtotal'] = $item['qty'] * $item['price'];
                        $items[] = $item;
        }
        return $items;
    } // end of get_contents
 
 
    function add_item($itemid,$qty=1,$price = FALSE, $info = FALSE)
    { // adds an item to cart
                if(!$price)
        {
                $price = wf_get_price($itemid,$qty);
        }
 
                if(!$info)
        {
                        $info = wf_get_info($itemid);
        }
 
        if($this->itemqtys[$itemid] > 0)
                { // the item is already in the cart..
          // so we'll just increase the quantity
            $this->itemqtys[$itemid] = $qty + $this->itemqtys[$itemid];
            $this->_update_total();
        } else {
            $this->items[]=$itemid;
            $this->itemqtys[$itemid] = $qty;
            $this->itemprices[$itemid] = $price;
            $this->iteminfo[$itemid] = $info;
        }
        $this->_update_total();
    } // end of add_item
 
 
    function edit_item($itemid,$qty)
    { // changes an items quantity
 
        if($qty < 1) {
            $this->del_item($itemid);
        } else {
            $this->itemqtys[$itemid] = $qty;
            // uncomment this line if using 
            // the wf_get_price function
            // $this->itemprices[$itemid] = wf_get_price($itemid,$qty);
        }
        $this->_update_total();
    } // end of edit_item
 
 
    function del_item($itemid)
    { // removes an item from cart
        $ti = array();
        $this->itemqtys[$itemid] = 0;
        foreach($this->items as $item)
        {
            if($item != $itemid)
            {
                $ti[] = $item;
            }
        }
        $this->items = $ti;
        $this->_update_total();
    } //end of del_item
 
 
        function empty_cart()
    { // empties / resets the cart
                $this->total = 0;
            $this->itemcount = 0;
            $this->items = array();
                $this->itemprices = array();
            $this->itemqtys = array();
                $this->iteminfo = array();
    } // end of empty cart
 
 
    function _update_total()
    { // internal function to update the total in the cart
            $this->itemcount = 0;
        $this->total = 0;
                if(sizeof($this->items > 0))
        {
                        foreach($this->items as $item) {
                                $this->total = $this->total + ($this->itemprices[$item] * $this->itemqtys[$item]);
                $this->itemcount++;
            }
        }
    } // end of update_total
 
}
?>
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
03.02.2016, 12:35
Помогаю со студенческими работами здесь

Корзина для интернет магазина
Помогите пожалуйста сделать корзину и форму заказа, у кого есть скрипты

Корзина для интернет магазина
Добрый вечер! Нужна помощь При нажатии на кнопку &quot;добавить&quot; на главной странице добавляется товар и выводится на странице корзины. У...

Корзина для интернет-магазина на JS
Добрый день. Для того, чтобы сделать простейшую корзину для интернет-магазина, я скачал её скрипт. Но в этом мало, что понимаю. Я...

Корзина для интернет магазина
Помогите пожалуйста сделать корзину и форму для заказа, у кого есть код либо исходник?

Корзина для интернет-магазина
добрый день...есть список товаров, для выбора которых используются чеки...можно ли сделать так, чтобы после клика по чеку выбранная единица...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Новые блоги и статьи
сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11 Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
Почему дизайн решает?
Neotwalker 09.01.2026
В современном мире, где конкуренция за внимание потребителя достигла пика, дизайн становится мощным инструментом для успеха бренда. Это не просто красивый внешний вид продукта или сайта — это. . .
Модель микоризы: классовый агентный подход 3
anaschu 06.01.2026
aa0a7f55b50dd51c5ec569d2d10c54f6/ O1rJuneU_ls https:/ / vkvideo. ru/ video-115721503_456239114
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR
ФедосеевПавел 06.01.2026
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR ВВЕДЕНИЕ Введу сокращения: аналоговый ПИД — ПИД регулятор с управляющим выходом в виде числа в диапазоне от 0% до. . .
Модель микоризы: классовый агентный подход 2
anaschu 06.01.2026
репозиторий https:/ / github. com/ shumilovas/ fungi ветка по-частям. коммит Create переделка под биомассу. txt вход sc, но sm считается внутри мицелия. кстати, обьем тоже должен там считаться. . . .
Расчёт токов в цепи постоянного тока
igorrr37 05.01.2026
/ * Дана цепь постоянного тока с сопротивлениями и источниками (напряжения, ЭДС и тока). Найти токи и напряжения во всех элементах. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа и. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru