Home | Registrieren | Einloggen | Suchen | Aktuelles


Forum » PHP & MySQL » php, bildergallerie script Antworten
php, bildergallerie script

Ehemaliges Mitglied (#644)
Forenheld


Beiträge: 835


hi!
Hab ein Script geschrieben um Bilder aus einem Ordner als Thumbnails auszugeben (ganz billig)!

jetzt will ich aber mehrere Bilder nebeneinander laufen lassen!
Wisst ihr eine lösung ?

währe nett!

1: 
2: 
3: 
4: 
5: 
6: 
7: 
8: 
9: 
10: 
11: 
12: 
13: 
14: 
15: 
16: 
17: 
18: 
19: 
20:
<?  
$inputdir = opendir ('images');  
  
$pattern = ".|..";

while ($datei = readdir ($inputdir))
{  
	if (!ereg($datei,$pattern)) {
	
		$name=explode(".",$datei);
		
		// Ausgabe des korrekt formatierten Links  
		echo "<a href='images/$datei' target='_blank'><img width=\"600\" height=\"450\" src='images/$datei' border='0'></a><br><br />\n";
	}
}  
closedir ($inputdir);
  
?>



  Profil   Editieren   Zitieren

Ehemaliges Mitglied (#644)
Forenheld


Beiträge: 835


äh, dumm wie ich das beschriben habe!

okay:
also:
wenn ich das <br /> weglasse, dann zerbrichts mir das design, deswegen hab ichs auch erstmal so groß gemacht!
Wisst Ihr rat und Hilfe ?


  Profil   Editieren   Zitieren

languitar
Foren-Team


Beiträge: 2795


Na, das müsstest du dich aber hinbekommen.
Probier das ganze mal mit tabellen aufzuabun. Ansosnten gibts in ein paar Tagen bei mir auf der Seite nen Script. Muss das nur noch hochstellen

Gruß
Johannes

---
Take a look here!
Lichtblick - Einblick - Ausblick

  Profil   E-Mail   Website   Editieren   Zitieren

Ehemaliges Mitglied (#644)
Forenheld


Beiträge: 835


ist doch mit tabellen aufgebaut!

aber die tabellen werden durchbrochen!
Wieso ?



  Profil   Editieren   Zitieren

Ehemaliges Mitglied (#644)
Forenheld


Beiträge: 835


is erledigt:

1: 
2: 
3: 
4: 
5: 
6: 
7: 
8: 
9: 
10: 
11: 
12: 
13: 
14: 
15: 
16: 
17: 
18: 
19: 
20: 
21: 
22: 
23: 
24: 
25: 
26: 
27: 
28: 
29: 
30: 
31: 
32:
<? 
 
// Der Ordner wird geöffnet 
$inputdir = opendir ('images'); 
 
// Dateien, die gefiltert werden sollen - Hier die DOS Verzeichnisse 
// und die .. 
$pattern = ".|..";  
 
$i = 1;  
 
// Eine Schleife - Alle Dateien werden gelesen 
while ($datei = readdir ($inputdir)) 
{ 
// Ist die Prüfung durch den Filter erfolreich? 
if (!ereg($datei,$pattern)) { 
 
// Dateiname wird zerlegt und in einem Array gespeichert 
$name=explode(".",$datei); 
 
// Ausgabe des korrekt formatierten Links 
echo "<a href='images/$datei' target='_blank'><img width=\"70\" height=\"80\" src='images/$datei' border='0'></a>\n"; 
 
if(!($i++%9)) echo"<br />"; 
} 
}  
 
 closedir ($inputdir); 
 
?>



  Profil   Editieren   Zitieren

languitar
Foren-Team


Beiträge: 2795


nun ja, weil du's bist. Hier ist der Code:
1: 
2: 
3: 
4: 
5: 
6: 
7: 
8: 
9: 
10: 
11: 
12: 
13: 
14: 
15: 
16: 
17: 
18: 
19: 
20: 
21: 
22: 
23: 
24: 
25: 
26: 
27: 
28: 
29: 
30: 
31: 
32: 
33: 
34: 
35: 
36: 
37: 
38: 
39: 
40: 
41: 
42: 
43: 
44: 
45: 
46: 
47: 
48: 
49: 
50: 
51: 
52: 
53: 
54: 
55: 
56: 
57: 
58: 
59: 
60: 
61: 
62: 
63: 
64: 
65: 
66:
<?php
/* -----------------------------
PHP-Fotoalbum by Johannes Wienke
------------------------------*/

/* Voreinstellungen */
$ordner = "bilder";	//Verzeichnis zu den Bildern
$length = "3"; //Länge der Reihen

/* Funktion, die das angegebene Verzeichnis inklusive aller Unterverzeichnisse
durchläuft und nach Thumbnails durchsucht. Diese werden im Array $thumbs
gespeichert. Es können also nur Bilder angezeigt werden, zu denen auch Thumbnails
vorhanden sind*/
function get_dir ($dir) {
  global $thumbs, $i;
  $typ = "jpg";
  $fp = opendir($dir);
  while($datei = readdir($fp)) {
    if (is_dir("$dir/$datei") && $datei!="." && $datei!="..") {
      get_dir("$dir/$datei");
    }else{
   	  if (preg_match("/^index/", $datei)) continue;
	  if (preg_match("/\.\.?$/", $datei)) continue;
      if (preg_match("/\.".$typ."$/i", $datei) && preg_match("/k_/", $datei)) {
        $thumbs[] = "$dir/$datei";
      }
    }
    $i++;
  }
  closedir($fp);
}

//Funktionsaufruf
get_dir("$ordner");

//Berechnung der vollen Reihen und der restlichen Bilder
$reihen = floor(sizeof($thumbs) / $length);
$rest = sizeof($thumbs) - $reihen * $length;

//Ausgeben voller Reihen
for ($k=0;$k<$reihen;$k++) {
	echo "<table cellpadding=\"0\" cellspacing=\"0\" border=\"0\" style=\"margin-bottom:7px; table-layout:fixed\"><tr>\n";
    for($l=0;$l<$length;$l++) {
    	$thumbnow = $k * $length + $l;
        $size = getimagesize("$thumbs[$thumbnow]");
        $bildnow = ereg_replace("thumbnails/k_", "", $thumbs[$thumbnow]);
    	echo "<td align=\"center\" style=\"background-color:#E1F0FF; border:1px white solid; padding: 4px\"><a href=\"$bildnow\" target=\"_blank\"><img src=\"$thumbs[$thumbnow]\" width=\"$size[0]\" height=\"$size[1]\" border=\"0\" alt=\"zum Vergrößern klicken\" style=\"border:1px white solid\"></a></td>\n";
        if ($l < $length - 1) echo "<td width=\"7\">&nbsp;</td>\n";
    }
    echo "</tr></table>\n";
};

//Ausgeben der unvollständigen Reihe
if ($rest <> 0) {
	echo "<table cellpadding=\"0\" cellspacing=\"0\" border=\"0\" style=\"table-layout:fixed\"><tr>\n";
    for($l=0;$l<$rest;$l++) {
    	$thumbnow = $reihen * $length + $l;
        $size = getimagesize("$thumbs[$thumbnow]");
        $bildnow = ereg_replace("thumbnails/k_", "", $thumbs[$thumbnow]);
    	echo "<td style=\"background-color:#E1F0FF; border:1px white solid; padding:4px\"><a href=\"$bildnow\" target=\"_blank\"><img src=\"$thumbs[$thumbnow]\" width=\"$size[0]\" height=\"$size[1]\" border=\"0\" alt=\"zum Vergrößern klicken\" style=\"border:1px white solid\"></a></td>\n";
        if ($l < $rest - 1) echo "<td width=\"7\">&nbsp;</td>\n";
    }
    echo "</tr></table>\n";
};

?>

Und jetzt gerade noch ein beschreibender Text dazu:
Mit diesem Script könnt ihr aus einem Verzeichnis mit Bildern automatisch ein Fotoalbum erstellen lassen. Vorausgesetzt wird, dass in einem Unterverzeichnis schon Thumbnails zu den Bildern angeleget sind. Dies lässt sich z.B. sehr komfortabel mit der Freeware <a href="http://www.fookes.com/ezthumbs/index.html?2.53" target="_blank">Easy Thumbnails</a> machen. Theoretisch könnte man die Thumbnails auch direkt mit PHP und GD ersetllen lassen, was aber in vielen Fällen zu Problemen und starken Qualitätsverlusten führt.<br>
Die Originalbilder müssen für das Fotoalbum in einem eigenen Ordner liegen, der noch ein Unterverzeichnis mit den Thumbnails enthält. Die Thumbnails werden in diesem Beispiel mit dem Prefix <i>k_</i> gekennzeichnet (kann im Script aber auch geändert werden).<br><br>
(das ist direkt von meiner Website geklaut)

Gruß Johannes

---
Take a look here!
Lichtblick - Einblick - Ausblick

  Profil   E-Mail   Website   Editieren   Zitieren
 

Antworten
Nach oben