Blöde frage!!...



  • <?php
    function dirsize($dir) { 
     $dh = opendir($dir); 
     $size = 0; 
     while (($file = readdir($dh)) !== false) {
      if ($file != "." and $file != "..") { 
       $path = $dir."/".$file; 
       if (is_dir($path))
        $size += dirsize($path);
       elseif (is_file($path)) 
        $size += filesize($path); 
      }
     }
     closedir($dh); 
     return $size; 
    }
    
    function format_size($rawSize)
    {
     return round($rawSize/1048576, 2);
    }
    $mb_free = 60 - format_size(dirsize('./downloads'));
    if($mb_free>60)
    {
    echo "Es steht kein Platz mehr zur Verfügung.\nVersuche es später nocheinmal.";
    }
    else
    {
    echo "Es stehen noch ".$mb_free." MB zur Verfügung!!";
    }
    ?>
    

    😃
    So gebe ich den noch verfügbaren Speicherplatz aus.
    und mit:

    $mb_free = format_size(dirsize('./downloads')) - 60;
    if($mb_free>60)
    {
    echo "Es steht kein Platz mehr zur Verfügung.\nVersuche es später nocheinmal.";
    }
    else
    {
    echo "Es stehen noch ".$mb_free." MB zur Verfügung!!";
    }
    

    gebe ich den schon belegten Platz aus??? Oder? 😕 😉



  • dirsize('./downloads') ermittelt, wieviel Speicher der angegebene Ordner belegt (in Bytes)
    mit format_size wird dies dann in MB umgewandelt!

    So ermittelst du also die Größe in MB!
    $dir_size = format_size(dirsize('./downloads'));

    Der noch freie Speicher berechnet sich über folgende "Formel":
    freierSpeicher = verfügbarerSpeicher - belegterSpeicher
    Hast du also 60 MB frei, so machst du halt eben 60 - format_size(dirsize('./downloads'));
    Hast du z.B. nur 5 MB, machst du halt 5 - format_size(dirsize('./downloads'));

    Verstehst du es jetzt? Also so schwer ist das doch nun auch wieder nicht!



  • $mb_allowed = 50;
    $mb_size = format_size(dirsize('./downloads'));
    $mb_free = $mb_allowed - $mb_size ;
    
    if($mb_size >= $mb_allowed) // falls der Ordner mehr bzw. soviel Speicher belegt, wie erlaubt
    {
     echo "Es steht kein Platz mehr zur Verfügung.<br>\nVersuche es später nocheinmal.";
    }
    else
    {
     echo "Es sind bereits ".$mb_size." MB belegt!!<br>\n";
     echo "Es stehen noch ".$mb_free." MB zur Verfügung!!";
    }
    

    [ Dieser Beitrag wurde am 31.12.2002 um 15:54 Uhr von flenders editiert. ]



  • Danke, hat sich auch so erledigt!


Log in to reply