【发布时间】:2011-03-26 18:21:07
【问题描述】:
我目前正在尝试获取一些 facebook 数据,然后我想在 Javascript 中访问这些数据。具体来说,我正在尝试访问用户朋友的一些特征。 因此,我使用 file_get_contents 将用户的朋友列表添加到他的图形 API URL。 这为我提供了一组朋友 ID。
由于我需要每个朋友的特点,我正在这样做:
foreach($dataarray as $friend) {
$friendurl = "https://graph.facebook.com/".$friend->id."?access_token=".$token."";
$fdata = json_decode(file_get_contents($friendurl));
if($fdata->gender == "male") {
array_push($fulldata, $fdata->name);
}
}
拥有这段代码似乎破坏了 javascript 代码,因为我的警报指令都没有运行。
另外,在 if 之后插入一个 break,这样只完成一个 file_get_contents,似乎可以使代码可以运行(但我显然需要通过所有的朋友)。
我该如何解决这个问题?
我会使用 jQuery 或 xmlHttpRequest 来执行 HTTP GET,但不知何故,我似乎总是返回 0 的状态码,响应为空。
编辑: 这是JS代码:
<script type="text/javascript">
function initialize() {
alert('Test1');
<?php
$fulldata = array();
$data = $result->data;
foreach($data as $friend) {
$friendurl = "https://graph.facebook.com/".$friend->id."?access_token=".$token."";
//echo("alert(\"".$friendurl."\");");
$fdata = json_decode(file_get_contents($friendurl));
if($fdata->hometown->name) {
array_push($fulldata, $fdata->hometown->name);
}
}
echo ("alert(\"".count($fulldata)."\")");
?>
}
</script>
我还应该补充一点,这是在使用画布功能嵌入到 facebook 的页面上完成的。
【问题讨论】:
-
这里没有显示警报的JS。
-
我编辑了这个问题,以防你真的不明白我的意思。
-
你贴的代码是纯PHP的..把坏掉的JS代码贴出来,我们会更聪明的。
-
因为你是用php输出html,所以在你的浏览器中查看源代码,看看它正在生成什么html(标签)并粘贴到这里。
标签: php jquery loops xmlhttprequest file-get-contents