2012-07-26 45 views
1

用户登录时,用户标识存储在User :: Data('id')中。PHP:如何在paypal IPN系统中集成userid?

如何使用html格式的用户标识以及如何访问IPN监听器中的变量,以便在支付成功时更新正确的帐户?

这是我当前的按钮代码。

<form action="https://www.paypal.com/cgi-bin/webscr" method="post"> 
<input type="hidden" name="cmd" value="_s-xclick"> 
<input type="hidden" name="hosted_button_id" value=".."> 
<table> 
<tr><td><input type="hidden" name="on0" value="Amount">Amount</td></tr><tr><td><select name="os0"> 
    <option value="100">100$100,00 USD</option> 
    <option value="150">150$140,00 USD</option> 
</select> </td></tr> 
</table> 
<input type="hidden" name="currency_code" value="USD"> 
<input type="image" src="https://www.paypalobjects.com/en_US/i/btn/btn_buynow_SM.gif" border="0" name="submit" alt="PayPal - The safer, easier way to pay online!"> 
<img alt="" border="0" src="https://www.paypalobjects.com/no_NO/i/scr/pixel.gif" width="1" height="1"> 
</form> 

这是目前使用监听器IM:https://github.com/Quixotix/PHP-PayPal-IPN/tree/58e029c235133b041006a45a9ce614739d8eb550

回答

2

您是否尝试过在HTML中使用 “隐藏” 的形式元素? 像这样:

<input type="hidden" name="user_id" value="medusa1414" /> 

您可以使用PHP与用户ID,用户::数据( 'ID')增加吗?如你所说。

<form action="https://www.paypal.com/cgi-bin/webscr" method="post"> 
<input type="hidden" name="cmd" value="_s-xclick"> 
<input type="hidden" name="hosted_button_id" value=".."> 
<table> 
<tr><td><input type="hidden" name="on0" value="Amount">Amount</td></tr><tr><td><select name="os0"> 
    <option value="100">100$100,00 USD</option> 
    <option value="150">150$140,00 USD</option> 
</select> </td></tr> 
</table> 
<?php echo '<input type="hidden" name="user_id" value="' . $user_id . '" />'; ?> 
<input type="hidden" name="currency_code" value="USD"> 
<input type="image" src="https://www.paypalobjects.com/en_US/i/btn/btn_buynow_SM.gif" border="0" name="submit" alt="PayPal - The safer, easier way to pay online!"> 
<img alt="" border="0" src="https://www.paypalobjects.com/no_NO/i/scr/pixel.gif" width="1" height="1"> 
</form> 

您可以通过使用

$user_id = $_POST['user_id']; 
+2

的'custom'场也可以用来接收在PHP这个值,或者。 – David 2012-07-26 23:49:21

+0

是否有一种方法可以使该字段成为必需?在opera中,您可以编辑隐藏字段并提交表单。然后用户将收取费用,并不接受任何东西。 – medusa1414 2012-07-27 00:45:07

+0

几乎可以在所有浏览器上编辑它,即HTML。如果用户想要他的钱被浪费,让他。为什么用户应该改变HTML代码呢?用户应该通过图形界面来做这些事情。 – sarkolata 2012-07-27 00:50:29