Ordner auslesen, falls leer oder nicht vorhanden, Datei anzeigen

ciberjoerg

Erfahrenes Mitglied
Ich möchte mit folgendem Script Userbilder auslesen, und wenn kein Ordner oder Bild vorhanden ist, soll andere Bild angezeigt werden.

Mein Script:
HTML:
$verz=@opendir ('../upics/typen/thumb/'.$row->absender.'/');
print mysql_error();
while ($file = @readdir ($verz)) {
  if($file != "." && $file != "..") echo "<img src='../upics/typen/thumb/$row->absender/$file'alt='User Avatar:' height='60'></img>";
}
print mysql_error();
@closedir($verz);

Was muss ich da nun hinzufügen damit das so funktioniert wie Ich mir das vorstelle.
Ich wollte das ja mit if else machen, aber würde es gehen wenn das Script keinen Ordner oder Datei findet?
 
Hi,

ich würds wohl so in etwa machen:
PHP:
$array = array();

if ($handle = @opendir('../upics/typen/thumb/'.$row->absender.'/')) {
	while (false !== ($file = @readdir($handle))) {
		if ($file != '.' && $file != '..') {
			$array[] = $file;
		}
	}
}

@closedir($handle);

if (count($array) === 0) {
	print '<img src="ersatzbild.jpg" />';
}
else {
	foreach ($array as $value) {
		print '<img src="' . $value . '" />';
	}
}
 
Ich schmeiße da mal [phpf]glob[/phpf] in den Raum, da es solche Skriptsituationen vereinfachen kann.
 
Zurück