Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/245.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/79.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 贝宝噩梦_Php_Html_Paypal Ipn - Fatal编程技术网

Php 贝宝噩梦

Php 贝宝噩梦,php,html,paypal-ipn,Php,Html,Paypal Ipn,我在这里提供了一个我试图测试的示例,但由于我是paypal新手,不知道如何调试paypal,sandbox也帮不了我多少忙:( 看起来付款已经被处理和接受了,我现在要做的就是更新mysql表,在下面的下面标记的行中,“如果($payment\u amount==10.00&&$payment\u currency==GBP'){”。我已经在phpmyadmin上测试了我的mysql,它工作得很好,只是这里有点问题:( 贝宝按钮 <form name="_xclick" action="ht

我在这里提供了一个我试图测试的示例,但由于我是paypal新手,不知道如何调试paypal,sandbox也帮不了我多少忙:(

看起来付款已经被处理和接受了,我现在要做的就是更新mysql表,在下面的
下面标记的行中,“如果($payment\u amount==10.00&&$payment\u currency==GBP'){”
。我已经在phpmyadmin上测试了我的mysql,它工作得很好,只是这里有点问题:(

贝宝按钮

<form name="_xclick" action="https://www.paypal.com/cgi-bin/webscr" method="post" target="_blank">
    <input type="hidden" name="cmd" value="_xclick-subscriptions" />
    <input type="hidden" name="business"  value="[email]" />
    <input type="hidden" name="item_name"  value="New Subscription" />
    <input type="hidden" name="first_name"  value="<?php echo  $arr['user']['fname']; ?>" />
    <input type="hidden" name="last_name"  value="<?php echo  $arr['user']['lname']; ?>" />
    <input type="hidden" name="address1"  value="<?php echo  $arr['user']['add1']; ?>" />
    <input type="hidden" name="address2"  value="<?php echo  $arr['user']['add2']; ?>" />
    <input type="hidden" name="city"  value="<?php echo  $arr['user']['town']; ?>" />
    <input type="hidden" name="zip"  value="<?php echo  $arr['user']['postcode']; ?>" />
    <input type="hidden" name="email"  value="[client_email]" />
    <input type="hidden" name="currency_code"  value="GBP" />
    <input type="hidden" name="no_shipping" value="1" />
    <input type="image" src="http://www.paypal.com/en_US/i/btn/btn_subscribe_LG.gif" border="0" name="submit" alt="Make payments with PayPal - it's fast, free and secure!" />
    <input type="hidden" name="recurring" value="1" />  
    <input type="hidden" name="a3" value="10.00" />  
    <input type="hidden" name="p3" value="1" />
    <input type="hidden" name="t3" value="Y" />
    <input type="hidden" name="src" value="1" />
    <input type="hidden" name="sra" value="1" />
    <input type="hidden" name="item_number" value="<?php echo $arr['user']['id'] ?>" />
    <input type="hidden" name="return"  value="<?php echo site_url.'account/' ?>" />
    <input type="hidden" name="cancel_return"  value="<?php echo site_url.'account/' ?>" />
    <input type="hidden" name="notify_url"  value="<?php echo site_url.'account/ipn.php' ?>" />
</form>


尝试调试,就像我做的那样:

在每一步中,将来自paypal(邮寄)和其他人的详细信息放入email()。记录(邮寄)每个成功和错误,它将为您提供问题来源。例如

 mail("yourmail@mail.com", "PP", $res, "From:support@paypal.com"); 

在声明变量之后,site\u url是常数吗

<input type="hidden" name="return"  value="<?php echo site_url.'account/' ?>" />
<input type="hidden" name="cancel_return"  value="<?php echo site_url.'account/' ?>" />
<input type="hidden" name="notify_url"  value="<?php echo site_url.'account/ipn.php' ?>" />

我用我使用IPN沙箱时给出的脚本尝试过,但它不起作用:(我从来没有收到过任何电子邮件:(如我所说,为自己制作调试器,记录IPN处理程序和PayPAl的每一步操作及其响应。你会很容易地找到问题的根源,我认为你不理解我,我可以把邮件("yourmail@mail.com“,”PP“,$res“,发件人:support@paypal.com")`在ipn handler页面的最顶端,它不会给我发电子邮件,即使我直接访问同一个url,它也会工作,我尝试了你的答案,我的ipn url,如果我把它放在沙箱上测试,我不会收到电子邮件,如果我从浏览器访问ipn,它会工作,这就是为什么它很奇怪,只要把它放到你的数据库/文件/随便什么.Just debug itI认为sandbox包括一个日志/调试功能,我记得看到了,但不是很确定,你可以检查。还可以检查,看看要调试的电子邮件是否在另一个页面上工作,也许最好尝试使用文件内容登录一个文件,然后检查日志,有时电子邮件会转到大容量文件夹,你不想被一个小问题分散注意力 .
<input type="hidden" name="return"  value="<?php echo site_url.'account/' ?>" />
<input type="hidden" name="cancel_return"  value="<?php echo site_url.'account/' ?>" />
<input type="hidden" name="notify_url"  value="<?php echo site_url.'account/ipn.php' ?>" />