我使用以下代码:
$enableSandbox = true;
$paypalConfig = [ 'email' => 'test-facilitator@gmail.com',
'return_url' => 'http://test.com/paypal/?back',
'cancel_url' => 'http://test.com/paypal/?cancel',
'notify_url' => 'http://test.com/paypal/?notify'];
$paypalUrl = $enableSandbox ? 'https://www.sandbox.paypal.com/cgi-bin/webscr' : 'https://www.paypal.com/cgi-bin/webscr';
$itemName = 'Call';
$itemAmount = 5.00;
$data = [];
foreach ($_POST as $key => $value) {
$data[$key] = stripslashes($value);
}
$data['business'] = $paypalConfig['email'];
$data['return'] = stripslashes($paypalConfig['return_url']);
$data['cancel_return'] = stripslashes($paypalConfig['cancel_url']);
$data['notify_url'] = stripslashes($paypalConfig['notify_url']);
$data['item_name'] = $itemName;
$data['amount'] = $itemAmount;
$data['currency_code'] = 'GBP';
$queryString = http_build_query($data);
header('location:' . $paypalUrl . '?' . $queryString);
exit();
但是使用后,我被重定向到paypal.com主页,并且没有收到任何错误消息:
我还测试了test-buyer@gmail.com
,但是它不起作用。
我该如何解决这个问题?
答案 0 :(得分:0)
请更新您的代码
$paypalConfig = [ 'email' => 'test-facilitator@gmail.com',
'return_url' => 'http://test.com/paypal/?back',
'cancel_url' => 'http://test.com/paypal/?cancel',
// Added new line
'cmd' => '_xclick',
'notify_url' => 'http://test.com/paypal/?notify'];
在foreach
循环之后添加
添加了新行
$data['cmd'] = $paypalConfig['cmd'];
然后尝试希望它能工作。
因为您不见了: Buy Now buttons — <INPUT TYPE="hidden" name="cmd" value="_xclick">
请进行管理并在您的表单生成器中发送cmd
,它应该可以正常工作。如果不行,请通知我。