I am trying to pull my friends list using the following url
$url = "https://graph.facebook.com/".$facebookid."/fql?
q=SELECT uid,name FROM user WHERE uid IN(SELECT uid2 FROM friend WHERE uid1 = me()) ORDER BY name
&access_token=".$accesstoken."
&limit=10000&offset=0";
//echo $url."<br/>";
$list = json_decode(file_get_contents($url));
When i try to print the array, it always return empty.. If the same url is tested all my friends list is listed in a json
How to parse this... I am using codeigniter
You'd probably have to encode the query by urlencode()
as follows:
$query = "SELECT uid, name FROM user WHERE uid IN(SELECT uid2 FROM friend WHERE uid1 = me()) ORDER BY name";
$url = "https://graph.facebook.com/$facebookid/fql?q=" . urlencode($query) .
"&access_token=$accesstoken&limit=10000&offset=0";
$list = json_decode(file_get_contents($url), true);
Either to use file_get_contents
or curl
:
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
if(! $result = curl_exec($ch)) {
echo curl_error($ch);
} else {
$res = json_decode($result, true);
}
curl_close($ch);
var_dump($res);