php curl获取不到返回值

kav1987 2016-06-18 02:53:15
服务器端函数
function order_kb(){
$expressodd[0]['odd']='560860393435';
$expressoddjson = json_encode($expressodd);
return $expressoddjson;
}

客户端请求php文件
<?php
$post_data = array () ;
$url = 'http://www.test.com/index.php?m=user&a=order_kb' ;
$o = "" ;
foreach ($post_data as $k=>$v)
{
$o.="$k=".urlencode($v)."&";
}
$data=substr($o,0,-1);
$ch = curl_init();
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_HEADER,0);
curl_setopt($ch, CURLOPT_URL,$url);
curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
$result = curl_exec($ch);
curl_close($curl);
print_r(json_decode($result,TRUE));
print_r(json_decode($result,TRUE)[0]['odd']);//打印出来看结果
?>
为什么得不到返回值?打印出来是空白的页面
...全文
2206 18 打赏 收藏 转发到动态 举报
写回复
用AI写文章
18 条回复
切换为时间正序
请发表友善的回复…
发表回复
kav1987 2016-06-18
  • 打赏
  • 举报
回复
引用 16 楼 xuzuning 的回复:
你没有开启 ajax 模式,order_kb 的返回值怎么会输出? 你都不看手册的吗?
怎么开?刚学,都不懂
xuzuning 2016-06-18
  • 打赏
  • 举报
回复
你没有开启 ajax 模式,order_kb 的返回值怎么会输出? 你都不看手册的吗?
kav1987 2016-06-18
  • 打赏
  • 举报
回复
引用 14 楼 xuzuning 的回复:
但他并没有返回数据,你没有开启 ajax 模式吧?
没有,就是不知道为什么return的值会取不到
xuzuning 2016-06-18
  • 打赏
  • 举报
回复
但他并没有返回数据,你没有开启 ajax 模式吧?
kav1987 2016-06-18
  • 打赏
  • 举报
回复
引用 12 楼 xuzuning 的回复:
order_kb 不是服务端的函数吗?你是怎么调用的?
用thinkphp框架,http://www.danhaoxia.com/index.php?m=user&a=order_kb这句URL就可以调用到那函数
xuzuning 2016-06-18
  • 打赏
  • 举报
回复
order_kb 不是服务端的函数吗?你是怎么调用的?
kav1987 2016-06-18
  • 打赏
  • 举报
回复
引用 9 楼 xuzuning 的回复:
去是去掉了,但是也只剩下了 BOM 头了 你是怎么调用 order_kb 函数的?
客户端请求PHP文件
<?php
$post_data = array () ;
$url = 'http://www.danhaoxia.com/index.php?m=user&a=order_kb' ;
$o = "" ;
foreach ($post_data as $k=>$v)
{
    $o.="$k=".urlencode($v)."&";
}
$data=substr($o,0,-1);
$ch = curl_init();
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_HEADER,0);
curl_setopt($ch, CURLOPT_URL,$url);
curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
$result = curl_exec($ch);
curl_close($curl);
print_r(json_decode($result,TRUE));
print_r(json_decode($result,TRUE)[0]['odd']);//打印出来看结果
?>
kav1987 2016-06-18
  • 打赏
  • 举报
回复
引用 9 楼 xuzuning 的回复:
去是去掉了,但是也只剩下了 BOM 头了 你是怎么调用 order_kb 函数的?
客户端请求php文件

<?php
$post_data = array () ;
$url = 'http://www.test.com/index.php?m=user&a=order_kb' ;
$o = "" ;
foreach ($post_data as $k=>$v)
{
    $o.="$k=".urlencode($v)."&";
}
$data=substr($o,0,-1);
$ch = curl_init();
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_HEADER,0);
curl_setopt($ch, CURLOPT_URL,$url);
curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
$result = curl_exec($ch);
curl_close($curl);
print_r(json_decode($result,TRUE));
print_r(json_decode($result,TRUE)[0]['odd']);//打印出来看结果
?>
xuzuning 2016-06-18
  • 打赏
  • 举报
回复
去是去掉了,但是也只剩下了 BOM 头了 你是怎么调用 order_kb 函数的?
kav1987 2016-06-18
  • 打赏
  • 举报
回复
引用 5 楼 xuzuning 的回复:
$url = 'http://www.danhaoxia.com/index.php?m=user&a=order_kb' ;
echo file_get_contents($url);
有 BOM 头不说,根本就没有 json 的影子
服务器端函数

function order_kb(){
    $expressodd[0]['odd']='560860393435';
    $expressoddjson = json_encode($expressodd);
    return $expressoddjson;
}
kav1987 2016-06-18
  • 打赏
  • 举报
回复
引用 5 楼 xuzuning 的回复:
$url = 'http://www.danhaoxia.com/index.php?m=user&a=order_kb' ;
echo file_get_contents($url);
有 BOM 头不说,根本就没有 json 的影子
那个应该是我刚在服务器那边加的打印内容的测试 ,现在去掉了
kav1987 2016-06-18
  • 打赏
  • 举报
回复
引用 5 楼 xuzuning 的回复:
$url = 'http://www.danhaoxia.com/index.php?m=user&a=order_kb' ;
echo file_get_contents($url);
有 BOM 头不说,根本就没有 json 的影子
刚学PHP,服务器端返回值上面做处理吗?
xuzuning 2016-06-18
  • 打赏
  • 举报
回复
$url = 'http://www.danhaoxia.com/index.php?m=user&a=order_kb' ;
echo file_get_contents($url);


有 BOM 头不说,根本就没有 json 的影子
kav1987 2016-06-18
  • 打赏
  • 举报
回复
引用 3 楼 xuzuning 的回复:
那你就太无聊了
实际请求$url = 'http://www.danhaoxia.com/index.php?m=user&a=order_kb' ; 麻烦看下
xuzuning 2016-06-18
  • 打赏
  • 举报
回复
那你就太无聊了
kav1987 2016-06-18
  • 打赏
  • 举报
回复
引用 1 楼 xuzuning 的回复:
这个网站在第一次访问时会执行如下 js 代码
function setCookie(c_name, value, expiredays) {
            document.cookie = c_name + "=" + escape(value) + ((expiredays==null) ? "" : ";expires=" + expiredays) + ";path=/";
}
function getHostUri() {
            var loc = document.location;
                    return loc.toString();
}
var exdate=new Date();
exdate.setDate(exdate.getDate()+1);
setCookie('DOAAuthReferrer', document.referrer, exdate.toUTCString());
setCookie('DOADFgsjnrSFgsg329gaFGa3ggs9434sgSGS43tsgSHSG35', '#e25d0c3c68dea6df48ffe0664f9d86d24c31ff1d#FLBN#1467097484#1739593330#', 'Tue, 28 Jun 2016 07:04:44 GMT');
try {  
    location.reload(true);  
} catch (err1) {  
    try {  
        location.reload();  
    } catch (err2) {  
    	location.href = getHostUri();  
    }  
}
如果你不能模拟执行的话,那么肯定是获取不到真正的数据的
那个网址是我随便写的
xuzuning 2016-06-18
  • 打赏
  • 举报
回复
这个网站在第一次访问时会执行如下 js 代码
function setCookie(c_name, value, expiredays) {
            document.cookie = c_name + "=" + escape(value) + ((expiredays==null) ? "" : ";expires=" + expiredays) + ";path=/";
}
function getHostUri() {
            var loc = document.location;
                    return loc.toString();
}
var exdate=new Date();
exdate.setDate(exdate.getDate()+1);
setCookie('DOAAuthReferrer', document.referrer, exdate.toUTCString());
setCookie('DOADFgsjnrSFgsg329gaFGa3ggs9434sgSGS43tsgSHSG35', '#e25d0c3c68dea6df48ffe0664f9d86d24c31ff1d#FLBN#1467097484#1739593330#', 'Tue, 28 Jun 2016 07:04:44 GMT');
try {  
    location.reload(true);  
} catch (err1) {  
    try {  
        location.reload();  
    } catch (err2) {  
    	location.href = getHostUri();  
    }  
}
如果你不能模拟执行的话,那么肯定是获取不到真正的数据的

21,886

社区成员

发帖
与我相关
我的任务
社区描述
从PHP安装配置,PHP入门,PHP基础到PHP应用
社区管理员
  • 基础编程社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧