[PHP] Vrij ruimte bepalen

Pagina: 1
Acties:

Onderwerpen


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Goede avond :)

Ik ben een upload scriptje aan het schrijven (klik) en hierbij wou ik ter informatie vermelden hoeveel vrij ruimte er nog is.
PHP:
1
2
3
4
<?PHP 
$dfs = disk_free_space("/") * 1048576; 
$dts = disk_total_space("/") * 1048576; 
?>

Ik heb voor ("/") al verschillende waardes geprobeerd, maar steeds zegt ie dat dat verboden terrein is of hij zegt helemaal niks :X

Welke directory moet ik nou gebruiken wil dit scriptje op mn host gebruiken?

[ Voor 11% gewijzigd door Verwijderd op 18-12-2004 20:03 ]


Acties:
  • 0 Henk 'm!

  • TheBorg
  • Registratie: November 2002
  • Laatst online: 20-09 18:24

TheBorg

Resistance is futile.

Misschien "."?

Acties:
  • 0 Henk 'm!

  • PowerSp00n
  • Registratie: Februari 2002
  • Laatst online: 19-08 08:24

PowerSp00n

There is no spoon

Wat is de error ("verboden terrein" kunnen we niet zoveel mee)?

Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Warning: disk_total_space(): open_basedir restriction in effect. File(/) is not within the allowed path(s):

Als ik (".") doe werkt het wel maar dan komt nog niet het juiste aantal megabytes.

[ Voor 16% gewijzigd door Verwijderd op 18-12-2004 20:09 ]


Acties:
  • 0 Henk 'm!

  • Jelmer
  • Registratie: Maart 2000
  • Laatst online: 18:10
Bestanden worden toch in /tmp geupload standaard? Die staat ook in je allowed paths

Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Jelmer schreef op zaterdag 18 december 2004 @ 20:11:
Bestanden worden toch in /tmp geupload standaard? Die staat ook in je allowed paths
Ik heb hem gewoon in de map 'www' gezet hor

Acties:
  • 0 Henk 'm!

  • ludo
  • Registratie: Oktober 2000
  • Laatst online: 26-04-2024
Moet je niet het volledige pad naar je upload dir opnemen :?

Bijvoorbeeld
code:
1
/usr/local/www/upload/


Edit: is het trouwens op een Windows systeem of een ander OS?

[ Voor 23% gewijzigd door ludo op 18-12-2004 20:20 ]


Acties:
  • 0 Henk 'm!

  • TheBorg
  • Registratie: November 2002
  • Laatst online: 20-09 18:24

TheBorg

Resistance is futile.

PHP:
1
2
3
4
<?PHP 
$dfs = disk_free_space(".") / 1048576; 
$dts = disk_total_space(".") / 1048576; 
?>

Als open_basedir restriction is ingeschakeld kun je nooit lager in de directorystructuur komen dan waar je PHP scripts staat.

Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
vaag :|

PHP:
1
2
3
4
5
6
<?PHP 
$dfs = disk_free_space("usr/local/www/"); 
$dts = disk_total_space("usr/local/www/");
$vrij = $dfs / 1048576;
echo $vrij;
?> 


Dan komt er nul uit :?

Acties:
  • 0 Henk 'm!

  • krvabo
  • Registratie: Januari 2003
  • Laatst online: 19-09 22:02

krvabo

MATERIALISE!

Als het op windows draait moet je disk_free_space("D:/"); gebruiken heh :P

o :+

ik heb even op windows gedaan:
PHP:
1
2
3
4
5
6
7
$vrij_d = round((disk_free_space("D:/")/1073741824), 2); 
$totaal_d = round((disk_total_space("D:/")/1073741824), 2);
$vrij_c = round((disk_free_space("C:/")/1073741824), 2); 
$totaal_c = round((disk_total_space("C:/")/1073741824), 2);

echo '<br><br>Vrij / Totaal upload-hdd: '.$vrij_d.' gig / '.$totaal_d.' gig';
echo '<br>Vrij / Totaal totaal-hdd: '.($vrij_d+$vrij_c).' gig / '.($totaal_c+$totaal_d).' gig';

geeft:
Vrij / Totaal upload-hdd: 6.62 gig / 8.99 gig
Vrij / Totaal totaal-hdd: 11.89 gig / 38.28 gig

Dus disk_free_space("./"); (punt slash) zou moeten werken? (geeft van je www dir heh.. als je een hogere dir wil gebruiken puntpunt slash :P )

[ Voor 97% gewijzigd door krvabo op 18-12-2004 20:35 ]

Pong is probably the best designed shooter in the world.
It's the only one that is made so that if you camp, you die.


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
krvabo schreef op zaterdag 18 december 2004 @ 20:26:
Als het op windows draait moet je disk_free_space("D:/"); gebruiken heh :P
Maar dat draait het niet :)

Acties:
  • 0 Henk 'm!

  • TheBorg
  • Registratie: November 2002
  • Laatst online: 20-09 18:24

TheBorg

Resistance is futile.

Je bent de "/" vergeten voor "usr".

Acties:
  • 0 Henk 'm!

  • ludo
  • Registratie: Oktober 2000
  • Laatst online: 26-04-2024
Zet nog eens een / voor het pad :)

Bij mij werkt het dan wel. Zonder / ervoor geeft hij inderdaad 0.

edit:
Te laat ;(

[ Voor 66% gewijzigd door ludo op 18-12-2004 20:36 ]


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
TheBorg schreef op zaterdag 18 december 2004 @ 20:33:
Je bent de "/" vergeten voor "usr".
dan komt die foutmelding weer :(

Warning: disk_free_space(): open_basedir restriction in effect. File(/usr/local/www/) is not within the allowed path(s):

Acties:
  • 0 Henk 'm!

  • ludo
  • Registratie: Oktober 2000
  • Laatst online: 26-04-2024
Staat toevallig Safe Mode aan :? Kun je de PHP instellingen van de server wijzigen? Want je moet dus die open_basedir aan kunnen passen.

[ Voor 19% gewijzigd door ludo op 18-12-2004 20:40 ]


Acties:
  • 0 Henk 'm!

  • TheBorg
  • Registratie: November 2002
  • Laatst online: 20-09 18:24

TheBorg

Resistance is futile.

Je moet er ook van maken "/home/wybren/public_html/"

ipv "/usr/local/www/"

Acties:
  • 0 Henk 'm!

  • TheBorg
  • Registratie: November 2002
  • Laatst online: 20-09 18:24

TheBorg

Resistance is futile.

Hij doet ut :+
Nu nog ROUND() om het netjes te maken.

Acties:
  • 0 Henk 'm!

  • Skaah
  • Registratie: Juni 2001
  • Laatst online: 16-09 18:38
Verwijderd schreef op zaterdag 18 december 2004 @ 20:22:
vaag :|

PHP:
1
2
3
4
5
6
<?PHP 
$dfs = disk_free_space("usr/local/www/"); 
$dts = disk_total_space("usr/local/www/");
$vrij = $dfs / 1048576;
echo $vrij;
?> 


Dan komt er nul uit :?
Dat is niet gek. Bij een fout geeft disk_free_space() false terug, dat is int (0)

Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
TheBorg schreef op zaterdag 18 december 2004 @ 20:44:
Hij doet ut :+
Nu nog ROUND() om het netjes te maken.
mja maar als mijn bronnen correct zijn heb ik daar 150 mb ruimte. En het enige wat er op staat is upload.php :?

52882.734375 != 150

Acties:
  • 0 Henk 'm!

  • TheBorg
  • Registratie: November 2002
  • Laatst online: 20-09 18:24

TheBorg

Resistance is futile.

Hij kijkt gewoon op de harddisk, niet naar jouw quota. Het klopt dus precies.

-edit- misschien handiger om te kijken hoeveel MB er in je upload directory staat en dat van 140 ofzo af te trekken.

[ Voor 44% gewijzigd door TheBorg op 18-12-2004 20:53 ]


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
TheBorg schreef op zaterdag 18 december 2004 @ 20:51:
Hij kijkt gewoon op de harddisk, niet naar jouw quota. Het klopt dus precies.

-edit- misschien handiger om te kijken hoeveel MB er in je upload directory staat en dat van 140 ofzo af te trekken.
maar hoe zorg ik er dan voor dat ie alleen bij mij kijkt :?

Acties:
  • 0 Henk 'm!

Verwijderd

kijken hoe groot de bestanden in jouw dir zijn.
die bestanden optellen en van de 150 aftrekken

Acties:
  • 0 Henk 'm!

  • chem
  • Registratie: Oktober 2000
  • Laatst online: 19-09 22:18

chem

Reist de wereld rond

Probeer /bin/du eens op een unix bak - aanzienlijk makkelijker :)

Klaar voor een nieuwe uitdaging.


Acties:
  • 0 Henk 'm!

  • Jelmer
  • Registratie: Maart 2000
  • Laatst online: 18:10
system("quota");

Geeft je alle info als het goed is (als het op fs niveau is geregeld)

[ Voor 33% gewijzigd door Jelmer op 18-12-2004 22:25 ]

Pagina: 1