Seite 1 von 1

Problem mit Kalender

Verfasst: 25.12.2007 18:07
von SKYSURFER2002
Hallo und frohe Weihnachten,

ich habe einen Kalender gefunden und wollte diesen für das phpBB Template-System kompatibel machen. Leider wird der Kalender dann aber nicht mehr richtig angezeigt. K.A. warum. Könnte sich das mal bitte jmd anschauen?

Ich habe es auch schon mit diesem Kalender probiert, aber leider ohne Erfolg.

Hier die Orginaldatei: Webmaster Resource
Meine Kalenderdatei:Kalender.txt
Mein Template:event_body.tpl

Ich versteh das einfach nicht, warum die Ausgabe falsch ist.
Hier die Ausgabe: kalender_ausgabe.txt


Für eure Hilfe sehr dankbar,

SKYSURFER

Verfasst: 26.12.2007 00:43
von gn#36
Warum die Mühe machen etwas zu schreiben was es schon gibt?

Es gibt den Topic Calendar Mod oder den Simple Calendar Mod für das phpbb2, beide fügen einen Kalender ein, wobei ersterer die Termine an Themen knüpft während der zweite die Termine nicht an Themen hängt.

http://www.phpbb.com/community/viewtopic.php?t=150857

Verfasst: 26.12.2007 11:17
von SKYSURFER2002
Das kann man jetzt sehen, wie man will. Aber ich schreibe mir soetwas lieber selbst, dann weis man auch wo man schaun muss, wenn etwas nicht funktioniert.
Desweiteren ist das nur ein kleiner Baustein für ein größeres Projekt. Und obendrein ist es die neugierde zu wissen, warum das nicht funktioniert hat.

Der simple Calender gibt es nur noch für das phpBB 3.0. Ich verwende aber immernoch das 2.0.xx. Und zuviele Funktionen hat er auch noch.

Also wenn doch bitte jmd sich mal das kurz anschauen könnte, dem wäre ich sehr mit Dank verbunden.


SKYSURFER

Verfasst: 26.12.2007 13:39
von gn#36
Die Einstellung kann ich verstehen, ich schreibe eigentlich auch meist ganz gerne was selbst als es einfach ungeprüft von anderen zu übernehmen, allerdings ist so ein Kalender (das weiß ich aus eigener Erfahrung, ich schreibe gerade einen für phpbb3) ziemlich viel Arbeit.

Dein Template ist nicht so ganz richtig aufgebaut. Ich habe mir deinen PHP Code nicht genau angesehen, allerdings kann die Ausgabe des Templates so nicht funktionieren, ich denke du hast nicht ganz verstanden wie die Blöcke funktionieren.

Ich beziehe mich dabei auf die folgende Stelle:

Code: Alles auswählen

<!-- BEGIN TR_EIN -->
<tr>
<!-- END TR_EIN -->
<!-- BEGIN TD_EIN -->
<td align="right">{KAL.TD_EIN.day}</td>
<!-- END TD_EIN -->
<!-- BEGIN TR_AUS -->
</tr>
<!-- END TR_AUS -->
Was du damit bewirken willst ist denke ich folgendes: Du möchtest eine Zeile mit einer variablen Anzahl an Zellen ausgeben oder generell eine Zeile von Datumseinträgen.
Allerdings hast du hier 3 unterschiedliche Blöcke verwendet, die der Reihe nach bei der Ausgabe durchlaufen werden, es wird also - bei beispielsweise vier Zeilen aus der ersten Schleife

Code: Alles auswählen

<tr><tr><tr><tr>
ausgegeben, dann aus der zweiten

Code: Alles auswählen

<td align="right">{KAL.TD_EIN.day}</td><td align="right">{KAL.TD_EIN.day}</td>... 
(so häufig eben wie sie im PHP Teil definiert wurde) und schließlich aus der dritten dann

Code: Alles auswählen

</tr></tr></tr></tr>
.
Was du aber eigentlich wolltest war ja sowas:

Code: Alles auswählen

<tr>
<td align="right">{KAL.TD_EIN.day}</td>
<td align="right">{KAL.TD_EIN.day}</td>
</tr>
Das erfordert zwingend eine Verschachtelung von Schleifen, also etwa so:

Code: Alles auswählen

<!-- BEGIN TR -->
<tr>
<!-- BEGIN TD -->
<td align="right">{KAL.TR.TD.day}</td>
<!-- END TD -->
</tr>
<!-- END TR -->
Den PHP Code musst du natürlich für die Verschachtelung ebenfalls anpassen. Die übliche Konvention verwendet für Schleifennamen übrigens Kleinbuchstaben und für die Variablen dann Großbuchstaben, du machst es genau andersherum (das hat natürlich keinen Einfluss auf die Funktionalität, kann aber für andere im ersten Moment ungewohnt sein).

Verfasst: 28.12.2007 13:14
von SKYSURFER2002
ja, du hattest recht.

so geht es:

Code: Alles auswählen

<!-- BEGIN TR -->
<tr>
<!-- BEGIN TD -->
<td align="right">{KAL.TR.TD.day}</td>
<!-- END TD -->
</tr>
<!-- END TR -->
Vielen Dank


SKYSURFER