Home | Registrieren | Einloggen | Suchen | Aktuelles


Forum » PHP & MySQL » Bestimmte Dateien anzeigen, wie mach ich das? Antworten
Bestimmte Dateien anzeigen, wie mach ich das?

daywalker
Pixelschubser


Beiträge: 11


Hallo alle zusammen, brauche mal wieder Hilfe.
Soll ein PHP Script schreiben, was pdf Dateien in einem Verzeichniss anzeigt.
Das is ja erstmal nich schwer, einfach:
1: 
2: 
3: 
4: 
5: 
6: 
7: 
8: 
9: 
10: 
11: 
12: 
13: 
14: 
15: 
16: 
17: 
18: 
19: 
20: 
21: 
22: 
23: 
24: 
25: 
26: 
27: 
28: 
29: 
30: 
31:
<?php
function cmp($a, $b)
{
$Sort = "Datum";
return strcmp($a[$Sort], $b[$Sort]);
}

$i = 0;
if ($dir = @opendir("."))
{
while (($file = readdir($dir)) !== false)
{
if (is_file($file)  == '.pdf')
{
$aFiles[$i]["Datum"] = filemtime($file);
$aFiles[$i]["Name"] = $file;
$i++;
}
}
closedir($dir);
}

if(count($aFiles) > 0)
{
uksort($aFiles, "cmp");
$j = 0;
for($j = 0; $j <= 3; $j++)
echo "<a href=\"".$aFiles[$j]["Name"]."\" target=\"_blank\">".$aFiles[$j]["Name"]."</a>
";
}
?>

so um das mal einfach zu machen.
Aber: also das sind Dateien wo ein Vertretungsplan drauf steht.
Der ändert sich natürlich jeden Tag. Also heute wird die Datei für morgen, heute hochgeladen und die Datei für heute wurde gestern hochgeladen.

Wenn jetzt jemand auf der Internetseite auf Vertretungsplan für heute klickt, soll die Datei für die gestern hochgeladen wurde angezeigt oder nur ein Link angezeigt werden.
Wenn jemand auf morgen klickt also die Datei von heute.

Hab da absolut keinen Ansatz.
Vielleicht aus dem Dateinamen auslesen also zBsp. 03.01.2005.pdf oder aus den Datei informationen auslesen weis es echt nicht oder irgendwie mit dem Linux Timestamp vergleichen?

Bitte helft mir irgendwie, weis nich weiter.
Im Vorraus vielen lieben Dank

Diese Nachricht wurde geändert von: daywalker
  Profil   E-Mail   Editieren   Zitieren

Philipp Gérard
Foren-Team


Beiträge: 1508


Die Dateien sind im Format dd.mm.yyyy.pdf gespeichert? Ist dd.mm.yyyy dann das Datum, an dem die Datei hochgeladen wurde, oder das Datum, für das der Vertretungsplan gilt? Bei letzterem Fall ist der Link für den heutigen Vertretungsplan einfach:

1:
echo date("d").".".date("m").".".date("Y").".pdf";


---
Arbeit ist das Feuer der Gestaltung. - Marx

Diese Nachricht wurde geändert von: Philipp Gérard
  Profil   E-Mail   Website   Editieren   Zitieren

ATooM
Quasselstrippe


Beiträge: 346


Du hast ne schule die, die vertretungspläne hochläd? Das ist ja cool

---
Just Peace!

  Profil   E-Mail   Website   Editieren   Zitieren

daywalker
Pixelschubser


Beiträge: 11


Danke erstmal werds gleich ausprobieren.
Wenn es das Datum sein muss für quasi morgen sag ich das der Person die die speichert, das die das so eingibt.
Hätte da noch ein Kleines Problemchen:
Die Dateien die eben von gestern und älter sind müssten nach möglichkeit automatisch gelöscht werden, das könnte ja das gleiche Script erledigen, das prüft dann zwar immer wenn da jemand drauf geht ob alte Dateien vorhanden sind ist aber erstmal egal. Wie könnte ich das am einfachsten machen? Mit Datum zeugs hab ich nich so .
Im Vorraus danke

P.S. unsere Schule hats noch nicht, soll sowas aber kriegen, dafür muss ich das machen

Diese Nachricht wurde geändert von: daywalker
  Profil   E-Mail   Editieren   Zitieren

languitar
Foren-Team


Beiträge: 2795


genau so...

lässt dir mit date() das aktuelle datum erzeugen und löscht dann alle dateien die ein kleineres datum haben.
Dazu musst du den namen der Dateien zerlegen und dir daraus die jeweilige Timestamp erzeugen. Wenn diese kleiner als die des heutigen Tage um 00:00:00 ist, dann kann die Datei gelöscht werden.

---
Take a look here!
Lichtblick - Einblick - Ausblick

  Profil   E-Mail   Website   Editieren   Zitieren
 

Antworten
Nach oben