Kalender objekter i PHP findes i et utal af versioner derude. Jeg har 2 versioner jeg typisk benytter mig af; det ene til indtastninger, dvs. forme hvor datoen kan overføres til input feltet ved valg. Kalenderen er lavet af firmaet Soft Complex - og hedder Tigra Calender. Den version jeg benytter er 3.2, besøg Soft Complex for seneste version. Den anden version er bl.a. den visnings version du ser på Oracle Konsulent og den omtaler jeg næste gang idet, den er lidt større og inkluderer ligeledes et sæt libraries til dato og tids håndtering.

Start med at downloade nedenstående ZIP fil, udpak den til et katalog, under hvor du har dine php filer. Jeg som altid et katalog jeg kalder lib, for library PHP filer og et /js til java script filer.

 Hent kalender pakken her

ZIP filen indeholder calender1.js, calender2.js, calender.html samt et /img katalog.

Der er 2 ting du skal gøre for at kunne benytte ovenstående i f.eks en indtastningsform.

  1. Gem henholdsvis calender.html samt /img kataloget, i samme katalog som hvor du placere din indtastningsform, f.eks nypost.php.
  2. Sørg for at inkludere .js filen i din PHP fil
  3. <script language="JavaScript" src="../js/calendar1.js"></script><!-- Date only with year scrolling -->
  4. Kalenderen kaldes fra din indtastningsform som;
  5. <td id="t_pub">&nbsp;Publiseres:</td>
    <td><input type="text" name="pub" size="11" class="ctrl" value="">&nbsp;&nbsp;
          <a href="javascript:cal1.popup();"><img src="img/cal.gif" width="16" height="16" border="0" alt="Click Here to Pick up the date"></a></td>
  6. Kalender objektet initialiseres som;
  7. var cal1 = new calendar1(document.forms['msgform'].elements['pub']);
    cal1.year_scroll = true;
    cal1.time_comp = false;

Og det er det hele der skal til. Du har nu en indtastningsform, hvor hvis brugeren trykker på kalenderen, popper en fuld kalender op og viser aktuelle måned, med mulighed for at bladre månedsvist frem- og tilbage samt gøre det sammen på årsbasis. Når der vælges en dato, overføres denne til indtastningsformes input felt, i et format der kan indsættes umidelbart i MySQL.

Pkt. 7, og sidste nævnte element; cal1.time_comp = false; gør det muligt at få tiden med på datoer, f.eks hvis der skal laves en start dag/tidspunkt og slut dag/tidspunkt, f.eks til en konsulent timeregistrerings applikation.

Calender.html, er HTML koden til dannelse af kalenderen, og kan sagtens modificeres således den passer ind i dit eget look and feel.