php-贝宝不接受我通过的“金额”

| 第一次在这里,我用php编写的网站有问题。我正在尝试让Paypal接受将以下值传递给它的单笔付款。我使用了他们的“创建按钮”工具,并添加了一些其他字段。 $ idTeacher字段完美地传递到了贝宝,但是$ MaxHourlyRate却没有(但是两者都存在,因为我可以回显它们)。任何建议将不胜感激:
echo \"<table border=\'1\' cellpadding=\'0\' cellspacing=\'1\'>\";
echo \"<tr><td>Passed #</td><td>#Contract</td><td>Language</td><td>Language Level</td><td>PLZ</td><td>Frequency</td><td>Max Hourly Rate</td><td>Reserve Contract</td></tr>\";

while($row = mysql_fetch_array($pendingcontractsql)){
$idContract = $row[\'idContract\'];
$Language = $row[\'Language\'];
$LanguageLevel = $row[\'LanguageLevel\'];
$PLZ = $row[\'PLZ\'];
$Frequency = $row[\'Frequency\'];
$MaxHourlyRate = $row[\'MaxHourlyRate\'];


echo \"<tr>\";
echo \"<td>$MaxHourlyRate</td><td>\".$row[\'idContract\'].\"<td>\".$row[\'Language\'].\"</td><td>\".$row[\'LanguageLevel\'].\"</td><td>\".$row[\'PLZ\'].\"</td><td>\".$row[\'Frequency\'].\"</td><td align=\'right\'>\".$row[\'MaxHourlyRate\'].\"CHF</td><td align=\'center\'>
<form action=\'https://www.paypal.com/cgi-bin/webscr\' method=\'post\'>
<input type=\'hidden\' name=\'cmd\' value=\'_s-xclick\'>
<input type=\'hidden\' name=\'business\' value=\'brettstirling@gmail.com\'>
<input type=\'hidden\' name=\'quantity\' value=\'1\'>
<input type=\'hidden\' name=\'no_note\' value=\'1\'>
<input type=\'hidden\' name=\'no_shipping\' value=\'1\'>
<input type=\'hidden\' name=\'currency_code\' value=\'CHF\'>
<input type=\'hidden\' name=\'item_name\' value=\'Payment for Contract #\".$idContract.\"\'>
<input type=\'hidden\' name=\'item_number\' value=\'$idContract\'>
<input type=\'hidden\' name=\'amount\' value=\'$MaxHourlyRate\'>
<input type=\'hidden\' name=\'discount_rate\' value=\'50\'>
<input type=\'hidden\' name=\'notify_url\' value=\'http://www.findateacher.ch/paypalipn.php\'>
<input type=\'hidden\' name=\'return\' value=\'http://www.findateacher.ch/availablecontract.php\'>
<input type=\'hidden\' name=\'rm\' value=\'2\'>
<input type=\'hidden\' name=\'cbt\' value=\'Return to Find A Teacher\'>
<input type=\'hidden\' name=\'hosted_button_id\' value=\'LRABWTJVH7N36\'>
<input type=\'submit\' border=\'0\' name=\'submit\' value=\'Reserve Contract\'>
</form>
</td>\";
echo \"</tr>\";
}

echo \"</table>\";
提前谢谢了, 布雷特
已邀请:
尝试将字段名称更改为AMT而不是数量。 让我知道是否可行。
我有一个类似的问题并改变了
<input type=\'hidden\' name=\'cmd\' value=\'_s-xclick\'>
<input type=\'hidden\' name=\'cmd\' value=\'_xclick\'>
为我工作了不止一次。希望这可以帮助。 让我知道是否可行。
我通过将按钮更改为非托管按钮来解决-您可以根据需要传递任意多个变量,尽管如此,感谢所有建议
小心地切换按钮值-它们会做不同的事情。我想您已经看过,但是如果没有,请查看此变量参考以了解“网站付款标准” 我会验证您传递的数字正好是两位小数,如果您有一个整数,则必须为x.00;如果比这更精确,则需要将值四舍五入到小数点后两位(至少对于某些贝宝API而言:我不确定该产品是否具体,但我希望它\'一样)。选择行以确保它实际上是一个X.xx数字,而不是像$ X.xx这样怪异的东西会破坏PayPal API,因此可以对行中的数据进行清理 @Teodor Talov:PayFlow和NVP API使用的是AMT,但对于“网站付款Pro /标准版”来说,“金额”似乎正确。 PayPal产品,文档和API的分类经常令人发指。祝你好运=)

要回复问题请先登录注册