我正在查询数据库并显示数据。我有一个时间戳和一个 Facebook ID,用于显示用户的个人资料图片(使用 Facebook 图表)。不过,这更像是一个 PHP/Loop 问题,而不是 FB Graph 问题。这是我正在处理的代码:
$sql = "SELECT * FROM fb_id ORDER BY timestamp DESC";
$result = $mysqli->query($sql);
echo "<h1>".$lastone_month." ".$year_lastone."</h1>";
while($row = mysqli_fetch_array($result)){
$fb_id = $row['fb_id'];
$timestamp = date_parse($row['timestamp']);
$month = $timestamp['month'];
$year = $timestamp['year'];
echo "<a href='http://www.facebook.com/".$fb_id."' target='_blank'><img src='http://graph.facebook.com/".$fb_id."/picture/' /></a>";
}
基本上发生的事情是我在呼应最近一个月(这是在此之前的一些代码中)。$lastone_month 是一个数字(它是最近注册用户的月份数)。假设现在是 1 月,因此 h1 将显示 1/2013。然后,我让 while 循环遍历数据库并按时间戳顺序回显用户的个人资料图片。我想做的是运行 while 循环,直到它到达 $month 不等于 $lastone_month 的行。
我不能在 while 循环中使用 "&& $month==$lastone_month 因为此时尚未声明 $month 值。我在 echo 行周围尝试了一个 if 语句,但这导致它无限显示一个条目。我试图在while循环之前声明行,然后也在那里声明$month和$year,然后运行循环,但这也不起作用。我认为这是一个非常简单的解决方案,但我不知道它是什么任何帮助将不胜感激。非常感谢!