CSCart не мог автоматически отображать детали заказа и пустую корзину

Я попытался создать новый способ оплаты, который был в основном успешным, за исключением части, когда платежный шлюз перенаправляет пользователя обратно на домашнюю страницу продавца, а домашняя страница просто отображает сообщение «Заказ выполнен успешно», но не перечисляет детали заказа под сообщением «Заказ выполнен успешно». . Пользователь должен вручную щелкнуть, чтобы проверить детали своего заказа.

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

Могу ли я узнать, как мне решить эти связанные проблемы?

Ниже приведен скрипт платежного шлюза:

if ($mode == 'notify' && !empty($_REQUEST['order_id'])) {
    if (fn_check_payment_script('Testbank.php', $_REQUEST['order_id'], $processor_data)) {
        $pp_response = array();
        //Update order status
        if ($_POST['Order_Status'] == 'YES') { // Succeed
            $pp_response['order_status'] = "P";
            $pp_response['transaction_id'] = $_POST['Order_RefNo'];
            $pp_response['reason_text'] = '';
            fn_finish_payment($_POST['order_id'], $pp_response);
            //fn_order_placement_routines($_POST['order_id']);

        } else {
            // If fail ...
            $pp_response['order_status'] = "G"; //Verifying payment
            $pp_response['transaction_id'] = $_POST['TM_RefNo'];
            $pp_response['reason_text'] = $_POST['TM_Error'];           
            fn_change_order_status($_POST['order_id'], $pp_response['order_status']);   
        }
    }
}

Я пытался комментировать и раскомментировать fn_order_placement_routines, но, похоже, это не имеет никакого значения.

Спасибо.


person thotheolh    schedule 04.07.2013    source источник


Ответы (1)


для второй задачи вы можете добавить эту строку после функции fn_finish_payment:

fn_order_placement_routines($order_id);

Это очистит вашу корзину и отправит уведомления клиентам.

person JPG    schedule 04.07.2013