news, hacks, programme, logs,
tipps und tricks rund um das internet

Artikel / Tipps und Tricks Forum 
Kurs Kalender

Ein Kalender in php geschrieben der das ganze Jahr auf einen Blick anzeigen kann. Gut geeignet als Kurskalender oder Ferienkalender. Die Neuerungen sind Authentifikation, Edit umgeschrieben und dhtml hinzugefügt.

Autor: tom / jan - Date: 05.13.2002 last modified: 09.08.2003 - Size: 9289 chars - Hits / Day: 0.00 - Total Hits: 40903
 Download  kalender_09.zip   Size: 10 kb Datum: 08.09.2003
 Download  kalender-1.0b.zip   Size: 13 kb Datum: 08.09.2003
 Download  kalender-1.0.3.zip   Size: 13 kb Datum: 11.10.2003
 Download  kalender-1.0.4.zip   Size: 14 kb Datum: 15.10.2003
 Download  kalender-1.0.5.zip   Size: 14 kb Datum: 16.10.2003
 Download  kalender-1.0.6.zip   Size: 14 kb Datum: 23.10.2003
 Download  kalender-1.0.7.zip   Size: 15 kb Datum: 01.11.2003
 Download  kalender-1.0.8b.zip   Size: 16 kb Datum: 25.01.2004
 Download  kalender-1.0.9.zip   Size: 16 kb Datum: 08.02.2004
Einen Beispielkalender findet man unter http://www.nope.tv/cal/

Kurze Installationsanleitung:image46.png
Beispielbild
  1. Downloaden
  2. Entzippen
  3. MySQL - Datenbank "kalender" erstellen
  4. Queries im "kalender.sql" ausführen
  5. kurskalender.php anpassen
  6. -- fertig!

image24.png
Edit Frontend
Changelog:
Version 1.0.9 ist nun WAMP fähig! (Windows, Apache, MySQL, PHP). Da der Kurskalender auf LAMP (Linux, Apache, MySQL, PHP) programmiert und getestet wurde, blieben einige Fehler unentdeckt. Martin hat uns darauf aufmerksam gemacht! Diese Version behebt nun diese Fehler.

Quick Fix 1.0.8b: Oli hat uns auf weitere Fehler hingewiesen: Diese wurden nun in 1.0.8b gefixt.
Quick Fix 1.0.8a: Ein Benutzer hat uns auf einen Fehler im kalender.sql File aufmerksam gemacht. Dieser wurde im Quick Fix 1.0.8a behoben.

Bei der Version 1.0.8 sind Bugfixes und neue Features hinzugekommen. Der Bugfix betrifft nur die Tabellenform, da ein DISTINCT zusammen mit dem Datenfeld Text Probleme bereitete. Das Datenfeld ist nun ein varchar(255). Mit anderen Worten, die Beschreibung kann höchstens 255 Zeichen betragen. Der Fehler liegt vermutlich in der MySQL DB.

Manfred hat uns darauf hingewiesen, dass in der Datei kurskalender.php der Eintrag für redbar2.gif fehlt.



image55.png
Kategorien editieren


Die neuen Features sind: 
  • Vor- und Zurück springen über mehrere Kalender
  • Verbessere Darstellung im Edit Frontend

Version 1.0.7 mit neuen Bugfixes und neuen Features. Die wichtigeste Änderung ist, dass das "bis Datum nicht mehr ein "bis und mit", sondern nur noch ein "bis ohne" ist. Dies hat auch zur Folge dass ein einzelner Tag nun eine Start- und ein Enddatum habe muss -> Ein Termin am 2003-11-02 wird zum Termin: von 2003-11-02 bis 2003-11-03.

Bugfixes:

  • dday verbessert -> Stimmt nun pixelgenau.
  • "One day entries" gibt es nicht mehr -> jeder Eintrag muss ein Start- und ein Enddatum haben -> wird über die edit.php seite gemanaged.
  • Datum ist nicht mehr "bis und mit", sondern nur noch "bis ohne".
  • Beiträge unterscheiden sich nun mittels Datum und Beschreibung.
  • Der Kurskalender funktioniert nun auch wenn "register globals" auf "off" gesetzt ist.

Erweiterungen:
  • Montasunterteilung (Damit wurde auch die Pixelfehler entdeckt).
  • Abwechselnde Farben für Kurse.


Version 1.0.6 bringt weitere Bugfixes
  • Beschreibung nun für jedes einzelne Datum möglich
  • Beschreibung im Edit Frontend ersichtlich
  • Edit Skript angepasst
  • Filenames angepasst

Version 1.0.5 bringt weitere Bugfixes und zusätzlich Features
  • dday() weiter verbessert
  • Beschreibung zu den einzelnen Daten hinzugefügt
  • Verbessertes DHTML
  • Edit Skript angepasst
  • kurskalender.sql angepasst
  • update-1.0.4_to-1.0.5.sql hinzugefügt

Für alle, die Version 1.0.4 haben und upgraden wollen gibt es im File update-1.0.4_to-1.0.5.sql die SQL Anweisungen. Ich weiss es ist ein bisschen mühsam aber es ist bloss ein "alter table...".

Version 1.0.4 bringt einige Bugfixes:

  • dday(), das Berechnen des Abstandes zwischen 2 Daten funktioniert nun endlich richtig.
  • tp.gif geändert, da nicht auf den Pixel genau auf das Datum gezeigt wird.
  • "Die Maximale Dauer ist mit 3 Monaten begrenzt, kann aber ohne weiteres erhöht werden" (Version 1.0.3) kann nun tatsächlich ohne weiteres erhöht werden ;) -> Kann im Config File kurskalender.php geändert werden.
  • ein einzelnes Datum wird nun richtig angezeigt.
  • Pixelverschiebungsproblem behoben


Die neuste Version 1.0.3 ist da! Man hat nun auch die Möglichkeit mittels des Startdatums und des Enddatums eine längere Zeitspanne anzugeben. Die Maximale Dauer ist mit 3 Monaten begrenzt, kann aber ohne weiteres erhöht werden. Das Problem dabei ist wenn man sich vertippt (2030 anstatt 2003) dann sieht man "alt" aus und kann ziemlich viele Einträge löschen. Das ist also eine Art Vorsichtsmassnahme. Des weiteren sind nun die Daten im Edit Frontend sortiert.




image46.png
Kurskalender in Aktion
image23.png
OnMouseOver Labeling
Die neuste Version bietet eine noch bessere Darstellung. So werden zum Beispiel die Daten in einem dhtml Fenster angezeigt. Es wurden Verbesserungen im Edit Frontend gemacht (ich habe das ganze Frontend mehr oder weniger umgeschrieben). Einige Bugs sind nun eliminiert und die Performance konnte gesteigert werden. Hinzugekommen ist beim Edit Frontend eine Authentifizerung.

Es kamen ein neues php und eine Javascript file dazu. Jedoch wurde immer noch auf höchste Übersichtlichkeit Wert gelegt.

Die Installation ist leider immer noch von Hand, aber die Installation sollte nicht allzu schwierig sein. Am besten geht man folgendermassen vor:

MySQL-Datenbank „kalender“ neu anlegen. Hier gibt es viele Möglichkeiten. Ich benutze PHPMyAdmin.
kalender.sql SQL Befehle ausführen.
kurskalender.php anpassen. In diesem File gibt es Passwörter die angepasst werden müssen
und schon kann man mit edit.php die Daten administrieren.


********************************************************************************

<!i0left>Ein weiteres Stück nope Geschichte: Der Kurs Kalender.
Ein dynamischer Kalender für php und MySQL.

Der ganze Kalender besteht nun aus 3 php files und 7 Bildern. Dazu gekommen ist ein Edit Frontend, und 2 weitere Pfeile (Bilder), die anzeigen ob man in einer Kalender Periode ist oder nicht.
</update>

<!--Live in Action auf <a href=http://www.nope.ch/cal>www.nope.ch/cal</a> zu sehen.-->

Programmiert wurde dieses Projekt für eine interne Bank-Seite. Die Sprache ist <a href=http://www.php.net>php</a> (Version 3!) und die Datenbankanbindung ist <a href=http://www.mysql.org>MySQL</a>.<!i1right>

Der ganze Kalender besteht aus 2 php Files und 5 Bildern. Durch Daten aus der Datenbank wir der Kalender dynamisch generiert, sodass man immer auf den ersten Blick sehen kann, welchen Termin man gerade (verpasst ;) hat.

Diese Projekt hat uns besonders Spass gemacht, da es eine kleine Herausforderung war. Wir hatten folgende Aufgabe zu bewältigen: "Wie bringen wir möglichst viele Daten, möglichst übersichtlich auf den Bildschirm, und verwenden einen möglichst effizienten, kleinen und sauberen php-Code".

Die Datenbanktabellen wurde uns vorgegeben. Sie sind meiner Ansicht nach zu redundant. Aber leider konnten wir uns nicht durchsetzten, und mussten nach den Vorgaben arbeiten.
Bemerkungen, Kommentare und Feedback
Beiträge: 2 
  31.01.2006 21:14
Beiträge: 6 
  15.06.2005 11:12
Beiträge: 2 
  09.12.2004 19:59
Beiträge: 2 
  11.08.2004 14:21
Beiträge: 6 
  09.07.2004 21:59
Beiträge: 2 
  24.02.2004 21:51

Du kannst auch selber einen Thread starten, indem du hier klickst.
 Home
Artikel / Tipps und Tricks
Artikel Navigation
Internes
0 Artikel
    Links and Friends
    5 Links
    Artikel erscheinen ungefähr jeden Monat in unregelmässigen Abständen.

    RSS-feed: rss.xml
    Nope bietet keinerlei Garantie für die auf dieser Seite enthaltenen Tipps, Artikel und Programme. Für Schaden, der aus der Anwendung der hier enthaltenen Daten entsteht, übernehmen wir keine Haftung. Die Nope Homepage enthält Links zu anderen Seiten auf deren Inhalte wir keinen Einfluss haben. Wir übernehmen keine Verantwortung für fremde Inhalte und distanzieren uns ausdrücklich davon.© nope.tv. Die Artikel auf dieser Seite, soweit nicht anders im Artikel erwähnt, stehen unter CreativeCommons License. Die Programme auf dieser Seite, soweit nicht anders im Artikel oder Programm erwähnt, stehen unter der GNU Public License (GPL).