Категории

[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 за ответ.


Источник



Copyright ShopOS