| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > PHP: Общие вопросы > Не могу разобраться с корзиной... |
| Автор: kulikoff 13.12.2007, 23:10 | ||
Помогите реализовать корзину для Интерне-магазина. Мож, посоветуйте, как лучше. Я пока думаю, что делать буду через сессиию. Добавление в корзину товара будет осуществляться таким способом:
Массив товаров в корзине реализуется, как двумерный массив, где второй индекс есть ид товара. Значением ключа есть количество выбранного товара. В этом коде проверяется, если ключ уже есть в массиве, то его значение увеличивается на кол-во заказанных единиц товара, если нет - то просто создаем его и присваиваем значение, полученное из формы о кол-ве заказанного товара. Теперь у меня появилась проблема - как вывести содержимое этого массива? ведь я ж не знаю имя второго ключа в массиве. Подскажите. плиз! |
| Автор: Feldmarschall 13.12.2007, 23:14 |
| Грамотно организована корзина. Не часто встретишь такой правильный подход. Непонятно только, зачем там буква "q". А выводить - просто: $_SESSION['cart'] - это массив. Массив обычно выводят перебором. foreach Добавлено через 1 минуту и 57 секунд Стоп. А откуда берется это $good_id? там выше этого кода идет перебор массива $_POST в цикле? |
| Автор: kulikoff 13.12.2007, 23:29 |
| В каталоге возле каждого товара сделана форма, куда вводиться кол-во заказанных единиц товара и в кнопке - обработчике (по факту - картинка. которая вызывает обработчик формы - "добавитель" в корзину,который приведен выше). Так вот там заодно и передается код товара и кол-ва. Код - методом GET $good_id и кол-во переменной $_POST[$name] И можно помочь кодом, как использовать функцию foreach? Пробовал использовать её, но не получается что-то... |
| Автор: Feldmarschall 13.12.2007, 23:34 |
| если код передается в адресной строке (а не методом GET, конечно, поскольку метод у тебя POST), то тогда это будет не $good_id, а $_GET['good_id'] А напиши - что у тебя не получилось? Я поправлю. А то неблагодарная какая-то это работа - писать. Вот так пишешь, пишешь человеку, а он вдруг как ляпнет: "мне не это нужно было совсем!". Или вообще не увидел, стал делать по-своему. Какие там сложности? У тебя есть массив $_SESSION['cart']. подставляешь его первым операндом в foreach. запись делаешь расширенную, ту, что с => пример есть в мануале. Там его писали люди гораздо более продвинутые, чем я. Почему бы у них не взять? |
| Автор: kulikoff 13.12.2007, 23:53 | ||
Спасибо большое! Осенило, что там и к чему. Как я сам не смог понять, как работать с этой функцией? Аж стыдно...
Всё просто и понятно. ещё раз спасибо! |