无法从Drupal重定向到PayPal

问题描述 投票:0回答:1

我对Drupal完全陌生。我在Drupal中使用纯HTML创建了一个表单,当用户单击pay时,我调用一个PHP文件只是为了获取一些数据库信息,然后此PHP重定向到另一个将PayPal付款放在一起的PHP。

出于某些原因,在Drupal下调用PayPal付款PHP不会将其重定向到PayPal。我的图层如下:

[https://example.com/test/?q=node/11->调用savedatatoDB.php->调用paypalpreparepayment.php->重定向到paypal

如果我直接从浏览器中调用PayPal付款PHP,如下所示:https://example.com/test/paypal/restapi/sample/payments/PaymentPP.php?samount=0.005&sprice=123.45&description=products&sqty=100

有效!我认为问题可能出在header()之前,但事实并非如此。

我像这样在重定向之前写了一行写入日志文件:

$today = date("D M j G:i:s T Y");               // Sat Mar 10 17:16:18 MST 2001
$log = "{$today} ready to redirect {$sale_description}, {$sale_amount}, {$sale_quantity}, {$sale_price}\n";
//Save string to log, use FILE_APPEND to append.
file_put_contents('./log_'.date("j.n.Y").'.txt', $log, FILE_APPEND);
header("Location: $redirectUrl");
exit;

日志显示我已经走了那么远,但没有重定向!但是再次,如果我直接从浏览器中调用该PHP,那么我会看到PayPal要求我进行授权。

所以当我在Drupal UI下时,我想知道Drupal是否可以某种方式阻止重定向。

php paypal drupal-7 paypal-sandbox
1个回答
0
投票

我从Drupal.org得到了一个有意义的答案。

这里是链接:https://www.drupal.org/node/2365503#comment-9295613

[Jaypan大约11小时前评论了]

问题是您的重定向位于服务器端,但您用JavaScript触发它。如果触发器在您的JS中,则重定向也需要在JS中进行。如果触发器是非JS(提交到服务器),则您的重定向可以在服务器端。

© www.soinside.com 2019 - 2024. All rights reserved.