Om een week archief te maken, laat ik de linkjes op de volgende manier genereren:
Als e rnu op een link geklikt wordt, moet met mysql de gegevens eruit worden gehaald.. dit doe ik alsvolgt:
Het probleem is nu dat ik in het weken lijstje geen week mis, maar als ik de query uitvoer, dan wel.
Het probleem zit hem erin dat week 0 in het lijstje niet bestaat, maar dat week 0 in de query eigenlijk week 1 is.... hoe kan ik dit oplossen?
Het archief lijstje ziet er alsvolgt uit:
Week 2 2007 -
Week 1 2007 - toont door de query verkeerde resultaten van een week later
Week 52 2006 -
etc...
PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
| $end = time(); $begin = strtotime(substr($htoegevoegd,0,10)); $weeks = ""; $now = $begin; while (strftime("%Y%W",$now) <= strftime("%Y%W",$end)) { $weeks = "<li><a href=\"/archief/".strftime("%YW%W",$now)."/\">".strftime("Week %W %Y",$now)."</a></li>".$weeks; $now = strtotime("+1 week",$now); } $menu .= " <h3>Week archief</h3> <ul> $weeks </ul> "; |
Als e rnu op een link geklikt wordt, moet met mysql de gegevens eruit worden gehaald.. dit doe ik alsvolgt:
PHP:
1
2
3
4
5
6
7
| $datearchief = "2007W01"; if (ereg("([0-9]{4})W([0-9]{2})",$datearchief,$regs)) { $wjaar = $regs[1]; $wweek = $regs[2]; $titledatum = "week $wweek $wjaar"; $queryl = "SELECT * FROM log WHERE WEEK(toegevoegd)='$wweek' AND YEAR(toegevoegd)='$wjaar' ORDER BY toegevoegd DESC"; } |
Het probleem is nu dat ik in het weken lijstje geen week mis, maar als ik de query uitvoer, dan wel.
Het probleem zit hem erin dat week 0 in het lijstje niet bestaat, maar dat week 0 in de query eigenlijk week 1 is.... hoe kan ik dit oplossen?
Het archief lijstje ziet er alsvolgt uit:
Week 2 2007 -
Week 1 2007 - toont door de query verkeerde resultaten van een week later
Week 52 2006 -
etc...