Категории
[FAQ] Часто задаваемые вопросы и ответы
Проблемы и решения
Ошибки и исправления
Общие вопросы
Расширения
Установка и обновление
Модули
Шаблоны
Локализация интерфейса
Коммерческие предложения
Учимся бизнесу
Бизнес книги
Поисковая оптимизация (SEO)
Магазины на ShopOS
Хостинг для ShopOS
Предложения и пожелания
Курилка
|
МодулЬ оплаты Квитанция
Всем привет. С новым годом!! У меня такой вопрос есть модуль оплаты kvitancia.php мне нужно чтобы по завершении оплаты этим способом клиент переходил на сторонний сайт делаю $this->form_action_url = "адрес сайта"; на сайт переходит, но заказ в базу данных не попадает, если убрать $this->form_action_url то заказ в базу данных попадает как сделать чтобы до перехода на сайт информация о заказе попадала в базу данных??
юзал функции after_process и before_process но эффекта нет
Если не ошибаюсь, то нужно в function confirmation() добавить код оформления заказа. Посмотрите как реализовано в webmoney мерчант.
нет тут эта функция не причем, можно дописать в нее но думаю не рационально будет, за добавление в базу отвечает файл checkout_process.php
алгоритм следующий, в пхп файле квитанции должен быть form_action_url но переход по этому урлу должен происходить после перехода со страницы подтверждения , т.е. перед загрузкой страницы checkout_success.php
подтверждение адреса -> выбор способа оплаты -> подтверждение -> и переход на сайт где можно оплатить банком не выходя из дома
сделал следующее в файле checkout_confirmation.php
if (isset ($$_SESSION['payment']->form_action_url) && !$$_SESSION['payment']->tmpOrders) { //******************************************************************************** if ($order->info['payment_method'] == 'kvitancia'){ //Костыль $payment_url = $$_SESSION['payment']->form_action_url; //Костыль $form_action_url = os_href_link(FILENAME_CHECKOUT_PROCESS, 'url='.$payment_url, 'SSL'); } else { $form_action_url = $$_SESSION['payment']->form_action_url; } //******************************************************************************* } else { $form_action_url = os_href_link(FILENAME_CHECKOUT_PROCESS, '', 'SSL'); }
все то что между звездочек дописал сам тут все нормально, перешли дальше на checkout_process.php с него переходим на checkout_success.php теперь нам отсюда надо перейти сразу на сайт оплаты, делаю следующим образом, но не получается получить урл из класса
require (_CLASS.'payment.php'); $payment_url = new payment('kvitancia'); $form_action_url = $payment_url->form_action_url; os_redirect($form_action_url);
почему то урл не приходит7 может кто подскажет где ошибка
сделал сам! просто поместил урл в массив $_SESSION где нужно достал оттуда
спасибо NEBOX за ответ.
Источник
|