Zum Inhalt springen

Festplatten-Nutzung unter PHP


Empfohlene Beiträge

Das Ding hab ich auch gefunden...aber ich habe gerade den Gegenbeweis gefunden! Es geht doch:

 
<?php
$df = disk_free_space("/");
for($i=0;$i<3;$i++){
$df=$df/1024; //In GB gewandelt
}
$df2 = disk_total_space("/");
for($i=0;$i<3;$i++){
$df2=$df2/1024; //In GB gewandelt
}
echo "Freier Speicherplatz:".$df." GByte<br>";
echo "Gesamter Speicherplatz:".$df2." GByte";
?>
[/PHP]

Geht ganz gut. Hehe.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Nein der Webserver läuft mit Linux ....

www.final-net.de/test.php .... gibt mir halt die fehlermeldung aus ..

Warning: disk_free_space(): open_basedir restriction in effect. File(/) is not within the allowed path(s): (/home2/belbidi:/tmp) in /home2/belbidi/public_html/test.php on line 2

Warning: disk_total_space(): open_basedir restriction in effect. File(/) is not within the allowed path(s): (/home2/belbidi:/tmp) in /home2/belbidi/public_html/test.php on line 6[/PHP]

Link zu diesem Kommentar
Auf anderen Seiten teilen

Original geschrieben von [FiSi]Neo

Nein der Webserver läuft mit Linux ....

www.final-net.de/test.php .... gibt mir halt die fehlermeldung aus ..

Warning: disk_free_space(): open_basedir restriction in effect. File(/) is not within the allowed path(s): (/home2/belbidi:/tmp) in /home2/belbidi/public_html/test.php on line 2

Warning: disk_total_space(): open_basedir restriction in effect. File(/) is not within the allowed path(s): (/home2/belbidi:/tmp) in /home2/belbidi/public_html/test.php on line 6[/PHP]

[/b]

ein ":" im pfad?

oder dein script hat keine berechtigung.

Link zu diesem Kommentar
Auf anderen Seiten teilen

ok, nun klappt es, musste nur ein klein wenig was ändern


<?php
$df = disk_free_space("../");
for($i=0;$i<3;$i++){
$df=$df/1024; //In GB gewandelt
}
$df2 = disk_total_space("../");
for($i=0;$i<3;$i++){
$df2=$df2/1024; //In GB gewandelt
}
echo "Freier Speicherplatz:".$df." GByte<br>";
echo "Gesamter Speicherplatz:".$df2." GByte";
?>
[/PHP]

nur wie formatiere ich die Ausgabe auf 2 Stellen nach dem komma? (bin auf Arbeit, habe mein Büchlein nicht zur Hand ...)

Link zu diesem Kommentar
Auf anderen Seiten teilen

Danke, funktioniert jetzt ...

doch eine frage habe ich noch dazu:

das script ließt jetzt die ganze HDD des Servers aus. Da meine Platz auf diesem Server aber nur 250 MB entspricht, möchte ich, das er meinen Ordner nur anzeigt, ist dies möglich ? Mit dem script aus dem Link den ich gepostet habe, berechnet er nur alle Files zusamm, die sich in dem gleichem Ordner befinden.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Original geschrieben von [FiSi]Neo

Danke, funktioniert jetzt ...

doch eine frage habe ich noch dazu:

das script ließt jetzt die ganze HDD des Servers aus. Da meine Platz auf diesem Server aber nur 250 MB entspricht, möchte ich, das er meinen Ordner nur anzeigt, ist dies möglich ? Mit dem script aus dem Link den ich gepostet habe, berechnet er nur alle Files zusamm, die sich in dem gleichem Ordner befinden.

wenn du deinen script in deinen wwwroot legst und dann einfach mit einer rekursiven funktion alle dateien durchgehst und jedesma mit filesize() dann die Ergebnisse addierst, solltest du auf deinen aktuell belegten speicherplatz des wwwroots + unterverzeichnisse kommen.

die maximale größe weiß ich jetzt nicht wie ich diese auslesen würde. notfalls bis jemand eine lösung findet einfach halt oben im script erstma "fest" mit reingeben: ($wwwroootMaxSize=250;) <- so mein ich das.

gruß

kills

Link zu diesem Kommentar
Auf anderen Seiten teilen

Original geschrieben von [FiSi]Neo

wie gesagt ist ja die maximale größe 250 mb.

sprich man kann 2 ausgaben machen

a) verbrauchter speicherplatz

B) verfügbarer speicherplatz

nur wie ich das umsetzte mit filesize, etc. da brauche ich hilfe ^^

ich verstehe deine probleme nicht:confused:

ich hab doch im vorherigen post zu beiden geschrieben wie du es realisieren kannst.

Link zu diesem Kommentar
Auf anderen Seiten teilen

also ich habs jetzt so gelöst:


$folderSize = getFolderSize(".");

echo "Größe: ". formatSize($folderSize,0)." B<br>";
echo "Größe: ". formatSize($folderSize,1)." KB<br>";
echo "Größe: ". formatSize($folderSize,2)." MB<br>";
echo "Größe: ". formatSize($folderSize,3)." GB<br>";
echo "Größe: ". formatSize($folderSize,4)." TB<br>";

function formatSize( $size, $sizetype) {
return round($size/(pow(1024,$sizetype)),1);
}

function getFolderSize($dir) {
$size = 0;
$handle = opendir ($dir);
while (($file = readdir($handle))!== false) {
if ( $file != "." && $file != "..") {
if ( is_dir( $dir."/".$file)) {
$size += getFolderSize($dir."/".$file);
}
$size += filesize($dir."/".$file);
}
}
closedir ($handle);
return $size;
}

[/PHP]

is getestet und funzt

Link zu diesem Kommentar
Auf anderen Seiten teilen

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...