Jerry
Grünschnabel
Hallo,
ich habe auf meiner Homepage die Möglichkeit das User Bilder usw. uploaden können. Jeder User hat dafür ein eigenes "Homeverzeichnis" in dem er sich frei bewegen kann. Die Ordnerstruktur ist folgende:
/users/user/$user_id
Der User kann also in seinem Ordner machen was er will (naja fast *g*), es können Unterordner angelegt werden usw.
Wie das nun mal so ist, räumt keiner auf und so liegt da nach einer weile viel Zeug rum und verschwendet Plattenplatz *grummel*
Nun dachte ich daran den „Homeordner“ mit allen Unterverzeichnissen eingeschlossen auf eine bestimmte Größe festzulegen und dann dem User keinen Upload mehr zu ermöglichen.
Nun dachte ich mir ermittele ich einfach die Gesamtgröße der Dateien in dem Ordner inkl. Unterverzeichnisse. Aber mit den Unterordnern habe ich meine Probleme.
Ich habe versucht die Größe der Files und Verzeichnisse so auszulesen und grafisch anzeigen lassen:
<?php
$path = "./"; //aktueller Ordner
$dp = opendir($path);
echo "<b>Inhalt des Ordners</b><br>";
echo '<hr noshade size="2">';
while ($file = readdir($dp))
{
if (!preg_match('/^\.{1,2}/', $file))
{
$size = filesize("./$file");
echo "$file";
echo " $size Byte <br>";
}
$ordnersize = $ordnersize+$size;
}
echo '<hr noshade size="2">';
echo "Gesammt = $ordnersize Byte";
?>
Dabei passiert folgendes er zeigt brav die Dateien an. Aber die Ordnergrößen stimmen nicht.
Alle Unterverzeichnisse zeigt er falsch an bzw. ermittelt die falschen Werte. Wie bekomme ich das gebacken das er auch bei den Unterordnern die richtige Größe ermittelt ?
ich habe auf meiner Homepage die Möglichkeit das User Bilder usw. uploaden können. Jeder User hat dafür ein eigenes "Homeverzeichnis" in dem er sich frei bewegen kann. Die Ordnerstruktur ist folgende:
/users/user/$user_id
Der User kann also in seinem Ordner machen was er will (naja fast *g*), es können Unterordner angelegt werden usw.
Wie das nun mal so ist, räumt keiner auf und so liegt da nach einer weile viel Zeug rum und verschwendet Plattenplatz *grummel*
Nun dachte ich daran den „Homeordner“ mit allen Unterverzeichnissen eingeschlossen auf eine bestimmte Größe festzulegen und dann dem User keinen Upload mehr zu ermöglichen.
Nun dachte ich mir ermittele ich einfach die Gesamtgröße der Dateien in dem Ordner inkl. Unterverzeichnisse. Aber mit den Unterordnern habe ich meine Probleme.
Ich habe versucht die Größe der Files und Verzeichnisse so auszulesen und grafisch anzeigen lassen:
<?php
$path = "./"; //aktueller Ordner
$dp = opendir($path);
echo "<b>Inhalt des Ordners</b><br>";
echo '<hr noshade size="2">';
while ($file = readdir($dp))
{
if (!preg_match('/^\.{1,2}/', $file))
{
$size = filesize("./$file");
echo "$file";
echo " $size Byte <br>";
}
$ordnersize = $ordnersize+$size;
}
echo '<hr noshade size="2">';
echo "Gesammt = $ordnersize Byte";
?>
Dabei passiert folgendes er zeigt brav die Dateien an. Aber die Ordnergrößen stimmen nicht.
Alle Unterverzeichnisse zeigt er falsch an bzw. ermittelt die falschen Werte. Wie bekomme ich das gebacken das er auch bei den Unterordnern die richtige Größe ermittelt ?