【发布时间】:2016-05-24 21:15:32
【问题描述】:
使用paypal express完成支付后,我的数据库更新失败,我该怎么办?
代码如下:
$transaction = $this->initPayPalExpress()->completePurchase($this->param);
$response = $transaction->send();
$data = $response->getData();
if (isset($data['PAYMENTINFO_0_ACK']) && $data['PAYMENTINFO_0_ACK'] === 'Success') {
$this->updateDatabase($data);
}
【问题讨论】:
-
如果可能,请打印您的更新函数和响应数据
-
对于更新功能,我只是将数据存储到 MySQL 数据库中。对于响应,我得到了显示事务已完成的所有详细信息。问题是数据库中的数据不会更新,例如,当这个函数应该运行时用户关闭浏览器:
$this->updateDatabase($data); -
即使用户关闭浏览器!,它是服务器端处理,所以关闭浏览器不会阻止事务执行
-
所以更新不会失败?我认为会话将被破坏并且会失败
-
不!更新不会失败,并且会话也是服务器端文件,因此您的代码块永远不会被客户端操作中断