06. marts 2007 - 11:15Der er
6 kommentarer og 1 løsning
Generer kalender som tabel eller div?
Kære eksperter Jeg er ved at udvikle et vagtskema i PHP. Jeg har en MySQL, som indeholder en kolonne med dato og en kolonne med userID.
Hvordan kan jeg lettest få genereret en kalender som lister alle disse userID op?
Jeg har lavet en tabel hvor alle datoer står skrevet som tekst og jeg tænkte på at lave noget preg_replace, men det virker "klodset". Der må være en mere intelligent måde at lave det på.
Hvordan har du lavet din tabel med datoer? Jeg har tidligere lavet noget, hvor jeg træk alle datoer ud af mysql fra en given måned, og efterfølgende kontrollere jeg så hver dato mod den dato jeg har i dag, matcher den, så udskriver jeg userid. Dog skal du lave noget kode, som tager højde for flere brugere kunne måske have samme dag.
if (!is_numeric($_GET['year'])) $_GET['year'] = date("Y"); if (!is_numeric($_GET['month'])) $_GET['month'] = date("n"); $_GET['day'] = 1;
$kampeEventQ = mysql_query(" SELECT id, hold, unix_timestamp(date_format(datotid, '%Y-%m-%d')) AS unix, unix_timestamp(datotid) AS unixTid FROM kampe WHERE YEAR(datotid)=".$_GET['year']." AND MONTH(datotid)=".$_GET['month']." ORDER BY datotid, hold ");
$kalenderEventQ = mysql_query(" SELECT kalender.id AS kId, kalender.overskrift AS kOverskrift, unix_timestamp(date_format(datotid, '%Y-%m-%d')) AS unix, brugere.nick AS bNick FROM kalender, brugere WHERE YEAR(datotid)=".$_GET['year']." AND MONTH(datotid)=".$_GET['month']." AND brugere.id = kalender.b_id ORDER BY kalender.datotid, kalender.overskrift ");
$birthdayQ = mysql_query(" SELECT nick, id, unix_timestamp(date_format(birthday, '%Y-%m-%d')) AS unix FROM brugere WHERE MONTH(birthday)=".$_GET['month']." ORDER BY DAYOFMONTH(birthday) ");
Hey. Endte med jeg skrev et script der generede MySQL-databasen, hvor jeg generede en måned af gangen først med alle datoer og derefter kørte jeg et script der tog datoen og på baggrund af ugedagen indsatte et userid i en seperat kolonne.
Mit problem er således løst.
Vil du dele points, så smid et svar inden for 2 dage.
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.