Vinzenz: MySQL Bildergalerie

Beitrag lesen

Hallo Jeena,

... vieles, wozu ich mir noch keine Gedanken gemacht habe:

Die Galery ist mein Problem. Wie stelle ich es an, dass man wenn man auf ein Thumbnail drückt und das Bild in der Galery erscheint ich das nächste und vorherige Bild herausfinden kann. Vor allem wenn sie dann noch am anfang oder ende einer Serie sind.

Ich mache mir schon den ganzen Tag einen Kopf wie und was ich in der DB speichern soll außer ID, Langbeschreibung, Kurzbeschreibung, (zugehörige) Serie um das nachher so realisieren zu können wie ich mir das vorstelle aber irgendwie ist das wohl noch zu kompliziert für mich.

Zwei weitere Spalten:
vorgaenger
nachfolger

d.h. mit einer doppelt verketteten Liste

Jedes Bild innerhalb einer Serie hat einen eindeutigen vorgaenger, als auch einen eindeutigen Nachfolger. Ist es das erste Bild der Serie, trägst Du bei vorgaenger NULL ein, ist es das letzte Bild, so steht in nachfolger NULL.

Natürlich musst Du das Problem lösen, an welcher Stelle innerhalb einer Serie ein Bild eingefügt wird. D.h. zuerst ist die Serie auszuwählen, anschließend die Position innerhalb der Serie, z.B.

  • am Anfang
  • nach Bild "so und so"

Anschliessend kannst Du so vorgehen:
Wenn Bild am Anfang
    Setze vorgaenger von erstem Bild auf neues Bild
    Setze nachfolger von neuem Bild auf erstes Bild
    Setze vorgaenger von neuem Bild auf NULL
Sonst
    Merke nachfolger von Bild "so und so" in merker
    Setze nachfolger von Bild "so und so" auf neues Bild
    Setze vorgaenger von neuem Bild auf Bild "so und so"
    Setze nachfolger von neuem Bild auf merker
    Wenn merker nicht NULL
        Setze vorgaenger von merker auf neues Bild
    Ende Wenn
Ende Wenn

Ich weiß nicht was ich da abfragen soll wenn mir der Benutzer sagt: "Das Bild will ich haben". Wie kriege ich raus welches vorher ist und welches nachher?

Über die Einträge in vorgaenger und nachfolger:
   vorher:  Gib mir das Bild mit der ID in vorgaenger
   nachher: Gib mir das Bild mit der ID in nachfolger

Freundliche Grüsse,

Vinzenz