Repox var hurtigst til at finde grunden til at brugernavnet blev repetered for resten af maaneden: $user faar i den gamle kode en vaerdi som den beholder for resten af maaneden med mendre der er en anden user der gaar paa ferie senere i maaneden. Ved at aendre raekkefoelgen har han loest det.
Jeg er i gang med at laere mig selv php/mysql/css m.m. og jeg har funded det en saerdeles nyttig oevelse at proeve finde svarene til de spoergsmaal der kommer her paa eksperten, normalt ved hjaelp af meget Google og proeven sig frem. Jeg observerer at diablo i sit oprindelige spoergsmaal ville se startdag og enddag for ferie for de forskellige users. Jeg har derfor arbejdet videre, genbrugt repox's kode, tilfoejet en query for enddate, og tilfoejet "start" og "end". Det bliver til nedenstaaende kode.
Jeg lavede en lille hjemmeside til at teste det med,
http://christianjorgensen.be/diablo925.php, som du er velkommen til at besoege (og som beviser at repox's kode virker,) og en lille tabel med det foelgende indhold:
id user text enddate startdate
1 user1 text1 2009-11-10 2009-11-01
2 user2 text2 2009-11-20 2009-11-01
3 user3 text3 2009-11-11 2009-11-10
4 user4 text4 2009-11-30 2009-11-12
5 user5 text5 2009-11-30 2009-11-05
6 user6 text6 2009-11-29 2009-11-06
Jeg har saaledes soerget for at paa adskillige dage er der mere end en bruger.
Her er saa koden:
while ( $day_num <= $days_in_month )
{
echo"<td valign=top><a href=\"index.php?page=new&&funk=add&&dnew=$day_num&&mnew=$month&&ynew=$year\">$day_num</a><br />";
$query = mysql_query("SELECT user FROM calendar WHERE startdate = '$year-$month-$day_num'") or die(mysql_error());
while($row = mysql_fetch_assoc($query)) echo $row["user"]." start<br />";
$query = mysql_query("SELECT user FROM calendar WHERE enddate = '$year-$month-$day_num'") or die(mysql_error());
while($row = mysql_fetch_assoc($query)) echo $row["user"]." end<br />";
while($row = mysql_fetch_array($query)) echo $row["user"] . " end<br/>";
echo "</td>";
$day_num++;
$day_count++;
//Make sure we start a new row every week
if ($day_count > 7)
{
echo "</tr> <tr>";
$day_count = 1;
}
}