我多次与Paypal合作。我创建了一个按钮,重定向到proceed.php?order =成功订单,并在proceed.php中检查总金额和收款人电子邮件是否与数据库信息匹配。
我的代码总是如下:
if ($_POST['payer_email'] && $_GET["ordertr"]){
// get paypal value and product it to fetch correct serial
$ppemail = trim(mysqli_real_escape_string($con, htmlspecialchars($_POST['payer_email'], ENT_QUOTES, 'UTF-8')));
$ordertr = trim(mysqli_real_escape_string($con, htmlspecialchars($_GET['ordertr'], ENT_QUOTES, 'UTF-8')));
$gross = trim(mysqli_real_escape_string($con, htmlspecialchars($_POST['mc_gross'], ENT_QUOTES, 'UTF-8')));
if ($gross == $actualprice){//price match}
}
可悲的是,它没有像以前那样从Paypal获取POST数据。一旦用户重定向到站点,Paypal停止发送POST数据是否可悲?我总是用这种方式代替IPN,我看到有PDT,但我从未使用过,也从未在获得POST数据之前打开/关闭。
任何想法都错了吗?