CMS Ordnergröße,Ordnername+Mysql

xlanhackerx

Mitglied
Hallo liebe Community.
Ich arbeite im Moment an einem kleinen CMS welches meinen Regestrierten User´n ermöglicht dateien Hochzuladen(soll wie ein Homespace werden). Die größe ist auf 100mb beschränkt. Ich möchte nun folgendes machen..Ich werde nun per Cronjob eine phpdatei öffnen (jeden tag) welche die Ordner durchschaut welche in Users liegen.
Bei der Regestration wird in diesem Ordner ein Ordner mit dem Usernamen erstellt.
Das Script muss also alle Ordner durchschauen welche in diesem Hauptordner liegen.
Dann soll von jedem Ordner die aktuelle Größe ausgelesen werden und in eine Mysqldatenbank geschrieben werden.
Das ganze soll so aussehen.

Mysqldatenbank ->Ordnername eingetragen (bei Regestration)

Script ->Ordner durchgehen und größe auslesen ->Ordnergröße mit Ordnername vergleichen. Dann Ordnergröße eintragen.

Ich als Administrator kann später mittels Liste feststellen welche Ordnergröße der User hat.
Ich möchte auch nicht die Ordnergröße beim Upload festlegen da ich auch mal 150mb zulasse oder mehr.

Hoffe ich habe mich verständlich ausgedrückt ;-)

Mfg. Oliver
 
Ich würde lieber die Verzeichnisgröße bei jeder Veränderung prüfen, wenn der Benutzer also Dateien hinzufügt, löscht oder verändert.
 
Naja wäre das ganze nicht leicht Serverlastig
Ich meine mit dieser Cronjob Variante könnte ich das ganze auslagern und so alles extra machen. Ich brächte allerdings Hilfe bei der Codeumsetzung meiner Idee !!
Die Liste habe ich bereits.Nur die "Check"Datei muss noch gecodet werden !!

Mfg. Oliver
 
Stell dir mal vor, von 100 Usern updaten nur 2 Leute täglich die Dateien...
Dann scannst du 100 Ordner, 98 davon umsonst.

Viel sinnvoller wäre Gumbos Variante, direkt nach dem Upload einer Datei, die Ordnergröße zu berechnen und dann in die Datenbank eintragen.

Dadurch würdest du dir auch nicht die tägliche Serverlast einbrocken, die X Verzeichnisse zu scannen. Denn da könnte PHP schon hart ins Arbeiten kommen, wenn da ein paar tausend Verzeichnisse vorhanden sind.
 
Ok das stimmt allerdings.
Nagut dann werde ich das wohl auch so machen.
Ich hab da mehere Beispiele gesehen wo Ordnergrößen ausgelesen werden aber ich brauche ja nur den aktuellen Ordner auszulesen indem der User uploaded. Das Ergebniss in die mysqldatenbank einzutragen ist das einfachste ;-)

Mfg. Oliver
 
Man muss es ja nicht selbst machen, das kann ja auch das Betriebssystem für einen machen. Unter Unix geht das beispielsweise mit folgendem Befehl (Angabe in Kilobyte):
Code:
du -sk Verzeichnis
 
Zurück