Benz: Ordnerstruktur auslesen

Mojjn Gemeinde,

ich möchte gerade einen "öffentlichen" FTP-Ordner auch über HTTP zugänglich machen und sitze deshalb gerade an der Erstellung eines Filebrowser.
Aus verschiedenen Gründen habe ich mich dazu entschlossen, die ganze Ordner- und Dateistruktur in eine Datenbank zu schreiben.

Nun kann ich natürlich nicht bei jedem Aufruf des PHP-Skriptes die ganze Struktur neu einlesen (denn es könnte in der Zwischenzeit sich über FTP etwas verändert haben), möchte aber auch auf einen Einlesen-Button oder ähnliches verzichten.

Kann ich irgendwie skriptgesteuert herausfinden ob sich etwas an dem Ordner getan hat?

MfG
Benz

  1. Mojjn Gemeinde,

    Hi

    ich möchte gerade einen "öffentlichen" FTP-Ordner auch über HTTP zugänglich machen und sitze deshalb gerade an der Erstellung eines Filebrowser.
    Aus verschiedenen Gründen habe ich mich dazu entschlossen, die ganze Ordner- und Dateistruktur in eine Datenbank zu schreiben.

    Lokal habe ich das einfacher gelöst. localhost/~ftp zeigt halt zum selben verzeichnis wie der ftp server, so ist alles gleichzeitig nochmal über http gemirrored (das browsen erfolgt dann über das standard apache filelisting)

    Zu deinem ansatz: du kannst die modification time (mtime) der files auslesen und nur wenn sie anders sind als in der db....

    Es sollte aber auch fertiges zeug für das geben was du willst :)

    Mfg

  2. Lieber Benz,

    ich hatte auch einmal das Problem.

    Aus verschiedenen Gründen habe ich mich dazu entschlossen, die ganze Ordner- und Dateistruktur in eine Datenbank zu schreiben.

    Tja, das war dann wohl ein Stolperstein für Deine Lösung. Zumindest meiner Meinung nach war das suboptimal...

    Nun kann ich natürlich nicht bei jedem Aufruf des PHP-Skriptes die ganze Struktur neu einlesen (denn es könnte in der Zwischenzeit sich über FTP etwas verändert haben), möchte aber auch auf einen Einlesen-Button oder ähnliches verzichten.

    Wieso kannst Du die Struktur nicht neu einlesen? Was hindert Dich daran?

    Kann ich irgendwie skriptgesteuert herausfinden ob sich etwas an dem Ordner getan hat?

    Also in den User-Comments auf PHPs Manual-Seite zu filemtime() finden sich zwei Beiträge die klarstellen, dass der Wert von filemtime() für Verzeichnisse in der Regel die letzte Dateierstellung, nicht aber die Dateiänderung in diesem Verzeichnis zurückgibt.

    Damit scheitert dann wohl Dein Ansatz, anhand einiger Datei-Eigenschaften (in PHP ist die Unterscheidung zwischen Datei und Verzeichnis etwas schwammig) ausmachen zu wollen, ob sich in einem Verzeichnis etwas geändert hat.

    Liebe Grüße aus Ellwangen,

    Felix Riesterer.

    --
    ie:% br:> fl:| va:) ls:[ fo:) rl:° n4:? de:> ss:| ch:? js:) mo:} zu:)