Я думал, что это хорошее место, потому что это так временно, да? Я предполагаю, что когда я говорю «хорошо», я имею в виду как безопасный, так и этический, а также практический подход к кодам. Пожалуйста, сообщите.
Если вы храните данные кредитной карты в любом месте , она должна быть полностью зашифрована! Хранение в сеансе может быть необходимым, возможно, вам нужно заполнить форму, состоящую из нескольких частей, но ее следует удалить как можно скорее.
Абсолютно лучший ответ?
Нет. Не делай этого.
Данные кредитной карты должны быть последней частью процесса оформления заказа.
Слушайте эпизод № 109 безопасности сейчас! со Стивом Гибсоном.
http://www.grc.com/securitynow.htm
В этом эпизоде Стив рассказывает, как он создал свою собственную систему электронной коммерции, которая хранит данные именно так, как вы описываете. Он ничего не хранит на стороне сервера, а собирает данные, шифрует и подписывает их в двоичный двоичный объект, который невозможно изменить (иначе подпись не будет совпадать при повторной отправке), и хранит его в скрытом виде. поле формы на клиенте.
Имейте в виду, что состояние сеанса может храниться в базе данных (в зависимости от конфигурации). Даже если он временный по своей природе, я приложу усилия, чтобы справиться со значением в кратчайшие сроки, и, возможно, постараюсь держаться подальше от сессии.
Осторожно с PHP-сессиями на общих хостах. Другие пользователи на том же хосте могут украсть сеансы, создав простой скрипт, который может открывать ваши сеансы, вручную устанавливая session_id, затем вызывая session_start (); Если вам необходимо хранить номера CC, используйте сохраненные в БД сеансы, которые зашифрованы и быстро удаляются. В интересах пользователей повторно запрашивать номер при необходимости, опытные веб-пользователи будут вам благодарны.
Еще лучше, сохранить его в состоянии приложения. Более лучший доступ. Ваши элементы управления могут также напрямую связываться с этим.