Gallery funktion

domiweber

Erfahrenes Mitglied
Ich habe mir eine kleine Bildergallery geschrieben die automatisch Thumb's erstellt und dass man das Bild auch vergrössern kann.
Doch nun suche ich noch eine kleine funktion dass wenn man ein Bild grösser anschauen will, auch zb. mit einem Pfeil ( -> <-) zum nächsten oder zum vorherigen Bild wechseln kann.

Kann mir da jemanden helfen?
mfg Domi
 
Wenn du eine geordnete Reihenfolge aller Objekte hast, sollte es kein Problem sein, die vorherige und nächste Position zu ermitteln.

Wo genau liegt das Problem?
 
Wenn du die Bilder in einer DB gespeichert hast und jedes Bild eine ID besitzt is das kein Problem.
Angenommen du hast ein Script, das dir dein Bild anzeigt. Also müsstest du auch die ID des aktiven Bildes haben, hier mal in $pic_id gespeichert.
PHP:
//Vorheriges Bild holen
    $sql = "SELECT * FROM table WHERE pic_id < $pic_id ORDER BY pic_id DESC LIMIT 1";
$res = mysql_query($sql);
    $pre_pic = mysql_fetch_array($res);
    $pre_pic = $pre_pic['pic_id'];
     //Nächstes Bild holen
    $sql = "SELECT * FROM table WHERE pic_id > $pic_id ORDER BY pic_id LIMIT 1";
   $res = mysql_query($sql);
    $next_pic = mysql_fetch_array($res);
    $next_pic = $next_pic['pic_id'];

dann kannste du 2 links anbringen die die Variable "pic_id" enthalten und schwups, geht das :D
 
Guck mal in diesen Thread.

Da ist der komplette Code meiner Gallerie. Dort ist auch die Funktion zum Blaettern von Bild zu Bild realisiert.
Das Blaettern funktioniert auch wenn die IDs der Bilder nicht zusammenhaengend sind, es wird also nicht einfach +/- 1 gerechnet sondern wirklich das naechste Bild der jeweiligen Gallerie geladen.
Den Code zum Blaettern findest Du in der showimage.php.
 
Die Bilder selbst oder nur die Dateinamen?

Die Bilder selbst in der DB zu speichern ist keine sehr gute Idee. Da das Auslesen laenger dauern wuerde als aus dem Filesystem, ausserdem blaeht das die DB unwahrscheinlich auf.

Der Code zum hochladen der Bilder und speichern der Dateinamen in der Datenbank findet sich auch im angegebenen Thread.
 
Zurück