PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr

PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr (https://www.php-resource.de/forum/)
-   PHP Developer Forum (https://www.php-resource.de/forum/php-developer-forum/)
-   -   Funktion readdir auf Ordner beschränken (https://www.php-resource.de/forum/php-developer-forum/59964-funktion-readdir-auf-ordner-beschraenken.html)

simauki 28-09-2005 13:08

Funktion readdir auf Ordner beschränken
 
Hallo Leute, ich hab mir mal das Beispiel zur Funktion readdir beim Selfphp angeschaut. So wie ich das verstehe wird das Skript in einen Ordner gepackt und zeigt dort den ganzen Verzeichnisinhalt an, inklusive der Skriptdatei. Ich möchte nun aber das dort nur die Ordnernamen angezeigt werden und nicht auch noch die Skriptdatei. Wie kann ich das realisieren?

Beispiel aus dem selfphp:

<?PHP

$verz=opendir ('.');
while ($file = readdir ($verz))
{ if($file != "." && $file != "..") echo "$file <br>";}
closedir($verz);
?>

Vielen Dank im Voraus für die Hilfe
MfG Simauki

penizillin 28-09-2005 13:09

1. bitte php-tags reineditieren.
2. die if-abfrage um ein
PHP-Code:

is_dir($file

ergänzen.

SSJSonGoku1984 28-09-2005 13:11

dazu einfach mal die Funktion is_dir ansehen
EDIT:
misst zu langsam

simauki 28-09-2005 14:13

Danke, das Skript funktioniert jetzt Spitze. Muß nur noch etwas formatiert werden.

Ich hätte da aber noch was anderes. Das Skript soll es in 2 Versionen geben. Einmal sollen alle Ordnernamen angezeigt werden (so wie jetzt). Das andere Skript soll aber nur den "neuesten" Ordnernamen anzeigen.

Wenn Ihr mir da auch nochmal so schnell helfen könntet wäre das echt nett.

MfG Simauki

mrhappiness 28-09-2005 14:16

Mit filectime den Zeitpunkt des Erstellens ermitteln und das dann als Vergleichskriterium nehmen?

simauki 28-09-2005 14:23

Das versteh ich nicht. Es soll nichts zu vergleichen geben. Das Skript soll sich nur den neuesten Ordner rauspicken.

Simauki

mrhappiness 28-09-2005 14:25

Zitat:

Original geschrieben von simauki
Das versteh ich nicht. Es soll nichts zu vergleichen geben. Das Skript soll sich nur den neuesten Ordner rauspicken.
Und woher weiß das Skript, dass es den neuesten Ordner hat?

Naaa?

penizillin 28-09-2005 14:26

eben. das script muss ein maßstab haben: 2 tage vor diesem augenblick.
und dann vergleichen - ist die erstellungszeit eines ordners davor - ist der ordner alt.
ist sie danach - ist der ordner neu und muss "ausgespuckt" werden.

viel erfolg.

simauki 28-09-2005 14:49

Hmm, klingt logisch. Also das Vergleichsdatum/Zei ist jetzt. Das Datum der Ordner ist irgendwann früher und wird mit der Funktion filectime ausgelesen. Wie vergleich ich jetzt aber das Datum/Zeit von jetzt und die vielen anderen Daten der Ordner? Wie würde da der Ablauf aussehen?

Letztendlich nimmt der doch das erste Datum und vergleicht es mit jetzt. Das schreibt er dann in eine Speichervariable. Dann das nächste. Wenn das kleiner ist als das in der Speichervariable, dann ist der Ordner also älter. Wenn nicht, kommt das in die Speichervariable. Und so weiter und so fort.

Wie realisier ich das?

Simauki

penizillin 28-09-2005 14:51

so, wie du es beschrieben hast.

http://de2.php.net/manual/en/language.types.array.php
http://de2.php.net/manual/en/control...es.foreach.php

simauki 29-09-2005 17:44

Hallo nochmal, ich hab nochmal was im Zusammenhang mit dem Auslesen der Dateinamen in einem Ordner.

Das Skript sieht bis jetzt so aus:

PHP-Code:


$verz
=opendir ('.');
while (
$file readdir ($verz)) 
{if(
$file != "." && $file != ".." && is_dir($file)) 
echo 
"<a href=$file/index.php target=blank>$file<br><br>";}
closedir($verz); 

Es soll die Bilderordnernamen in einem Ordner auslesen und als Hyperlinks zu den entsprechenden Galerien darstellen.

Das Problem ist jetzt, das der Link den die Variable $file zurückgibt so aussieht:

Kreisunion_Jugend_Februar_2002_Brockwitz

Ich möchte jetzt noch die Unterstriche wegbekommen. Das macht man doch mit der Funktion explode? Ich bekomme die aber nicht in das Skript eingebaut. Kann mir da eventuell jemand helfen?

MfG Simauki

mrhappiness 29-09-2005 17:45

Zitat:

Original geschrieben von simauki
Ich möchte jetzt noch die Unterstriche wegbekommen. Das macht man doch mit der Funktion explode?
Mit str_replace geht's einfacher.


P.S.
Brich bitte deinen Code um

simauki 29-09-2005 17:53

Wo muß ich das einbauen? Das liegt doch in einer Schleife. Ich komm damit einfach nicht klar.

mrhappiness 29-09-2005 17:56

PHP-Code:

echo '<a href='.$file.'/index.php target=blank>'.
  
str_replace('_'''$file).'<br><br>'


Brich endlich deinen Code um, sonst muss ich das machen...

simauki 29-09-2005 18:01

Danke vielmals. So ähnlich hatte ich es auch schon. Mein Problem ist nur das ich noch nicht ganz so gut mit der Trennung von HTML und PHP klar komme.

Vielen Dank nochmals.

P.S: Ich habe den Code umgebrochen. Ich hoffe das geht so.


Alle Zeitangaben in WEZ +2. Es ist jetzt 20:09 Uhr.

Powered by vBulletin® Version 3.8.2 (Deutsch)
Copyright ©2000 - 2021, Jelsoft Enterprises Ltd.
Search Engine Friendly URLs by vBSEO 3.3.0
[c] ebiz-consult GmbH & Co. KG