Лучший способ реализации корзины покупок с использованием PHP / MySQL

Я работаю на веб-сайте клиента, и они попросили корзину. Им необходимо использовать securetrading.net для оплаты, поэтому мне не нужно запрашивать данные кредитной карты. Все, что мне нужно сделать, это следить за предметами в их тележке.

Я читал об использовании сеансов PHP, но я беспокоюсь о безопасности там. Разве это не проблема, если единственная информация, которую я храню, это коды продуктов и количества? В противном случае стоит ли использовать базу данных MySQL?

Мне жаль, если это кажется очевидным, но я впервые это осуществил!

Существует учебник для простой / небольшой корзины php / MySQL, который сохраняет статус корзины в сеансах, есть даже загружаемый демо-код и онлайн-демонстрация.

http://v3.thewatchmakerproject.com/journal/276/building-a-simple-php-shopping-cart

Я использовал его, когда полномасштабные программы онлайн-шопинга были просто «перевернуты». Точно так же, как вам не нужно было брать данные cc, регистрацию пользователя и т. Д. … просто место для отправки выбранных элементов в процесс покупки платежных шлюзов, а затем забыть об этом. Это то, чего хотел клиент, и это то, что он получил в конце (мой первый выбор был пурпурно, но это было слишком сложно для клиентов 3 продукта).

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

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

Magento приходит на ум. Это, конечно же, самый заурядный, который я видел в то время … И, кажется, есть надежная поддержка, если вы взломали его в себе .

Я бы использовал PHP-сессии, так как вы только сохраняете коды продуктов / количества. Да, они открыты для «атаки», но атака будет чем-то вроде изменения кода продукта (убедитесь, что вы добавили чек для действительных кодов перед передачей информации на ваш платежный шлюз) и количествами (повторите проверку количества если необходимо)

Переменные сеанса открыты для атак пользователей, но если кто-то хочет «обмануть» мою систему и проверить 4 элемента вместо 1, это действительно не проблема.

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

Если вы собираетесь использовать сеансы для ускорения работы, попробуйте и разработайте свой код, чтобы в будущем было проще передумать и переключиться на решение Mysql.

Однако, если у вас нет особых требований, просто найдите одну из сотен бесплатных решений и экономьте время.