没有得到贝宝的回应

时间:2012-12-13 04:41:30

标签: php paypal

我试过这段代码,但我没有得到回复

<form action="https://www.sandbox.paypal.com/cgi-bin/webscr" method="post" name="fm">
    <input type="hidden" name="cmd" value="_cart" />
    <input name="currency_code" type="hidden" value="GBP" />

    <input type="hidden" name="business" value="test_biz@email.com" />

    <?php
        for($m=0;$m<4;$m++){
    ?>

        <input type="hidden" name="quantity_<?php echo $m+1; ?>" value="1" />   
        <input type="hidden" name="item_name_<?php echo $m+1; ?>" value="<?php echo "fhghg"; ?>" />
        <input type="hidden" name="amount_<?php echo $m+1; ?>" value="<?php echo 10; ?>" />

    <?php
        }
    ?> 


    <input name="no_shipping" type="hidden" value="2" />
    <input type="hidden" name="upload" value="1" /> 
    <input type="hidden" name="return" value="http://localhost/test/test1.php" />
    <input type="hidden" name="cancel_return" value="http://localhost/test/test.php" />
    <input type="hidden" name="notify_url" value="http://localhost/test/test.php">
    <input type='submit' name='submit' value='submit' />
</form>

我将echo数组作为print_r($_POST)来打印响应。它显示为Array()

如何解决这个问题?如何将变量传递给paypal多个项目?

2 个答案:

答案 0 :(得分:0)

超级全球$_POST始终是一个数组。如果您只在Array()的输出中获得print_r($_POST),则表示未发布任何内容,且数组为空(请确保您使用的是print_r()而不是print()这里。

如果您不想打印整个数组,而是从该数组中打印单个字段的值,请使用$_POST['item_id']等键,这些键在item_id键中打印$_POST键的值{1}}。

答案 1 :(得分:0)

test1.php是Paypal IPN脚本吗? Paypal无法访问localhost以向其发布订单通知(“通知”字段)。这必须是一个实际的URL。如果您在家中进行测试,请尝试使用no-ip.com等动态IP服务。