Форум программистов, компьютерный форум, киберфорум
Наши страницы
PHP для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.60/5: Рейтинг темы: голосов - 5, средняя оценка - 4.60
Ilya_Kryvoro
7 / 5 / 2
Регистрация: 05.02.2019
Сообщений: 125
1

Корзина

05.02.2019, 22:52. Просмотров 1028. Ответов 9

Пишу интернет-магазин. Осталась только корзина. Мучаюсь, не могу придумать. Без JS.

PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
<?php
                $link = mysqli_connect('127.0.0.1', 'root', '', 'coffesite');
                $sql = "SELECT * FROM items WHERE categories = 1";
                $obj = mysqli_query($link, $sql);
 
                while (($res = mysqli_fetch_assoc($obj))) {
                print_r('<strong><img id="itemPhoto" src="/up_img/' . $res['photo'] . '"><br/>' .
                        '' . $res['name'] . '<br/>' .
                        'Производитель: ' . $res['maker'] . '<br/>' . '<br/>' .
                        'Описание: ' . $res['description'] . '<br/>' . '<br/>' .
                        'Цена: ' . $res['price'] . ' грн.<br/><br/>' .
                        '<form name="formCartParametrs" id="formCartParametrs" method="POST" action="vending.php">
                        <input class="inCartHidden" value="'. $res['id'] .'">
                        <button name="inCart" type="submit" id="inCart"">В корзину</button>
                        </form></strong><hr/>');
                        $resId = $res['id'];
                        $_SESSION['id'] = $resId;
                }
                ?>
Помогите, пожалуйста! Спасибо
0
Лучшие ответы (1)
QA
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
05.02.2019, 22:52
Ответы с готовыми решениями:

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

Сессия и корзина
Добрый день, у меня есть каталог товаров, при добавлении товара, я на кнопке добавляю блок с...

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

Корзина и SESSION
Здравствуйте. Я реализую корзину таким образом, пользователь добавляет товар в корзину, запись...

Корзина товаров
Привет. Ну на cyberforum.ru прочитал несколько тем по созданию корзины. Конечно есть что взять из...

9
Пифагор
Модератор
1631 / 1298 / 639
Регистрация: 10.01.2015
Сообщений: 4,283
06.02.2019, 07:16 2
Ilya_Kryvoro, что именно не получается? Что не можете придумать?
Выложите проблемный код.
0
Ilya_Kryvoro
7 / 5 / 2
Регистрация: 05.02.2019
Сообщений: 125
06.02.2019, 15:45  [ТС] 3
Код тот же. Я думаю, как сделать, чтобы ид одного товара добавлялось в $_SESSION[itemOne], второго в $_SESSION[iteTwo] и тд. А если так сделать не получится или это не функционально для корзины, подскажите как лучше её сделать

P.S. ИД берётся из инпута в форме, он под visibility:hidden: от css
0
tarasalk
1629 / 975 / 361
Регистрация: 13.06.2013
Сообщений: 3,369
06.02.2019, 15:54 4
Ilya_Kryvoro, а зачем вам явно ключи задавать? Можно же просто в конец массива добавлять.
PHP
1
$_SESSION['products'][] = 1';
0
Ilya_Kryvoro
7 / 5 / 2
Регистрация: 05.02.2019
Сообщений: 125
06.02.2019, 17:05  [ТС] 5
Так, хорошо, а потом как всё это дело посчитать, сколько товаров в корзине и их суммарную стоимость?
0
Пифагор
Модератор
1631 / 1298 / 639
Регистрация: 10.01.2015
Сообщений: 4,283
06.02.2019, 17:22 6
Цитата Сообщение от Ilya_Kryvoro Посмотреть сообщение
посчитать, сколько товаров в корзине и их суммарную стоимость?
PHP
1
count($_SESSION['products']);
Массив будет иметь структуру
Код
$_SESSION['products'][1]['товар' => стоимость]
$_SESSION['products'][2]['товар' => стоимость]
и тд
Поскольку ключем будет товар, то лично я предлагаю такую структуру.
Вероятно, кто-то предложит лучший вариант.
0
Ilya_Kryvoro
7 / 5 / 2
Регистрация: 05.02.2019
Сообщений: 125
06.02.2019, 17:27  [ТС] 7
Спасибо, попробую это, а там посмотрим
0
tarasalk
1629 / 975 / 361
Регистрация: 13.06.2013
Сообщений: 3,369
06.02.2019, 17:28 8
Лучший ответ Сообщение было отмечено Ilya_Kryvoro как решение

Решение

PHP
1
2
3
4
5
6
7
8
9
$arr = [
    ['id' => 1, 'sum' => 10],
    ['id' => 2, 'sum' => 20],
    ['id' => 3, 'sum' => 30],
];
 
echo 'Количество = ', count($arr), '\n';
 
echo 'Сумма равна = ', array_reduce($arr, function($sum, $item) { $sum += $item['sum']; return $sum; }, 0);
0
Ilya_Kryvoro
7 / 5 / 2
Регистрация: 05.02.2019
Сообщений: 125
06.02.2019, 17:34  [ТС] 9
Вот это более понятнее, спасибо. А ещё вопрос, оно ведь в сессии сохранится?
0
tarasalk
1629 / 975 / 361
Регистрация: 13.06.2013
Сообщений: 3,369
06.02.2019, 17:43 10
В моем коде? Замените $arr на $_SESSION и сохранится.
0
06.02.2019, 17:43
Answers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
06.02.2019, 17:43

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

Корзина пользователя
Всем привет. Сделал регистрацию и авторизацию пользователей для интернет-магазина. После...

Не работает корзина
Всем привет! Народ, есть вот такой вот лендинг: http://bodys.top/ Около разных товаров есть кнопка...

Корзина без бд
Хочу реализовать онлайн-заказ в кафе без БД, ниже опишу суть: Что имеем: Меню, со всеми...


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

Или воспользуйтесь поиском по форуму:
10
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2020, vBulletin Solutions, Inc.