我用curl模拟post提交数据
一般都是这样:
$curl = curl_init($url);
curl_setopt( $curl, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt( $curl, CURLOPT_SSL_VERIFYHOST, false); 
curl_setopt( $curl, CURLOPT_POST, 1 );
curl_setopt( $curl, CURLOPT_POSTFIELDS, $Parameters );
curl_setopt( $curl, CURLOPT_HEADER, 0 );
curl_setopt( $curl, CURLOPT_RETURNTRANSFER , 1 );
$response = curl_exec($curl);
echo $response;
返回结果为空,显示页面是空白奇怪的是,我直接在浏览器中敲加带参数的url,ie然后提示我保存available.json文件到本机
我打开available.json文件一看,里面的内容是正确的返回数据这是什么情况?这种方法不能用curl吗?那应该怎么搞呢

解决方案 »

  1.   

    你确定接收页面是POST方式?在IE浏览器地址栏中敲加带参数的url是GET方式传值的;
    再不行你在接收页面将POST的所有参数与值全部写入到一个文本文件中,看看你curl的数据是否传递过去了。file_put_contents("log.txt","time:".date("Y-m-d H:i:s"),FILE_APPEND);
    foreach ($_REQUEST as $k => $v ){
        file_put_contents("log.txt",$k.":".$v,FILE_APPEND);
    }
      

  2.   

    curl_setopt($curl, CURLOPT_FOLLOWLOCATION,1)除了上面的问题,还有这个参数最好加上.
      

  3.   

    刚才问清楚了,晕死,是要用GET方式传递数据