$filename="anzeige.php"; // // Änderungsindex: // // Datum: Version: Änderungen // --------------+---------------+----------------------------------------------------------------------- // 15.08.2003 | 1.0 | Im Moment werden in der Übersicht 2 Spalten von Thumbnails angezeigt // | | Hierzu müssen in der Funktion "function view_overview ($action)" // | | kleine Änderungen vorgenommen werden // | | Die Größe der Thumbnails wird aus der Bilddatei bestimmt und hier // | | nicht mehr festgelegt // --------------+---------------+----------------------------------------------------------------------- // 09.04.2010 | 1.1 | Anpassung an PHP5 bezüglich Parameteruebergabe bei Scriptaufruf // | | Korrekte Behandlung, nicht einlesen, von leeren Textdateien // --------------+---------------+----------------------------------------------------------------------- // 21.06.2011 | 1.2 | Bei den Bildern wird nun ein Rahmen gezeichnet, falls Bild-Elemente // | | weiss sind // --------------+---------------+----------------------------------------------------------------------- // | | // --------------+---------------+----------------------------------------------------------------------- // // Kurzanleitung: // // Dieses Script muss in das Verzeichnis, in dem die entsprechenden Bilder liegen. Zu jedem Bild muss eine Textdatei // mit dem gleichen Namen vor dem Punkt existieren. Also Bilddatei: "p1305123.jpg", Textdatei: "p1305123.txt". // Weiterhin muss es ein Unterverzeichnis "thumbnail" geben. In diesem liegen die kleinen Bilder für die // Übersichtseite. Der Text der Übersichtsseite befindet sich in einer Datei mit dem Namen "index.txt". Der Aufbau // dieser Datei ist folgendermassen, jeweils mit "|*|" getrennt. Html ist erlaubt. // 1. Eintrag: da steht die CSS-Definition vom Dreamweaver // 2. Eintrag: ergibt den Titel der HTML-Seite // 3. Eintrag: ergibt die Überschrift der Html-Seite // 4. Eintrag: ergibt die URL für die Zurücksprungadresse // 5. Eintrag: Hier steht der ganze Text // 6. Eintrag: Hier findet sich die Fusszeile // // Groß-/Kleinschreibung bei den Dateinamen ist zu beachten. Unix/Linux ist da etwas eigen. ;-) // // Es wird eine normale HTML-Seite zusammen gesetzt und zur Anzeige gebracht, deshalb ist es sinnvoll, die Metadaten // entsprechend zu setzen. Diese stehen hier jeweils im Script, da ich diese bei allen Bildergalerien gleich // haben will. Müssen halt entsprechend des Einsatzortes angepasst werden. // // Weiter unten in dem Teil für die Übersichtsseite, gibt es noch zwei Parameter, die das Aussehen der Übersichsseite // bestimmen. Einmal die Anzahl (1 bis 4) der anzuzeigenden Spalten der Thumbnails. Und weiterhin, ob in der Übersichts- // seite schon der Untertitel des jeweiligen Bildes stehen soll. // // // Aufruf des Scripts erfolgt einfach, indem diese PHP-Datei als Link angegeben wird. // // Hier werden die einzelnen Bilder jeweils auf einer eigenen Seite angezeigt // function view_thumbnail ($action) { // Aktuelles Verzeichnis öffnen $folder = opendir("."); // Schleife zum Dateinamen einlesen while ($files= readdir($folder)) { // Alle Dateien einlesen if ($files != "." && $files != "..") // Übergeordnete Verzeichnisse weg { if (stristr ($files, ".txt")) // Nur *.txt Dateien kommen ins Array if ($files != "index.txt") // Somit müssten alle Bildtexte in dem Array stehen $file[] = $files; if (stristr ($files, ".jpg")) // Nur *.jpg Dateien kommen ins Array $image[] = $files; } } closedir($folder); $nbfp=1; $en=0; usort ($file,"strnatcmp"); // Sicherheitshalber mal sortieren, will die Bilder ja in aufsteigender Zeit // anzeigen usort ($image,"strnatcmp"); // Sicherheitshalber mal sortieren, will die Bilder ja in aufsteigender Zeit // anzeigen $entry=array(); // Alle Bild-TXT-Dateien einlesen for ($nb=0 ; $nb < count($file) ; $nb++) { $fp="\$fp"; $fp.=$nbfp; $fp=@fopen("./$file[$nb]", "r"); if (filesize("./$file[$nb]") > 0) { $entry[$en]=fread($fp, filesize("./$file[$nb]")); } else { $entry[$en]=" "; } fclose($fp); $nbfp++; $en++; } // Erst einmal den Index für die Bilddatei und die dazugehörige Textdatei ermitteln for ($in=0 ; $in < count($image) ; $in++) { if ($action == $image[$in]) { $bild_index = $in; $in = count($image) + 10; // Schleife beenden } } // Zusätzlich jetzt noch die Index.txt einlesen $fp=@fopen("./index.txt", "r"); $index = fread($fp, filesize("./index.txt")); fclose($fp); // Nun anfangen und die HTML-Datei zusammenstellen $data = explode("|*|", $index); echo "\n"; echo "
\n"; echo "| "; echo "Letztes Bild | \nÜbersicht | \n"; echo "Nächstes Bild | \n"; // V1.2 Bilder nun mit Rahmen versehen echo "
"; // Hier müsste der Text zum Bild stehen echo $entry[$bild_index]; echo "
\n| "; echo "Letztes Bild | \nÜbersicht | \n"; echo "Nächstes Bild | \n
| "; echo $data[2]; // Hier steht die Überschrift echo " | \n"; echo "Zurück | \n
"; echo $data[4]; echo "
\n| ";
echo "\n \n \n | ";
echo ""; if ($unterschrift_bild==1) echo $entry[$nb1]; echo " | \n"; // Wenn die Anzahl_Spalten größer ist als 1, wird noch eine weitere Spalte hinzugefügt if ($anzahl_spalten > 1) { if (($nb1+1) < count($entry)) { echo "";
echo "\n \n \n | ";
echo ""; if ($unterschrift_bild==1) echo $entry[$nb1+1]; echo " | \n"; } // Wenn die Anzahl_Spalten größer ist als 2, wird noch eine weitere Spalte hinzugefügt if ($anzahl_spalten > 2) { if (($nb1+2) < count($entry)) { echo "";
echo "\n \n \n | ";
echo ""; if ($unterschrift_bild==1) echo $entry[$nb1+2]; echo " | \n"; } // Wenn die Anzahl_Spalten größer ist als 3, wird noch eine weitere Spalte hinzugefügt if ($anzahl_spalten > 3) { if (($nb1+3) < count($entry)) { echo "";
echo "\n \n \n | ";
echo ""; if ($unterschrift_bild==1) echo $entry[$nb1+3]; echo " | \n"; } } } } echo "
"; echo $data[5]; echo "
\n"; echo ""; echo ""; }; if (htmlspecialchars($_GET["action"])=="") { view_overview (htmlspecialchars($_GET["action"])); } else { view_thumbnail (htmlspecialchars($_GET["action"])); } ?>