[MySQL] ZUERST sortieren DANN gruppieren

Also:

Die Fotos sind nicht einzeln gespeichert. Vielmehr nutze ich die Tatsache aus, dass die Fotos durchlaufen nummeriert sind: 1.jpg, 2.jpg, usw.

Die Tabelle 'fotos' enthält bei mir also nur die Spalten:
ID pk auto_increment
titel (z.B. urlaub 2005)
datum (timestamp)
ordner (img/urlaub05)
anzahl (wie viele bilder es sind z.b. 100)

Die Galerie selbst bau ich mit Hilfe einer for-Schleife auf: for($i = 1;$i <= $anzahl;$i++)

Die cid in der Tabelle foto_comments bezieht sich dabei auf die ID der Tabelle 'fotos' (geschickterweise sollte die Tabelle 'fotos' vielleicht besser 'fotosets' und die 'cid' besser 'setid' heißen - wie gesagt: die beiden Tabellen sind Bestandtteil meines ersten PHP/MySQL-Projektes, insofern sind da einige Dinge verbesserungswürdig)

Somit kann ich einen Kommentar nur mit einer Kombination aus cid (id des Fotosets) und fid (Nummer des Fotos -> auch hier gilt: ungeschickter Name, denn es handelt sich hierbei nicht um eine ID, sondern vielmehr um den Dateinamen) eindeutig einem Foto zuordnen..

Hätte ich für jedes Foto einen Verweis in der Datenbank abgelegt, könnte ich selbstverständlich auf das Feld cid verzichten.

Kurz zusammengefasst:
Ja, die Datenbankstruktur und auch die Namensgebung sind in manchen Punkten etwas unsauber und auch irreführend. Dennoch bin ich mir relativ sicher, dass in funktionaler Hinsicht alles einigermaßen einwandfrei abläuft.


In diesem Sinne nochmals vielen Dank für die Hilfe.


PS
Wie man Datenbanken korrekt modelliert (ERM,SOM,...) habe ich übrigens erst nach diesem Projekt gelernt. ;)
 

Neue Beiträge

Zurück