您好,我正在尝试在我的应用程序中显示用户的照片,但我不希望它们都出现在同一个页面上,因为它们可能会很多,这会导致延迟。我没有找到任何好的例子来帮助我管理它。这是我的代码:它目前只显示前25张照片,上一张和下一张按钮都被破坏了
if ($user) {
try
{
$curPage = $_REQUEST["page"];
$curOffset = $curPage * 25;
$nextPage = $curPage + 1;
if ($curPage > 0) {
$prevPage = $curPage - 1;
} else {
$prevPage = 0;
}
$photos = $facebook->api('/me/photos/photos&offset='.$curOffset.'&limit=25');
echo '<table><tr>';
foreach($photos['data'] as $photo)
{
if($a <= 4){ //number of cells in row print ('<a href="editor.php?photo_id='.$photo['id'].'"><img src='{$photo['picture']}'.'</a>'/>');
echo '<td>';
//echo "<img src='{$photo['picture']}' />";
print ('<a href="editor.php?photo_id='.$photo['id'].'"><img src='.$photo['picture'].' /></a>');
echo '</td>';
$a++;
}
else {
echo '</tr><tr>';
echo '<td>';
print ('<a href="editor.php?photo_id='.$photo['id'].'"><img src='.$photo['picture'].' /></a>');
//echo "<img src='{$photo['picture']}' />";
echo '</td>';
$a = 1;
}
}
echo '</tr></table>';
$canvas_base_url = "http://apps.facebook.com/piggypic/";
echo '<center><a href="'.$canvas_base_url.'taggedphotos.php?page='.$prevPage.'"><-- prev page</a>';
echo '<a href="'.$canvas_base_url.'taggedphotos?page='.$nextPage.'">next page --></a></center>';任何帮助都将不胜感激。伙计们,我已经研究了好几天了。
发布于 2012-01-29 04:12:38
您应该对Graph API Explorer做一些实验,当您为您对graph.facebook.com的调用提供limit和offset参数时(如上所述),您应该在响应分页链接中获得指向下一批和前一批项目的链接-查看Graph API Explorer查询此端点的结果片段:
https://graph.facebook.com/me/photos?limit=10&offset=15
...
"paging": {
"previous": "https://graph.facebook.com/me/photos?limit=1&format=json&since=1306425592&__previous=1",
"next": "https://graph.facebook.com/me/photos?limit=1&format=json&until=1306425591"
}
}正如您所看到的,这些链接已经存在于上一个调用的响应中。试一试--这是一个很棒的工具。
https://stackoverflow.com/questions/9048075
复制相似问题