CronJob-Service
bei SELFPHP mit ...
|
+ minütlichen Aufrufen
+ eigenem Crontab Eintrag
+ unbegrenzten CronJobs
+ Statistiken
+ Beispielaufrufen
+ Control-Bereich
Führen Sie mit den CronJobs von
SELFPHP zeitgesteuert Programme
auf Ihrem Server
aus. Weitere Infos
|
:: Anbieterverzeichnis ::
Globale Branchen
Informieren Sie sich über ausgewählte Unternehmen im Anbieterverzeichnis von SELFPHP
:: Newsletter ::
Abonnieren Sie hier den kostenlosen
SELFPHP Newsletter!
|
PHP Entwicklung und Softwaredesign Hier können strukturelle (Programmier-) Konzepte diskutiert und Projekte vorgestellt werden |
09.03.2004, 12:05:27
|
Anfänger
|
|
Registriert seit: Nov 2002
Beiträge: 80
|
|
Sortierung, Datei in einem Verzeichnis
Guten Morgen Gentleman,
ich versuche schon eine ganze Weile eine Lösung zu finden,
leider war das bisher nicht von Erfolg gekrönt.
Vielleicht hat ja jemand von Euch eine Idee.
(Bin ich eigentlich von überzeugt)
Also, ich möchte aus einem Verzeichnis Dateien auflisten und zwar
mit folgenden Daten:
- Dateiname
- Größe (am liebsten in MB)
- Datum
wobei die neueste Datei ganz oben erscheinen soll.
Noch lieber wäre es mir noch wenn NUR die neueste Datei angezeigt wird, ganz gleich wie viele Dateien sich in diesem Ordner befinden.
Das währe wirklich super ...
Eine Teillösung ist ja folgender Code ...
allerdings sehr unbefriedigend.
<?
$verz=opendir ('./Meldung') ;
while ($file = readdir ($verz)) {
if($file != "." && $file != "..") {
echo "<br><a href=$file>$file</a> | ";
$zeit = filemtime($file);
echo date("d.m.y", $zeit);
$size = filesize($file);
echo " | $size kb ";
}
}
closedir($verz);
?>
Schöne Grüße Hanna
|
09.03.2004, 12:28:59
|
Member
|
|
Registriert seit: Apr 2003
Ort: 49.54, 8.35 - 3./9
Beiträge: 878
|
|
Hallo Hanna,
Du kannst die Variablen $file, $zeit und $size in Arrays einlesen und mit array_multisort() sortiert bzw. gefiltert ausgeben.
Cu Marilu
|
09.03.2004, 12:41:21
|
Anfänger
|
|
Registriert seit: Nov 2002
Beiträge: 80
|
|
Ja .. das habe ich auch schon in diversen Themen hier im Forum gelesen.
Ich habe z.B.: mal "Ordner und einlesen" in Suchen eingegeben,
da kommt ja schon eine ganze Menge zu dem Problem.
Aber ich bekomme das nicht in das Script eingebaut...
Habe zum Beispiel das hier gefunden
$sort_array["files"] = $files;
$sort_array["size"] = $size_file;
$sort_array["unit"] = $unit_file;
array_multisort($sort_array,SORT_STRING, SORT_ASC);
$files = $sort_array["files"];
$size_file = $sort_array["size"];
$unit_file = $sort_array["unit"];
aber wie bekomme ich das so in den Code das es auch funktioniert?
Kann man dann auch angeben LIMIT 1 ?
Hanna
|
09.03.2004, 14:26:22
|
Member
|
|
Registriert seit: Apr 2003
Ort: 49.54, 8.35 - 3./9
Beiträge: 878
|
|
Ich habe mal so was ähnliches gemacht:
$farray = array();
$farray1 = array();
while ($file = readdir ($handle)) {
if(!(($file == ".") OR ($file == ".."))) {
$ftype = filetype($file);
array_push($farray, htmlentities($file)); // File Name
array_push($farray1, $ftype); // File Type
}
}
array_multisort($farray1, $farray); // Sortiert nach FT, FN
$farray[0] wäre jetzt die 1. alphabetisch sortiert.
Analog mußt Du $zeit einbauen.
Geändert von Marilu (09.03.2004 um 14:30:51 Uhr)
|
09.03.2004, 16:49:51
|
Anfänger
|
|
Registriert seit: Nov 2002
Beiträge: 80
|
|
... das bekomme ich nicht eingebaut.
Mir fehlt da einfach das Verständins für.
Ich habe jetzt 100 verschiedene Versionen ausprobiert, bekomme aber immer Fehlermeldungen.
Trotzdem Danke für Deine Hilfe!
Für heute resigniere ich ....
Schöne Grüße Hanna
|
09.03.2004, 19:00:16
|
Member
|
|
Registriert seit: Apr 2003
Ort: 49.54, 8.35 - 3./9
Beiträge: 878
|
|
> Ich habe jetzt 100 verschiedene Versionen ausprobiert, bekomme aber immer Fehlermeldungen. Für heute resigniere ich ....
OK, ich versuchs mal (quick and dirty):
PHP-Code:
<?php
$verz = "../"; // gewünschtes Verzeichnis, hier: 1 höher
echo "
<html>
<head>
<title>Directory anzeigen</title>
</head>
<body>";
chdir($verz);
$path = getcwd();
$handle = opendir ($path);
$farray = array();
$farray1 = array();
$farray2 = array();
while ($file = readdir ($handle)) {
$ftype = filetype($file);
$fsize = filesize($file);
$ftime = filemtime($file);
if(!(($file == ".") OR ($file == "..") OR ($ftype == "dir"))) { // Unterverzeichnisse ausblenden
array_push($farray, htmlentities($file));
array_push($farray1, $ftime);
array_push($farray2, $fsize);
}
}
array_multisort($farray2, SORT_DESC, $farray1, $farray);
echo "
<table border="1">
<tr>
<td><b>Datei</b></td>
<td><b>Zeit</b></td>
<td><b>Größe (B)</b></td>
</tr>";
for($i = 0; $i < count($farray); $i++) {
echo "
<tr>
<td>" . $farray[$i] . "</td>
<td>" . gmdate("d m Y H:i:s", $farray1[$i]) . "</td>
<td>" . $farray2[$i] . "</td>
</tr>";
}
echo "
</table>
</form>
</body>";
closedir($handle);
?>
Kannste jetzt sicher anpassen.
Cu Marilu
|
Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
|
|
Themen-Optionen |
|
Ansicht |
Linear-Darstellung
|
Forumregeln
|
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.
HTML-Code ist aus.
|
|
|
Alle Zeitangaben in WEZ +2. Es ist jetzt 12:34:22 Uhr.
|