Einfache Bildergalerie mit vor-zurück-Blättern

bisselbock

Grünschnabel
Hallo zusammen,

ich vermute, ich muss meine Bildergalerie von Grund auf neu anlegen, denn ich möchte erreichen, dass ich vom aktuell groß angezeigten Bild gleich mit einem vor- bzw. zurück-Button in das nächste bzw. vorherige Bild springen kann.

Moment sieht es so aus, dass das große Bild oben angezeigt wird und darunter halt die ganze Galerie als Thumbnails. Schaut selber: *klick*

Das finde ich ziemlich unschön gelöst. Leider bin ich jetzt auch nicht der PHP-Freak, sondern eher der unbeholfene Bastler, der bisher aber noch alles hinbekommen hat, was er wollte, wenn auch codemäßig meist recht unschön.

Also, die Bilder-URLs liegen in einer Datenbank. Stellen wir uns mal einen Satz von 30 Bildern vor. Nun muss ich ja beim 1. und beim 30. Bild aufpassen. Beim 1. Bild darf nur ein vor-Button und beim 30. Bild nur ein zurück-Button auftauchen. Das ist für mich die erste Schwierigkeit. Die 2. Schwierigkeit: Wie sieht der vor-/zurück-Link aus? Gehe ich auf das 1. Bild z.B. mit SELECT ... LIMIT 0,1?

Vielleicht muss ich das Problem noch genauer beschreiben, aber vielleicht kann mir jetzt ja schon jemand erklären, wie ich diese simpelste aller Galerie-Funktionen hinbekomme...
 
Hallo bisselbock,

Ich hatte vor kurzem genau das gleiche Problem. Ich hab es einfach so gelöst, das ich alle Bilder(id aus der DB) der Gallerie in einen Array gelesen haben. Mit prev() und next() kannst du dann schon sehr gut arbeiten.

Zu dem zweiten Problem, das der "zurück"-Button nicht beim 1. Bild und der "weiter"-Button nicht beim letzten Bild angezeigt wird, hier mal ein kleiner Lösungansatz:
wobei,

$id = Bildid
$bildarray = array mit den ausgelesenen Bildids

PHP:
$pictures = count($bilderarray);

if($id > $bildarray[0]) echo "<input type=\"button\" onclick=\"location.href='gallerie.php?id=$previd'\" value=\" zur&uuml;ck \">";

if($id < $bilderarray[$pictures]) echo "<input type=\"button\" onclick=\"location.href='gallerie.php?id=$nextid'\" value=\" weiter \">";

wie gesagt das soll nur ein kleiner Lösungsansatz sein, bzw. ein Denkanstoß ;)

gruß soyo
 
Zurück