Veröffentlicht 26. September 200519 j Hallo, vielleicht stell ich mich zu dumm an, aber ich finde keine lösung.... ich möchte folgendes machen: wenn ein Bild angezeigt wird, soll darunter automatisch ein link gesetzt werden, der zur nächsten/vorherigen Datei im Verzeichnis führt. mit Opendir & while schleife bekomme ich ja nur alle Dateien im DIR. :confused: :confused:
26. September 200519 j Hi, ganz einfach. Du liest dir das VErzeichnis aus, und schriebt alle Dateien in einen Array. Musst aufpassen das die Ordnerzeichen "." und ".." nicht mit in den Array wandern. Dann kannst die Fotos darstellen und mit dem Link auf das Arrayelement +1 oder -1 zugreiffen! Weiter musst du überprüfen das das Arrayelement nicht in den negativen Bereich geht, und das das Element nicht die Anzahl der Menge der ausgelesenen Fotos übersteigt! Hoffe es hilft cu mcmaiers
28. September 200519 j Hallo Leute, habs hinbekommen. Hier mal die lösung für alle die es vielleicht auch mal brauchen.... Die Datei gallery.php (ihr wird per URL der Pfad zum Bild übergeben, zb images/pics/bild10.jpg, gespeichter in $foto) <html> <head> <title>.....</title> </head> <body> <a href='javascript:parent.close()'> <? $bildinfo = getimagesize($foto); echo "<script language=\"JavaScript\" type=\"text/javascript\">"; echo "window.resizeTo(" . ($bildinfo[0]+70) . "," . ($bildinfo[1]+130) . ")"; echo "</script>"; echo "<div align=\"center\"><img alt='..schließen..' border=0 src='" . $foto . "'></a></div>"; $ordner=dirname($foto); $ordner.="/"; $datei=basename($foto); $handle=opendir($ordner); // Ordner in dem die Bilder sind wird geöffnet while ($file = readdir ($handle)) // while, weil nicht klar ist wieviele Dateien im Ordner sind, also werden hier die Dateien ausgelesen { if ($file != "." && $file != ".." && $file != "thumb" && $file!= "index.php") // diese Muster aus dem Array ausschließen { $array[] = $file; // Die Dateien aus dem Ordner werden in ein array gepackt } } closedir($handle); // Schließt den Ordner wieder sort($array); // Sortiert das $array $letzte_datei = count($array); // Welches ist die letzte Datei im Verzeichnis (achung gibt eine zahl mehr als der letzte Array index, weil array mit 0 startet $index = array_search($datei,$array ) ; // Welche nummer hat das aktuelle bild im array? ?> <br> <br> <table width="100%"> <tr> <td align="left"> <? if ($index >= 1) { echo "<a href=\"gallery.php?foto=" . $ordner.$array[$index-1] . "\">"; echo "<img src=\"images/links.gif\" border=\"0\">"; echo "</a>"; } ?> </td> <td align="center"> <? echo "Bild " . ($index+1) . "/" .$letzte_datei; ?> </td> <td align="right"> <? if ($index <= ($letzte_datei-2)) { echo "<a href=\"gallery.php?foto=" . $ordner.$array[$index+1] . "\">"; echo "<img src=\"images/rechts.gif\" border=\"0\">"; echo "</a>"; } ?> </td> </tr> </table><br> <? /*Debug echo "<pre>"; print_r($array); echo "Ordner: " .$ordner; echo "\nDatei: ". $datei; echo "\nNummer:" . array_search($datei,$array ) ; echo "\nlast:" . count($array); echo "</pre>"; */ ?> </body></html> [/php]
Archiv
Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.