Как я могу получить значения сеанса после оплаты? (Размещенное решение CakePHP-Paypal) - PullRequest
0 голосов
/ 21 февраля 2011

Я использую CakePHP для своего приложения и смог интегрировать решение, размещенное на Paypal.Пользователи успешно перенаправлены на Paypal для завершения оплаты.После завершения они возвращаются на мой веб-сайт.

Сначала он перенаправлял пользователя на страницу входа (поскольку сеанс удалялся).Чтобы предотвратить это, я открыл страницу Paypal в новом окне.Теперь их не просят снова войти в систему и сохранить $ this-> Session-> read ('Auth.User') без изменений.Однако он не запоминает никаких других данных сеанса.Например, у меня была переменная сеанса invoice_number, которая недоступна после того, как они возвращаются с веб-сайта Paypal.

Я заметил, что идентификатор сеанса не остается прежним до и после завершения платежа..

Я изменил core.php, чтобы уменьшить безопасность сеанса, установив его на низкое значение, увеличил время сеанса, и я также изменил его так, чтобы он начинал сеанс, только если идентификатор сеанса не был найден (видел это в билете / ошибке CakePHP).

Интересно, что нет в Chrome, он запоминает все переменные сессии, идентификаторы сессии одинаковы и работают нормально.Но в Firfox это не работает!

В любом случае можно ли поддерживать сеанс с теми же переменными идентификатора / сеанса, чтобы даже после оплаты, когда они возвращались, мое приложение знало, какой номер счета для этогооплата была.

Любая помощь будет очень признательна.

С уважением, Tasin

Ответы [ 3 ]

0 голосов
/ 22 февраля 2011

Попробуйте задать для Security.level значение, отличное от high в core.php.

0 голосов
/ 01 марта 2011

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

Как я уже упоминал, при перенаправлении информация 'Auth.User' была все ещенеповрежденными.Я использовал это для извлечения информации, которую я сохранил в базе данных перед отправкой пользователей на сайт PayPal.

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

НеИдеальное решение, но пока оно работает.

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

Большое спасибо,

Tasin

0 голосов
/ 22 февраля 2011

попробуйте отключить проверки реферера в core.php, что должно сработать.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...