[英]Get all images from specific Facebook album with Graph API PHP SDK
嗨,我正在嘗試從特定相冊中獲取所有圖片(始終使用相同的硬編碼 id)。 我正在使用來自 ZD85544FCE402C7A203A96A48078ZED 的圖表 API PHP SDK。 這是我的代碼:
<?php
require 'phpfiles/facebook.php';
$facebook = new Facebook(array(
'appId' => 'aaaa',
'secret' => 'bbbb',
'cookie' => true
));
$user_profile = $facebook->api('/1881235503185/photos?access_token=cccc');
var_dump($user_profile);
var_dump output:
array(1) { ["data"]=> array(0) { } }
當我使用 Javascript SDK 它工作正常...
FB.api('/1881235503185/photos?access_token=cccc', function(response) {
alert(response.data[0].name);
});
Output:投入使用
我是不是忘記了什么?
我明白了:應該是:
$user_profile = $facebook->api('/1881235503185/photos', array('access_token' => 'cccc'));
使用新的 Facebook PHP SDK 它應該是:
$albumjson = $facebook->api('/1881235503185?fields=photos');
<?php
require_once 'library/facebook.php';
try{
$facebook = new Facebook(array(
'appId' => $app_id,
'secret' => $app_secret,
'cookie' => true
));
if(is_null($facebook->getUser()))
{
header("Location:{$facebook->getLoginUrl(array('req_perms' => 'user_status,publish_stream,user_photos'))}");
exit;
}
$me = $facebook->api('/me');
}catch(Exception $e){
echo $e->getMessage();
echo '<p>Please try clearing your browser cookies or <a href="http://demos.frnzzz.com/fbAlbum/photos.php">click here</a>.</p>';
die;
}
?>
<html>
<head>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.5/jquery.min.js"></script>
<script type="text/javascript" src="http://cloud.github.com/downloads/malsup/cycle/jquery.cycle.all.latest.js"></script>
<script type="text/javascript">
$(document).ready(function() {
$('.slideshow').cycle({
fx: 'fade'
});
});
</script>
<title>WebSPeaks.in | Access facebook Albums on your site using PHP</title>
</head>
<body>
<?php
$albums = $facebook->api('/me/albums');
$action = $_REQUEST['action'];
$album_id = '';
if(isset($action) && $action=='viewalbum'){
$album_id = $_REQUEST['album_id'];
$photos = $facebook->api("/{$album_id}/photos");
?>
<div class="slideshow">
<?php
foreach($photos['data'] as $photo)
{
echo "<img src='{$photo['source']}' />";
}
?>
</div>
<?php
}
$pageURL .= 'http://'.$_SERVER["SERVER_NAME"].$_SERVER["REQUEST_URI"];
echo '<div class="alb">';
if(strstr($pageURL,'.php?')){
$and = '&';
}else{
$and = '?';
}
echo '<p class="hd">My Albums</p>';
foreach($albums['data'] as $album)
{
if($album_id == $album['id']){
$name = '<b><u>'.$album['name'].'</u></b>';
}else{
$name = $album['name'];
}
echo '<p>'."<a href=".$pageURL.$and."action=viewalbum&album_id=".$album['id'].">".$name.'</a></p>';
}
echo '</div>';
?>
</body>
</html>
我覺得奇怪的是它適用於 JS 而不是 PHP ......讓我覺得這與你的 PHP FB 設置有關。你試過另一個電話來檢查它不是嗎? 如
$facebook->api('/me');
還要確保您已檢查這些:
要閱讀“照片”object,您需要
任何有效的 access_token(如果是公共的) user_photos 訪問用戶上傳的照片和相冊的權限 user_photo_video_tags 訪問已標記用戶的照片的權限 Friends_photos 訪問朋友照片的權限 Friends_photo_video_tags 訪問已標記用戶朋友的照片的權限
源:
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.