phpbar.de logo

Mailinglisten-Archive

[php] Kreuztabelle aus 2 DB-Tables

[php] Kreuztabelle aus 2 DB-Tables

Christian Vosen vosen at ecco-marketing.de
Die Mar 2 10:09:27 CET 2004


Hallo Lutz,

> Zunaechst einmal scheint es mir fast, dass Du einen kleinen Design-Fehler in der
> Datenbank hast. Wenn ich das richtig sehe, muss Du einen Termin mehreren
> Kategorien zuordnen koennen und eine Kategorie mehreren Terminen. D.h. es waere
> ideal, um keine Daten mehrfach ablegen zu muessen, wenn Du fuer diese
> m:n-Beziehungen eine Verknuepfungstabelle einfuehren wuerdest. Du haettest dann
> folgende Tabellen:
> 
>   - termine:		terminID, startDatum, endDatum, beschreibung
>   - kategorien:		kategorieID, beschreibung
>   - verknuepfungen:	VerknuepfungID, terminID, kategorieID

das klingt plausibel und könnte das Ganze doch vereinfachen...

> Du durchlaeufst ganz normal das Ergebnis aus 1. Das sind im Beispiel hier ja
> fuenf Zeilen. Nach Deiner HTML-Tabellenlogik bilden die ersten drei Termine die
> Zeile 1 der HTML-Ausgabetabelle und die letzten beiden Termine die Zeile 2.
> 
> Wann Du eine neue Terminzeile in der HTML-Ausgabetabelle anfaengst, kannst Du
> ueber die terminID steuern. Wenn die terminID gegenueber der vorigen wechselt,
> dann beginnt ein neuer Termin und damit eine neue Terminzeile in der
> HTML-Ausgabetabelle.
> 
> Wenn Du eine neue Ausgabezeile beginnst, dann baust Du nach der Terminspalte die
> folgenden Kategoriespalten ueber die gezogenen Kategorien aus 2. auf. Die
> durchlaeust Du von vorne nach hinten. Parallel durchlaeufst Du die Termine und
> pruefst, ob der Termin der aktuellen Kategorie zugeordnet ist. Wenn es zu der
> Kategorie eine Terminzuordnung gibt, dann fuellst Du die Kategoriezelle in der
> HTML-Tabellenzeile entsprechend. Sonst bleibt sie leer.

Ich denke, damit komme ich erst einmal weiter. Kann mich aber erst heute 
abend dran setzen, um es auszuprobieren. Ist aber schon ganz gut, dass 
du "nur" die verbale Anleitung gibst, sonst lerne ich das ja nie...

Erst einmal ein riesiges Dankeschön für die ausführliche Antwort, ich 
gebe dir dann per PN Feedback, obs funktioniert hat!

Viele Grüße
Christian


php::bar PHP Wiki   -   Listenarchive