Seite 1 von 1

Problem mit Ordner auslesen

Verfasst: 27.12.2006 17:00
von SKYSURFER2002
Hallo und auch von mit noch ein: "Frohe Weihnachten",

wie im Titel schon beschrieben habe ich ein Problem mit dem Auslesen eines Verzeichnisses. Das grundsätzliche Auslesen bekomme ich noch hin. Aber ich habe etwas "mehr" vor. Meine Gedanken:
Der Benutzer fängt ab einem Startverzeichnis X an. Er bekommt alle in dem Ordner vorhandenen Ordner angezeigt ( aber nur die Ordner). Alle Ordner sind sortiert von Z nach A. Durch den klick auf einen Ordner kommt er eine Ebene tiefer. Es sollen wieder alle Verzeichnisse aufgelistet werden mit einem Link wie in der Ebene eins oben drüber. Wenn nun aber kein Ordner mehr vorhanden ist, dann sollen die Dateien aufgelistet werden. Diese aber von A nach Z.

Es klapp eigetlich schon alles, bis auf das erkennen ob ein Ordner oder nur noch Dateien vorhanden sind. Hier mal meine Ansätze:
PHP-Datei
TPL-Datei

Wie kann ich das machen?


SKYSURFER

Verfasst: 27.12.2006 18:59
von SKYSURFER2002
Also das mit dem Ordner und den Dateien habe ich nun hinbekommen.neue PHP-Datei Nun ergibt sich ein neues Problem.

Bei den Dateien sind auch gleich die thumbs dabei. Diese sind mit NAME_s.jpg gekennzeichnet. Wie kann ich diese unterdrücken?


SKYSURFER

Verfasst: 27.12.2006 19:03
von StarWolf3000

Code: Alles auswählen

<?
...
if(strpos(strtolower(basename($file)), "_s.jpg") > -1)
{
// Code der dann ausgeführt wird, wenn Datei Thumbnail ist
}
else
{
// Code der dann ausgeführt wird, wenn Datei kein Thumbnail ist
}
...
?>

Verfasst: 27.12.2006 19:11
von andreasOymann

Code: Alles auswählen

if ( substr($datei, -1, 6) != "_s.jpg" )
sollte helfen...

A.

Verfasst: 27.12.2006 19:13
von SKYSURFER2002
Dank dir. Funktioniert.
Muss es halt etwas umständlich machen. Oder geht das noch einfacher?

Code: Alles auswählen

		elseif ( $ordner == 0)
		{
			asort($fileArray);
			foreach($fileArray as $datei) 
			{
				if ($datei != "." && $datei != "..")
				{
					if(strpos(strtolower(basename($datei)), "_s.jpg") > -1)
					{
					}
					else
					{					
						$template->assign_block_vars('datei', array(
						'datei' => $datei,
						));
					}
					
				}
			}
		}
SKYSURFER

Verfasst: 27.12.2006 19:17
von StarWolf3000

Code: Alles auswählen

if(strpos(strtolower(basename($datei)), "_s.jpg") > -1)
{
}
else
{
    $template->assign_block_vars('datei', array(
        'datei' => $datei,
    ));
}
lässt sich noch vereinfachen:

Code: Alles auswählen

if(!(strpos(strtolower(basename($datei)), "_s.jpg") > -1))
{
    $template->assign_block_vars('datei', array(
        'datei' => $datei,
    ));
}

Verfasst: 27.12.2006 19:22
von SKYSURFER2002
Stimmt. Klappt super. Dank dir.

SKYSURFER

Verfasst: 27.12.2006 19:27
von andreasOymann

Code: Alles auswählen

		elseif ( $ordner == 0)
		{
			asort($fileArray);
			foreach($fileArray as $datei) 
			{
				if ($datei != "." && $datei != ".." && !(strpos(strtolower(basename($datei)), "_s.jpg") > -1))
				{
										
						$template->assign_block_vars('datei', array(
						'datei' => $datei,
						));
					
				}
			}
		}
erspart die 2. If-Abfrage...