Totale grote van alle bestanden?

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Onbekend Onbekend

Onbekend Onbekend

22/09/2006 19:52:00
Quote Anchor link
Ik heb in mijn database zon 10000 links naar bestanden op de server staan. Ik wil van al die bestanden de grote optellen en weergeven.

Ik probeerde dit:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
<?php
          $sql
= "SELECT SUM(file) FROM downloads_files";
          $res = mysql_query($sql);
          $row = mysql_fetch_array($res);
          $tot = filesize($row['file']);
          echo $tot;
?>

Ik krijg helemaal niks te zien. Wie helpt mij?

BVD, Tdr93
 
PHP hulp

PHP hulp

18/11/2024 09:31:40
 
Stefan van Iwaarden

Stefan van Iwaarden

22/09/2006 19:54:00
Quote Anchor link
Wat jij nu probeert is om de velden file in je database op te tellen, maar aangezien dat waarschijnlijk een varchar veld is, lukt dat niet, en het is ook niet wat je wilt.

Je zult aan de hand van je database en een loopje ieder bestand moeten aanroepen en de grootte opvragen, dit in een variabele erbij tellen, en dan krijg je wel je totaal.

EDIT: ongeveer zoiets als dit dus:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
<?php
          $sql
= "SELECT file FROM downloads_files";
          $res = mysql_query($sql);
          while ($row = mysql_fetch_array($res))
{

          
          $tot += filesize($row['file']);
}

          echo $tot;
?>
Gewijzigd op 01/01/1970 01:00:00 door Stefan van Iwaarden
 
Onbekend Onbekend

Onbekend Onbekend

22/09/2006 19:55:00
Quote Anchor link
Zou je een voorbeeld kunnen geven. Ik ben nog niet zó ver met PHP.

Ik snap wel wat het probleem is;)
 
Onbekend Onbekend

Onbekend Onbekend

22/09/2006 19:58:00
Quote Anchor link
Hoe kan ik dat in MB krijgen? of gaat dat niet?
 

22/09/2006 20:04:00
Quote Anchor link
@Tdr93
Doet ie het nou?

B - bits - 1
b - bytes - 8 bits
Kb - kilobytes - 1024 bytes
Mb - megabytes - 1024 kilobytes
Gb - gigabytes - 1024 megabytes
Tb - terabytes - 1024 gigabytes
 

22/09/2006 20:06:00
Quote Anchor link
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
<?php
function size_hum_read($size){
/*
Bron: php.net documentatie filesize functie
Returns a human readable size
*/

  $i=0;
  $iec = array("B", "KB", "MB", "GB", "TB", "PB", "EB", "ZB", "YB");
  while (($size/1024)>1) {
   $size=$size/1024;
   $i++;
  }

  return substr($size,0,strpos($size,'.')+4).$iec[$i];
}

// Usage : size_hum_read(filesize($file));



          $sql = "SELECT file FROM downloads_files";
          $res = mysql_query($sql);
          while ($row = mysql_fetch_array($res))
{

          
          $tot += filesize($row['file']);
}

          echo size_hum_read($tot);
?>
 
Onbekend Onbekend

Onbekend Onbekend

22/09/2006 20:08:00
Quote Anchor link
Hij werkt perfect: maar het staat nu in bytes, dat is zo'n verschrikkelijk groot getal..

B - bits - 1
b - bytes - 8 bits
Kb - kilobytes - 1024 bytes
Mb - megabytes - 1024 kilobytes
Gb - gigabytes - 1024 megabytes
Tb - terabytes - 1024 gigabytes
Pb - petabytes - 1024 terabytes
Eb - exabytes - 1024 petabytes
Zb - zettabytes - 1024 exabytes
Yb - yottabytes - 1024 zettabytes

:P
 

22/09/2006 20:13:00
Quote Anchor link
Al die van mij geprobeerd?

De kijkt [als het goed is] automatisch welke het best kan worden toegepast.
 
Onbekend Onbekend

Onbekend Onbekend

22/09/2006 20:15:00
Quote Anchor link
Jah:D die werkt geweldig!

Dank!
 
Joren de Wit

Joren de Wit

22/09/2006 20:19:00
Quote Anchor link
[off-topic]
@Tdr93:

De afkorting van bit is 'b' en de afkorting van byte is 'B'.

Dus:
b - bit
B - byte
kB - kilobyte
MB - megabyte
enz...

[/offtopic]
 

22/09/2006 20:30:00
Quote Anchor link
@Blanche
Je hebt gelijk. Maar eigenlijk zouden we het moeten hebben over MiB e.d. maar goed word wel erg offtopic.
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.