我无法将PayPal的IPN集成到我的PHP中,我有以下脚本,并且在PayPal沙箱中进行付款时,它会一直落入默认情况。PayPal IPN集成到PHP
任何帮助,将不胜感激!
$request = "cmd=_notify-validate";
foreach ($_POST as $varname => $varvalue){
$email .= "$varname: $varvalue\n";
if(function_exists('get_magic_quotes_gpc') and get_magic_quotes_gpc()){
$varvalue = urlencode(stripslashes($varvalue));
}
else {
$value = urlencode($value);
}
$request .= "&$varname=$varvalue";
}
$ch = curl_init();
curl_setopt($ch,CURLOPT_URL,"https://www.sandbox.paypal.com/cgi-bin/webscr");
//curl_setopt($ch,CURLOPT_URL,"https://www.paypal.com");
curl_setopt($ch,CURLOPT_POST,true);
curl_setopt($ch,CURLOPT_POSTFIELDS,$request);
curl_setopt($ch,CURLOPT_FOLLOWLOCATION,false);
curl_setopt($ch,CURLOPT_RETURNTRANSFER,true);
$result = curl_exec($ch);
curl_close($ch);
switch($result){
case "VERIFIED":
mail('[email protected]','worked','worked');
break;
case "INVALID":
mail('[email protected]','invaild','invaild');
break;
default:
mail('[email protected]','failed','failed');
}
如果我发给自己$导致它仅仅是空白。
编辑:我发现这是我的LAMP服务器端问题,但我不确定如何解决它。
注:我确实在服务器上安装了curl,但我不确定它是否配置正确。
我解决了这个问题,看起来像贝宝有问题通过SSL通信到我的服务器,我把它放在下面的行,它的工作: curl_setopt($ ch,CURLOPT_SSL_VERIFYPEER,false); – Jeff 2012-08-09 18:14:27