Bilder aus Ordner auslesen

mkdgf

Grünschnabel
Hallo,

ich habe in diesem Forum, einen php Code für eine Bildergalerie gefunden. Funktioniert auch super, aber die Bilder werden untereinander angezeigt, und der Bilder Name wird angezeigt.

Hat jemand eine Idee wie ich das ändern kann ?

Danke im Vorraus !

Hier der Code:

<?PHP
//verzeichnis lesen
$mydir = getcwd()."/bilder";
$verz = dir($mydir);
while($entry=$verz->read()){
if($entry != "." && $entry != ".."){
$dateinamen[] = $entry;
}
}
$verz->close();

//Ausgabe
rsort($dateinamen);
while(list($key, $val) = each($dateinamen)) {
if(substr($val, -4) == ".jpg")
{
echo "<A HREF=\"bilder/".$val."\" TARGET=\"_blank\"><IMG SRC=\"thumb/".$val . "\"><BR>".$val."</A><BR><BR>";
}
}
?>
 
einfach in dieser Zeile:
echo "<A HREF=\"bilder/".$val."\" TARGET=\"_blank\"><IMG SRC=\"thumb/".$val . "\"><BR>".$val."</A><BR><BR>";

die <BR> löschen..

MfG
Philipp
 
Hallo,

danke für den Tipp, funktioniert aber leider nicht. Da verschieben sich die Bilder um einen Zeilen Umbruch nur nach oben, werden aber dennoch nicht nebeneinander angezeigt.

Grüße
 
Hallo,

jetzt habe ich alle <BR>´s entfernt. Es sieht besser aus. Danke.

Nur steht jetzt der Bildername neben dem Bild, auf diese anzeige kann ich aber verzichten.

Hast auch ne Idee wie ich diese deaktiviere

Bestens Dank im Vorraus !
 
Ich hab den Code nun so:

<?PHP
//verzeichnis lesen
$mydir = getcwd()."/bilder";
$verz = dir($mydir);
while($entry=$verz->read()){
if($entry != "." && $entry != ".."){
$dateinamen[] = $entry;
}
}
$verz->close();

//Ausgabe
rsort($dateinamen);
while(list($key, $val) = each($dateinamen)) {
if(substr($val, -4) == ".jpg")
{
echo "<A HREF=\"bilder/".$val."\" TARGET=\"_blank\"><IMG SRC=\"thumb/".$val . "\"<BR>".$val."</A>";
}
}
?>

Es werden zwar die Bilder nebeneinander angezeigt, aber neben dem Bild der Bldername.

Zudem bekomme ich nur 5 Bilder angezeigt. Das ist zwar für eine Zeile gut, aber die anderen sollten auch angezeigt werden..

Grüße
 
Es hat den anschein, als ob du von PHP und HTML keine Ahnung hast.. Vl. lest du dir mal ein paar Tutorials oder ähnliches durch.

du könntest es so ümändern

PHP:
<?php
//verzeichnis lesen
$mydir = getcwd()."/bilder";
$verz = dir($mydir);
while($entry=$verz->read()) {
   if($entry != "." && $entry != ".."){
      $dateinamen[] = $entry;
   }
}
$verz->close();

//Ausgabe
rsort($dateinamen);
$i=0;
while(list($key, $val) = each($dateinamen)) {
   if(substr($val, -4) == ".jpg") {
         $i++;
         echo "<A HREF=\"bilder/".$val."\" TARGET=\"_blank\"><IMG SRC=\"thumb/".$val . "\"<BR>".$val."</A>";
      if($i==4) { $i=0; echo "<br/>"; }

   }
}
?>

so..
hab das jetzt selber mal ausprobiert.. es funktioniert derzeit auch nicht so, wie ich es möchte..
werde dir mal ein kleines scipt schreiben, womit es funktionieren sollte ;)

MfG
Philipp
 
sodalla.. hier hab ich was, was hoffentlich funkt ;)

PHP:
<?php
$max_in_row = 3;

//verzeichnis lesen
$mydir = getcwd()."/bilder";
$verz = dir($mydir);
while($entry=$verz->read()) {
	if($entry != "." && $entry != "..") {
		$dateinamen[] = $entry;
	}
}
$verz->close();

//Ausgabe
rsort($dateinamen);

echo "<table><tr>";
$i=0;
while(list($key, $val) = each($dateinamen)) {
	if(substr($val, -4) == ".jpg") {
		$now[$i] = $val;
		echo "<td><A HREF=\"bilder/".$val."\" TARGET=\"_blank\"><IMG SRC=\"thumb/".$val . "\"</A></td>";
		$i++;
		if($i==$max_in_row) {
			echo "</tr><tr>";
			for(;$i>0;$i--) {
				echo "<td>" . $now[$max_in_row-$i] . "</td>\n";
			}
			echo "</tr><tr>";
		}
	}
}
echo "</tr><tr>";
for(;$i>0;$i--) {
	echo "<td>" . $now[$max_in_row-$i] . "</td>\n";
}
echo "</tr></table>";
?>

in der 2. Zeile, kannst du einstellen, wie viele bilder in einer Reihe sein sollen..

MfG
Philipp9494
 
Zurück