PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Wie sortiere ich ???


gelfling
06.09.2007, 13:37:47
Hallo...

mit dem folgenden Script lasse ich mir auf meiner Homepage in einem Iframe die Datein
eines Verzeichnisses anzeigen.
Dort sehe ich dann die Dateinamen die dann auch passend verlinkt sind, um diese dann
aus der Liste runterladen zu können.
Die Datein werden allerdings in der Reihenfolge angezeigt, wie ich diese ins Verzeichnis
per FTP hochgeladen habe.
Meine Frage lautet nun, wie ich die Ausgabe, alphabetisch sortieren kann.
Das die Datein von A-Z sortiert werden.

Hier der Script :

<?php
$verzeichnis = openDir("meine"); // Öffnet ein Unterverzeichnis mit dem Namen "meine"
while ($file = readDir($verzeichnis)) { // Verzeichnis lesen
if ($file != "." && $file != "..") { // Höhere Verzeichnisse nicht anzeigen!

echo "<a href=\"meine/$file\">$file</a><br>\n"; // Link erstellen
}
}
closeDir($verzeichnis); // Verzeichnis schließen
?>


Da ich null Ahnung davon habe, wäre es super, wenn mir jemand dieses Script umschreiben könnte.

MfG

gelfling

MatMel
06.09.2007, 13:58:36
Schreibe die Werte in ein Array und sortiere sie danach mit sort() (http://de.php.net/manual/de/function.sort.php).

gelfling
06.09.2007, 14:00:06
Und wie mache ich das ??????
Ich habe null Ahnung davon !!!

rambi
06.09.2007, 14:11:48
Verwende glob(), das sortiert automatisch

Ansonsten:
Wäre ganz gut, wenn du dich in PHP mal einlesen würdest...
Diese "macht ihr mal für mich" kommt in Foren meist nicht so gut. Ist sogar eine der einfachsten Arten sich total unbeliebt zu machen!

gelfling
06.09.2007, 14:24:39
Ich sitz da jetzt schon Tage drann und bin am rumprobieren....
aber irgendwie klappt es nicht.....
Es wird auch nirgends mal ein Beispiel gezeigt, wie man es schreiben mus !!!

Indyk
06.09.2007, 14:29:33
weil niemand lust hat jemanden zu helfen der sich nicht mal zeit nimmt sich selber zu helfen. Ich tippe mal du hast keine ahnung was du mit dem script da eigt. machst oder was eine foreach schleife ist ect.


$verzeichnis = openDir("meine"); // Öffnet ein Unterverzeichnis mit dem Namen "meine"
while ($file = readDir($verzeichnis)) { // Verzeichnis lesen
if ($file != "." && $file != "..") { // Höhere Verzeichnisse nicht anzeigen!
$array[] = "<a href=\"meine/$file\">$file</a><br>\n"; // Link in einen Array packen
}
}
closeDir($verzeichnis); // Verzeichnis schließen

// array sortieren
sort($array);
// array ausgeben
for($i=0;$i<count($array);$i++){
echo $array[$i];
}


ungetestet aber sollte funktionieren, bei fragen würde ich erst das manual konsultieren und dann ins forum posten. viel glück

edit
hab das sript um ein ";" bereichert, danke an defabricator

rambi
06.09.2007, 14:33:55
Manno...
Das sind allerunterste Grundlagen!

<?php
$files = glob('./meine/*.php'):
foreach ($files as $file)
echo '<a href="'.$file.'">'.basename($file).'</a><br>'."\n"; // Link erstellen
?>

*ungetestet*

EDIT:
Hach, viel zu spät...

gelfling
06.09.2007, 14:49:38
Erst mal Danke...

Ich will zwar nicht meckern, aber beide Scripte funktionieren nicht...

Habe meinen Script, durch den anderen jeweils ersetzt, aber es funktioniert nicht.

Da wird dann nur eine Fehlermeldung angezeigt.

defabricator
06.09.2007, 14:53:18
Hast Du keine Fehlermeldung bekommen? Nur "geht nicht" hilft nicht weiter.
In rambis Skript muss ein : durch ; ersetzt werden. Bei Indyk fehlt ein ;

gelfling
06.09.2007, 14:59:58
Danke an Indyx und defabricator
Der Script funktioniert jetzt
es fehlte nach der echo Zeile ein ;
Beim dem Script von rambis habe ich : durch ; ersetzt.
Aber da wurde dann die Datein nicht angezeigt.

Super Hilfe !!!!!! Danke !!!!!!!!

rambi
06.09.2007, 15:04:44
Aber da wurde dann die Datein nicht angezeigt.
Aber du bist schon auf die Idee gekommen, die *.php Dateiendung durch das von dir gewünschte zu ersetzen... z.B. *.*... oder?

Indyk
06.09.2007, 15:09:06
rambi da hast du eindeutig zu wenig vorgekaut *g* schäm dich (- ;

rambi
06.09.2007, 15:44:29
Nunja.. mag sein .... <alles zugebend>
Ein kleinwenig Mitdenken sollte man eigendlich in einem Progger Forum schon erwarten können. Aber so wie mir sich das darstellt, hat der TE wirklich Null Komma Null Ahnung von PHP oder Programmiersprachen im allgemeinen. Hoffendlich ändert sich das noch...