支付宝支付成功,return_url.php返回数据为空解决办法

//经过检查发现是支付宝接口alipay_notify.php   
//中get_verify()有问题
$fp=@fsockopen($transports.$urlarr['host'],$urlarr['port'],$errno,$errstr,$time_out);
    
        if(!$fp) 
    {
            die("ERROR: $errno - $errstr<br />\n");
        } 
    else 
    {
            fputs($fp, "POST ".$urlarr["path"]." HTTP/1.1\r\n");
            fputs($fp, "Host: ".$urlarr["host"]."\r\n");
            fputs($fp, "Content-type: application/x-www-form-urlencoded\r\n");
            fputs($fp, "Content-length: ".strlen($urlarr["query"])."\r\n");
            fputs($fp, "Connection: close\r\n\r\n");
            fputs($fp, $urlarr["query"] . "\r\n\r\n");
            while(!feof($fp)) {
                $info[]=@fgets($fp, 1024);
            }
            fclose($fp);
            $info = implode(",",$info);
            return $info;
//修改后的代码:
$curl = curl_init();   
    curl_setopt($curl, CURLOPT_URL, $url);   
    curl_setopt($curl, CURLOPT_USERAGENT, $_SERVER['HTTP_USER_AGENT']);  
    curl_setopt($curl, CURLOPT_POST, 1);   
    curl_setopt($curl, CURLOPT_POSTFIELDS, $urlarr["query"]);   
    curl_setopt($curl, CURLOPT_TIMEOUT, $time_out);   
    curl_setopt($curl, CURLOPT_HEADER, 0);   
    curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);   
    $info = curl_exec($curl); 
    if (curl_errno($curl))
    {   
        $error=curl_error($curl);
        $this->_log_result($error);
        echo '<pre><b>错误:</b><br />'.curl_error($curl);   
    }   
        curl_close($curl);   
        return $info; 
////经过测试。返回数据正确,付款成功,并更新订单,显示已付款

 

转载于:https://www.cnblogs.com/smallwind/archive/2013/05/28/3103223.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值