Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Skrypt php problem, Ilość plików - $i o łącznej pojemności $s MB
thekoks
post 18.04.2009, 10:03:02
Post #1





Grupa: Zablokowani
Postów: 64
Pomógł: 1
Dołączył: 31.03.2009

Ostrzeżenie: (60%)
XXX--


Witam mam problem z skryptem który miał by pokazywać ilość plików w danych katalogu i ile razem zajmują miejsca oto jego kod
  1. <?php
  2. $f = "./jakis folder/";
  3. function licz($f){
  4. global $i, $s;
  5. $od = openDir($f);
  6. if(!$od) return false;
  7.  
  8. while(($n = readDir($od)) !== false){
  9. if($n == "." // $n == "..") continue;
  10. }  //10 linijka
  11. }
  12. closeDir($od);
  13. }
  14. $i = 0;
  15. $s = 0;
  16. licz ('./');
  17. $s = round($s, 2);
  18. echo "Ilość plików - $i o łącznej pojemności $s MB";
  19. ?>

ale pokazule mi błąd:
Parse error: syntax error, unexpected '}' in c:\usr\krasnal\www\przyklad-2\kk.php on line 10

wie ktoś z was gdzie jest błąd questionmark.gif

Go to the top of the page
+Quote Post
l0ud
post 18.04.2009, 10:04:59
Post #2





Grupa: Zarejestrowani
Postów: 1 387
Pomógł: 273
Dołączył: 18.02.2008

Ostrzeżenie: (0%)
-----


Lub w warunkach robimy poprzez || albo OR a nie poprzez // - // to komentarz tongue.gif

Ten post edytował l0ud 18.04.2009, 10:05:13


--------------------
XMPP: l0ud@chrome.pl
Go to the top of the page
+Quote Post
Wicepsik
post 18.04.2009, 10:05:52
Post #3





Grupa: Zarejestrowani
Postów: 1 575
Pomógł: 299
Dołączył: 26.03.2009

Ostrzeżenie: (20%)
X----


  1. <?php
  2. $f = "./jakis folder/";
  3. function licz($f){
  4. global $i, $s;
  5. $od = openDir($f);
  6. if(!$od) return false;
  7.  
  8. while(($n == readDir($od)) !== false){
  9. if($n == "." // $n == "..") continue;
  10. }
  11. closeDir($od);
  12. }
  13. $i = 0;
  14. $s = 0;
  15. licz ('./');
  16. $s = round($s, 2);
  17. echo "Ilość plików - $i o łącznej pojemności $s MB";
  18. ?>


Za dużo }

Ten post edytował Wicepsik 18.04.2009, 10:06:55


--------------------
Go to the top of the page
+Quote Post
thekoks
post 18.04.2009, 10:07:33
Post #4





Grupa: Zablokowani
Postów: 64
Pomógł: 1
Dołączył: 31.03.2009

Ostrzeżenie: (60%)
XXX--


poprawiłem na
  1. <?php
  2. $f = "./jakis folder/";
  3. function licz($f){
  4. global $i, $s;
  5. $od = openDir($f);
  6. if(!$od) return false;
  7.  
  8. while(($n = readDir($od)) !== false){
  9. if($n == ".") continue;
  10. }
  11. }
  12. closeDir($od);
  13. $i = 0;
  14. $s = 0;
  15. licz ('./');
  16. $s = round($s, 2);
  17. echo "Ilość plików - $i o łącznej pojemności $s MB";
  18. ?>

ale teraz
Warning: closedir(): supplied argument is not a valid Directory resource in c:\usr\krasnal\www\przyklad-2\kk.php on line 12
Ilość plików - 0 o łącznej pojemności 0 MB
Go to the top of the page
+Quote Post
Wicepsik
post 18.04.2009, 10:11:39
Post #5





Grupa: Zarejestrowani
Postów: 1 575
Pomógł: 299
Dołączył: 26.03.2009

Ostrzeżenie: (20%)
X----


  1. <?php
  2. $f = "./jakis folder/";
  3. function licz($f){
  4. global $i, $s;
  5. $od = openDir($f);
  6. if(!$od) return false;
  7.  
  8. while(($n == readDir($od)) !== false){
  9. if($n == ".") continue;
  10. }
  11. closeDir($od);
  12. }
  13. $i = 0;
  14. $s = 0;
  15. licz ('./');
  16. $s = round($s, 2);
  17. echo "Ilość plików - $i o łącznej pojemności $s MB";
  18. ?>


Mi nie wywaliło żadnego błędu.

Ten post edytował Wicepsik 18.04.2009, 10:12:31


--------------------
Go to the top of the page
+Quote Post
thekoks
post 18.04.2009, 10:19:45
Post #6





Grupa: Zablokowani
Postów: 64
Pomógł: 1
Dołączył: 31.03.2009

Ostrzeżenie: (60%)
XXX--


hmmm... teraz nie ale czy dobrze ci zlicza pliki i ich łączną mase ? ;P

ok mam już
  1. <?php
  2. $f = "./include/";
  3. function licz($f){
  4. global $i, $s;
  5. $od = openDir($f);
  6. if(!$od) return false;
  7.  
  8. while(($n = readDir($od)) !== false){
  9. if($n == "." || $n == "..") continue;
  10. if(!is_dir($f.'/'.$n)) {
  11. $i++;
  12. $s += fileSize($f.'/'.$n)/1048576;
  13. } else licz($f.'/'.$n);
  14. }
  15. closeDir($od);
  16. }
  17. $i = 0;
  18. $s = 0;
  19. licz ('./');
  20. $s = round($s, 2);
  21. echo "Ilość plików - $i o łącznej pojemności $s MB";
  22. ?>

zlicza dobrze winksmiley.jpg
Go to the top of the page
+Quote Post
Crozin
post 18.04.2009, 10:24:54
Post #7





Grupa: Zarejestrowani
Postów: 6 476
Pomógł: 1306
Dołączył: 6.08.2006
Skąd: Kraków

Ostrzeżenie: (0%)
-----


Taki lekki OT: jeżeli lubisz sobie utrudniać życie zostaw kod jak masz. Jeżeli nie lubisz zastanów się czy odpowiednio sformatowany kod (czyt: wcięcia), sensowne nazewnictwo zmiennych ($file zamiast $n, $totalSize zamiast $s) oraz edytor z kolorowaniem składni nie ułatwiły by Ci trochę życia.
Go to the top of the page
+Quote Post
piotrooo89
post 18.04.2009, 10:25:51
Post #8


Newsman


Grupa: Moderatorzy
Postów: 4 005
Pomógł: 548
Dołączył: 7.04.2008
Skąd: Trzebinia/Kraków




glob" title="Zobacz w manualu PHP" target="_manual nie prościej?


--------------------
Go to the top of the page
+Quote Post
erix
post 18.04.2009, 21:23:01
Post #9





Grupa: Moderatorzy
Postów: 15 467
Pomógł: 1451
Dołączył: 25.04.2005
Skąd: Szczebrzeszyn/Rzeszów




Proszę o tag tematu.


--------------------

ZCE :: Pisząc PW załączaj LINK DO TEMATU i TYLKO w sprawach moderacji :: jakiś błąd - a TREŚĆ BŁĘDU? :: nie ponaglaj z odpowiedzią via PW!
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 19.07.2025 - 15:10