zencart之paypal支付方式的修改后台先生成订单

paypal支付 生成订单

分享到: 更多

大家都知道贝宝(paypal)在zencart默认里面是先向paypal提交数据付款成功以后返回再生成订单。那么这个时候就会出现一个问题。如果有时候客户网速卡了。或者我们这边没给贝宝提交返回地址或者其他的原因造成漏单。。那不就会悲剧。。那么我这里介绍一种方法。。先生成订单然后下贝宝提交数据
打开moddules/paypal.php文件。。
然后找到function confirmation(){}

参考其他信用卡的信息或者绝大多数都是把这个函数改成
function confirmation($flag = '') {
if ($flag == 'ok') {

if (isset($_SESSION['order_id']) && !empty($_SESSION['order_id'])) {
//$this->delete_order($_SESSION['paypal']);
}
$this->create_order();
}
return array('title' => MODULE_PAYMENT_PAYPAL_TEXT_CATALOG_TITLE);
}

private function create_order()
{
global $order, $db, $order_totals;
$order->info['payment_method'] = MODULE_PAYMENT_PAYPAL_TEXT_CATALOG_TITLE;
$order->info['payment_module_code'] = $this->code;
$order->info['order_status'] = $this->order_status;

$order->info['currency'] = $_SESSION['currency'];

$orders_id = $order->create($order_totals, 2);
$_SESSION['orders_id'] = $orders_id;
$order->create_add_products($orders_id);



}
<br /><br />
然后在function process_button() {
$buttonArray = array();
$this->confirmation("ok");//这个是添加进去
}
那么就可以的。。很简单、、

问题 & 评论

    共有 0 评论

写个评论或者问题

该视频目前没有评论。

赞助商

zencart

如果有任何关于网站的意见,可以QQ联系或者发邮箱。