我正在尝试为我的画廊创建一个自己的日历,但我无法让它像我想要的那样工作。我添加了一个 SQL 查询,以便我可以获取我的照片拍摄时间并确定要链接的日期。为每张照片链接正确的日期在这里没有任何问题。这就是它如何循环每个月的日子。
这是我现在正在使用的代码:
echo '<table width="100%" cellpadding="0" cellspacing="0">';
$months = Array(1 => 'Januari',
2 => 'Februari',
3 => 'Mars',
4 => 'April',
5 => 'Maj',
6 => 'Juni',
7 => 'Juli',
8 => 'Augusti',
9 => 'September',
10 => 'Oktober',
11 => 'November',
12 => 'December');
foreach($months AS $month_n => $month) {
# DATABAS: photos (hämta)
$get_photosdate = "SELECT photo_exif_taken FROM photos";
echo '<tr>';
echo '<td align="right" class="calendar-month" width="50">';
echo '<a href="'.url('sortby/date/2012/'.($month_n < 10 ? '0'.$month_n : $month_n)).'" title="Sortera fotografierna efter den här månaden">';
echo '<b>'.$month.'</b>';
echo '</a>';
echo '</td>';
echo '<td align="left" class="calendar-day">';
foreach($sql->query($get_photosdate) AS $date) {
for($i = 1; $i < 32; $i++) {
if(date('Y-m-d', strtotime($date['photo_exif_taken'])) == '2012-'.$month_n.'-'.$i) {
echo '<a href="'.url('sortby/date/2012/'.($month_n < 10 ? '0'.$month_n : $month_n).'/'.($i < 10 ? '0'.$i : $i)).'" class="calendar-link" title="Sortera fotografierna efter den här dagen">';
echo $i < 10 ? '<span style="color: #a16e74;">0</span>'.$i : $i;
echo '</a>';
} else {
echo '<span style="padding: 2px 3px;">';
echo $i < 10 ? '<span style="color: #a2a1a1;">0</span>'.$i : $i;
echo '</span>';
}
if($i == 11 OR $i == 22) {
echo '<br>';
}
}
}
echo '</td>';
echo '</tr>';
}
echo '</table>';
它应该像这样打印日期:01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16
等等。但它会打印01 02 03 04 05 06 ... 25 26 27 28 29 30 31 01 02 03 04 05 06
50 次左右,直到它改变月份。
怎么了?
提前致谢。