任何人都可以帮助我了解 IPN 侦听器脚本。我尝试使用 IPN 的沙盒测试工具对其进行测试,但我总是得到一个无效的结果,但 HTTP 状态为 200。我还尝试回显 $_POST 数组,但它是空的..
这是我的代码
<?php
echo "<pre>".print_r($_POST,true)."</pre>\n";
$ipn_data=$_POST;
if((array_key_exists('test_ipn',$ipn_data)) && ($ipn_data['test_ipn']==1)){
$url="https://www.sandbox.paypal.com/cgi-bin/webscr";
}
else{
$url="https://www.paypal.com/cgi-bin/webscr";
}
$request=curl_init();
curl_setopt_array($request,array
(
CURLOPT_URL=>$url,
CURLOPT_POST=>true,
CURLOPT_POSTFIELDS=>http_build_query(array('cmd'=>'_notify-validate')+ $ipn_data),
CURLOPT_RETURNTRANSFER=>TRUE,
CURLOPT_HEADER=>FALSE,
CURLOPT_SSL_VERIFYPEER => false
));
$result=curl_exec($request);
$stat=curl_getinfo($request,CURLINFO_HTTP_CODE);
curl_close($request);
echo $result;
echo $stat;
if($stat==200 && $result=='VERIFIED'){
echo "VERIFIED";
}
?>