亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 網站 > 建站經驗 > 正文

zencart針對paypal防漏單方法

2024-04-25 20:47:47
字體:
來源:轉載
供稿:網友
zencart針對除了paypal之外. 客戶通過其他的支付方式進入index.php?main_page=checkout_confirmation這個頁面就能生出訂單.paypal就有點與眾不同, 它只能是從它的官網 [paypal.com] 返回來并且進入checkout_process這個頁面后,才能生出訂單,而意外常會發生:比如網絡不順. 又比如客戶不小心在返回前就關了頁面.

paypal防漏單的原理就是——在 checkout_confirmation.php這個頁面先生出訂單!!!最模板提供解決方法


方法是:在這個文件的最后部分echo TITLE_CONTINUE_CHECKOUT_PROCEDURE . ‘<br />’ . TEXT_CONTINUE_CHECKOUT_PROCEDURE;


后面添加代碼:

// create the order record 防漏單



if ($_SESSION['payment'] == ‘paypal’) {

$insert_id = $order->create($order_totals, 2);

$zco_notifier->notify(‘NOTIFY_CHECKOUT_PROCESS_AFTER_ORDER_CREATE’);

$payment_modules->after_order_create($insert_id);

$zco_notifier->notify(‘NOTIFY_CHECKOUT_PROCESS_AFTER_PAYMENT_MODULES_AFTER_ORDER_CREATE’);

// store the product info to the order

$order->create_add_products($insert_id);

$_SESSION['order_number_created'] = $insert_id;


為了避免對其他支付方式產生影響,代碼做了個判斷,只有paypal支付會運行這些生成訂單的代碼,加了這段后就不用擔心會漏單了—成功付款后后臺訂單如圖:


其中GS/AK的為防漏單的訂單,只有在出現漏單的時候才會查看這些訂單,里面的信息跟正常訂單相比會少一個交易號,但是至少是可以看到客戶信息及所購買了什么產品…


如果需要更完美的做法,     為防止顧客在訪問checkout process的時候會重復生成訂單, 那么就需要加個判斷


if($_SESSION['payment']!=’paypal’){


/*// create the order record


$insert_id = $order->create($order_totals, 2);


$zco_notifier->notify(‘NOTIFY_CHECKOUT_PROCESS_AFTER_ORDER_CREATE’);


$payment_modules->after_order_create($insert_id);


$zco_notifier->notify(‘NOTIFY_CHECKOUT_PROCESS_AFTER_PAYMENT_MODULES_AFTER_ORDER_CREATE’);


// store the product info to the order


$order->create_add_products($insert_id);


$_SESSION['order_number_created'] = $insert_id;


$zco_notifier->notify(‘NOTIFY_CHECKOUT_PROCESS_AFTER_ORDER_CREATE_ADD_PRODUCTS’);


//send email notifications


$order->send_order_email($insert_id, 2);


$zco_notifier->notify(‘NOTIFY_CHECKOUT_PROCESS_AFTER_SEND_ORDER_EMAIL’);*/


}

而且在確認頁面,如果顧客一直刷新頁面,就會一直生成訂單,可以加個限制.

// create the order record 防漏單





if ($_SESSION['payment'] == ‘paypal’ and !isset($_SESSION['order_number_created'])) {





$insert_id = $order->create($order_totals, 2);


$zco_notifier->notify(‘NOTIFY_CHECKOUT_PROCESS_AFTER_ORDER_CREATE’);


$payment_modules->after_order_create($insert_id);


$zco_notifier->notify(‘NOTIFY_CHECKOUT_PROCESS_AFTER_PAYMENT_MODULES_AFTER_ORDER_CREATE’);


// store the product info to the order


$order->create_add_products($insert_id);


$_SESSION['order_number_created'] = $insert_id;


}

在pages/checkout_payment/header_php.php任意位置加上unset($_SESSION['order_number_created']);

這樣,就算顧客在確認頁面一直刷新,因為已經設置了$_SESSION['order_number_created'],訂單不再生成,如果顧客返回修改了購物車,再次到達checkout_payment時$_SESSION['order_number_created']將被清除,


其實,生成訂單的代碼可以寫在modules/payment/paypal.php的 function confirmation()中。


代碼如下:


function confirmation() {

if(!isset($_SESSION['order_number_created']))

{

global $order,$order_total_modules,$order_totals,$zco_notifier,$insert_id;

$zco_notifier->notify(‘NOTIFY_CHECKOUT_PROCESS_BEGIN’); // if the customer is not logged on, redirect them to the time out page

if (!$_SESSION['customer_id'])
{

zen_redirect(zen_href_link(FILENAME_TIME_OUT));

}

else

{ // validate customer

if (zen_get_customer_validate_session($_SESSION['customer_id']) == false)

{

$_SESSION['navigation']->set_snapshot(array(‘mode’ => ‘SSL’, ‘page’ => FILENAME_CHECKOUT_SHIPPING));

zen_redirect(zen_href_link(FILENAME_LOGIN, ”, ‘SSL’));

}

}

if(isset($mycartID)&&$mycartID == $_SESSION['cart']->cartID)

{

return array(‘title’ => MODULE_PAYMENT_PAYPAL_TEXT_DESCRIPTION);

}

$mycartID = $_SESSION['cart']->cartID;

$order = new order; // prevent 0-entry orders from being generated/spoofed

if (sizeof($order->products) < 1)

{

zen_redirect(zen_href_link(FILENAME_SHOPPING_CART));

}

$order_total_modules = new order_total;

$zco_notifier->notify(‘NOTIFY_CHECKOUT_PROCESS_BEFORE_ORDER_TOTALS_PRE_CONFIRMATION_CHECK’);

//$order_totals = $order_total_modules->pre_confirmation_check();

$zco_notifier->notify(‘NOTIFY_CHECKOUT_PROCESS_BEFORE_ORDER_TOTALS_PROCESS’);

$order_totals = $order_total_modules->process();

$zco_notifier->notify(‘NOTIFY_CHECKOUT_PROCESS_AFTER_ORDER_TOTALS_PROCESS’);

if (!isset($_SESSION['payment']) && !$credit_covers)

{

zen_redirect(zen_href_link(FILENAME_DEFAULT));

} // load the before_process

// load the before_process function from the payment modules

//$zco_notifier->notify(‘NOTIFY_CHECKOUT_PROCESS_AFTER_PAYMENT_MODULES_BEFOREPROCESS’);

// create the order record

$insert_id = $order->create($order_totals, 2);

require(DIR_WS_LANGUAGES.’english/email_extras.php’);

require(DIR_WS_LANGUAGES.’english/checkout_process.php’);

// store the product info to the order

$order->create_add_products($insert_id);

$_SESSION['order_number_created'] = $insert_id;

$zco_notifier->notify(‘NOTIFY_CHECKOUT_PROCESS_AFTER_ORDER_CREATE_ADD_PRODUCTS’);

$order->send_order_email($insert_id, 2);

if (is_array($order_total_modules->modules))

{

reset($order_total_modules->modules);

while (list(, $value) = each($order_total_modules->modules))

{

$class = substr($value, 0, strrpos($value, ‘.’));

if (!isset($GLOBALS[$class])) continue;

$GLOBALS[$class]->output=null;

}

}

}

else

return false;

}

這樣后臺看到的訂單 的Payment Shipping 就還是paypal 送貨方式.
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
国产精品黄页免费高清在线观看| 亚洲欧美日韩中文在线制服| 亚洲欧美另类在线观看| 亚洲免费伊人电影在线观看av| 国产精品丝袜视频| 日韩国产激情在线| 美日韩精品免费观看视频| 97在线视频免费| 精品国产老师黑色丝袜高跟鞋| 久久人人爽人人爽人人片av高清| 国产成人精品一区二区三区| 国产免费一区视频观看免费| 欧美乱大交xxxxx另类电影| 欧美激情精品在线| 国产一区二区视频在线观看| 亚洲电影免费观看高清完整版在线观看| 久久综合亚洲社区| 国产成人亚洲综合91| 精品成人在线视频| 亚洲国产欧美久久| 激情亚洲一区二区三区四区| 欧美成人在线免费| 在线电影中文日韩| 久久91精品国产91久久久| 国产精品第七影院| 中文亚洲视频在线| 国产一区二区三区久久精品| 亚洲欧美制服综合另类| 一区二区国产精品视频| 色综合久久悠悠| 亚洲欧美色婷婷| 欧美成人精品一区二区| 亚洲欧美国产va在线影院| 欧美一区亚洲一区| 亚洲人成电影网站色…| 成人午夜激情免费视频| 久久69精品久久久久久国产越南| 欧美电影电视剧在线观看| 色综合久久悠悠| 亚洲精品一区中文字幕乱码| 国产精品999| 青青a在线精品免费观看| 久久国产精品久久精品| 久久久久国产精品一区| 欧美国产乱视频| 亚洲免费成人av电影| 欧美在线欧美在线| 亚洲丁香婷深爱综合| 亚洲精品在线不卡| 国产91精品黑色丝袜高跟鞋| 欧美黑人xxxx| 亚洲激情久久久| 精品久久久久国产| 久久精品国产一区| 日韩国产激情在线| 亚洲精品一区中文字幕乱码| 国产成人高潮免费观看精品| 亚洲国产欧美日韩精品| 成人精品在线视频| 国产亚洲欧美日韩一区二区| 国产精品视频久久久久| 98视频在线噜噜噜国产| 日韩综合中文字幕| 91情侣偷在线精品国产| 欧美二区乱c黑人| 欧美精品在线视频观看| 国产精品美女久久久免费| 自拍偷拍免费精品| 狠狠做深爱婷婷久久综合一区| 日韩视频在线一区| 亚洲第一男人av| 国产精品免费小视频| 国产91色在线播放| 精品国产老师黑色丝袜高跟鞋| 亚洲欧美综合区自拍另类| 国产丝袜精品第一页| 欧美丝袜第一区| 日韩av在线免费播放| 亚洲第一福利网站| 成人午夜在线影院| 亚洲国产精品资源| 国产精品视频资源| 97免费视频在线播放| 在线视频中文亚洲| 欧美一级淫片videoshd| 2019中文在线观看| 日韩综合视频在线观看| 欧美放荡办公室videos4k| 91久久精品一区| 日韩激情av在线播放| 国产欧美精品一区二区三区介绍| 亚洲国产中文字幕久久网| 亚洲精品一区二三区不卡| 久久久久久久久久久网站| 97久久精品在线| 欧美日韩国产限制| 俺去了亚洲欧美日韩| 亚洲欧美中文日韩在线v日本| 欧美日韩久久久久| 欧美激情视频三区| 亚洲免费一在线| 亚洲精品久久久久中文字幕欢迎你| 日韩成人黄色av| 国内精品视频久久| 久久久久久久久爱| 精品视频久久久久久久| 91豆花精品一区| 综合激情国产一区| 国产做受高潮69| 日本精品一区二区三区在线播放视频| 欧美一级在线亚洲天堂| 日韩在线视频一区| 日韩中文字幕视频在线观看| 91亚洲精华国产精华| 日韩av免费在线播放| 亚洲最大福利视频| 久久夜精品va视频免费观看| 免费不卡在线观看av| 69av在线视频| 亚洲www在线| 按摩亚洲人久久| 国产精品视频永久免费播放| 亚洲色图综合网| 国产精品都在这里| 成人淫片在线看| 精品偷拍各种wc美女嘘嘘| 欧美成人一二三| 人人爽久久涩噜噜噜网站| 亚洲成人av资源网| 欧美大片免费观看在线观看网站推荐| 日韩资源在线观看| 九九久久国产精品| 91日本视频在线| 精品露脸国产偷人在视频| 中文字幕一区二区三区电影| 久久99久久亚洲国产| 亚洲欧美国产视频| 亚洲天堂免费视频| 国产香蕉精品视频一区二区三区| 国产精品久久久久久久美男| 国产日本欧美在线观看| 欧美在线www| 视频在线观看一区二区| 热久久免费视频精品| 欧洲一区二区视频| 国产精品嫩草视频| 午夜精品一区二区三区视频免费看| 日韩欧亚中文在线| 亚洲欧美在线第一页| 国产精品1区2区在线观看| 久久精品视频在线播放| 亚洲高清久久久久久| 国产精品丝袜一区二区三区| 国产成人拍精品视频午夜网站| 国内揄拍国内精品少妇国语| 欧美激情视频在线观看| 日韩美女av在线| 国产一区二区日韩精品欧美精品| 日韩免费在线电影| 欧美日韩亚洲精品内裤| 亚洲va久久久噜噜噜| 久久中文字幕视频| 日韩av资源在线播放| 成人av电影天堂|