php - 当用户在 PayPal 结帐页面上关闭浏览器时执行操作

标签 php mysql paypal

我有一个使用 PayPal 作为支付网关的网站。

当用户填写表格并点击“支付”按钮时,它会重定向到 PayPal 结账页面。发生的事情是,我执行代码将表单数据发送到数据库,然后它重定向到 PayPal。

现在,当用户在 PayPal 屏幕上时,有 2 种方法可以让他们不付款。

第 1 - 单击取消并返回网站

第二 - 单击浏览器上的 X

我需要做的是确保如果用户没有付款,它会删除发送到数据库的记录。

所以这就是我的尝试:

我将以下代码添加到标准的 PayPal html 隐藏字段

<input type="hidden" name="cancel_return" value = "https://www.mydomain.com.sg/pagename?orderstatus=cancel">

if($orderstatus == 'cancel') {
        $sql3 = "DELETE from table order by CustomerID desc 
limit 1";
    }

我还添加了上面的sql语句,所以当达到该页面属性取消时,它会自动删除最新的记录。

现在,这在用户点击取消并返回网站(在 paypal 上)时有效。

但是,当用户单击关闭 (X) 浏览器按钮时,这不起作用。

所以我的问题是,当有人点击 PayPal 上的浏览​​器关闭时,我该如何执行上述代码?

最佳答案

如果浏览器显示的是 Paypal 页面,那么您无法控制那里。您无法修改脚本或 HTML,因此您无能为力。

我曾经遇到过类似的问题。我的解决方案是在创建订单时加上时间戳,并每小时运行一次预定作业,其中包括取消几个小时后尚未完成的所有订单。

关于php - 当用户在 PayPal 结帐页面上关闭浏览器时执行操作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56014675/

相关文章:

php - PayPal Sandbox Classic API Express Checkout NVP 内部服务器错误 (500)

paypal - 创建 Paypal 沙盒帐户后如何向其添加资金?

php - Paypal 检测到资金不足

PHP MYSQL 在 PDO 中使用带有 CASE 和 Like 的 IN()

php - 在 session 中添加相同数组键的数组值

php - Laravel - undefined variable : modules

c# - 如何在c#中使用强类型数据库从数据表自动增量列中获取自动编号?

java - "Column Count doesn' t 第 1 行的匹配值计数"E

PHP Web 服务客户端 : Guzzle and xsd

php - 选择前 11 个,它们共同构成 MySQL 中的最高综合得分?