phpbar.de logo

Mailinglisten-Archive

[php] AW: [php] MySQL-based Kalender

[php] AW: [php] MySQL-based Kalender

Michael Krax (DE) michael.krax_(at)_gamesonline.de
Fri, 7 Jul 2000 16:44:21 +0200


Hallo,

du solltest nochmal über die Struktur nachdenken:

> Die daten kommen aus zwei tabellen, eine für die öffentlichen termine
>und für jeden user eine eigene termintabelle. in den tabellen ist ein
spalte
>für die id, eine für den author (der den termin eingetragen hat), eine für
>den Termintext, eine für bemerkungen und eine für den Termin, in der der
>Termin als timestamp abgelegt wird. Soweit ist das ja alles ganz einfach,
>aber das Problem kommt jetzt.

Entweder Du legst den Kram zusammen in eine Tabelle und identifizierts über
eine ID für den Termin Typ (ist die zu empfehlende Methode - siehe unten)
oder Du joinst die Table:

99 ist eine fiktive user_id 

select   *                //besser feldnamen verwenden
from     oeffentliche_termine o, user_termine u
where    u.user_id = 99
order_by timestamp

Ich hoffe mit "für jeden User eine eigene Termintabelle" meinst du nicht
wirklich eine _echte_ Tabelle sondern nur den "view" über seine ID.

Zu empfehlen wäre eine Tabelle termine mit folgender Struktur:

termin_id			// numerisch, auto_increment
termin_typ			// numerisch 1 privat, 2 öffentlich
termin_text			
termin_bemerkung
termin_author
termin_datum

Alle Termine eines Users mit id 99

select   *               
from     termine
where    termin_author = 99
and      termin_typ = 1
order_by timestamp

Alle öffentlichen Termine

select   *               
from     termine
where    termin_typ = 2
order_by timestamp

Beides in einem

select   *               
from     termine
where    (termin_author = 99
and 	   termin_typ = 1)
or	   termin_typ = 2
order_by timestamp



php::bar PHP Wiki   -   Listenarchive