Autor | Zpráva | ||
---|---|---|---|
Pesulap Profil |
Ahoj potřebuji změnit všechny soubory v adresáři na chmod 0666
zkoušel jsem tohle <? $handle=opendir('.'); while (false!==($file = readdir($handle))) { if ($file != "." && $file != "..") { chmod("./".$file,0666); } } closedir($handle); ?> Ale nejde to .. Nevíte jak na to, kde mám chybu ? Díky Moderátor Majkl578: Vkládej prosím kódy mezi značky [>pre] a [>/pre] (stačí kliknout na ).
|
||
AM_ Profil |
#2 · Zasláno: 2. 5. 2010, 22:53:26
|
||
Taps Profil |
#3 · Zasláno: 3. 5. 2010, 10:18:31 · Upravil/a: Taps
Pesulap:
zkus tento postup <? $handle=opendir('.'); while (false!==($file = readdir($handle))) { if ($file != "." && $file != "..") { $soubor[]=$file; } } closedir($handle); foreach($soubor as $s){ chmod("nazev_nadrazeneho_adresare/".$s,0666); } ?> |
||
bohyn Profil |
#4 · Zasláno: 3. 5. 2010, 15:05:25 · Upravil/a: bohyn
Pesulap:
Minimálně bych změnil podmínku a kontroloval jestli je to soubor a ne adresář. Když totiž nastavíš adresáři práva 0666 tak se do něj nedostaneš. <? // tohle ti rekne jestli je nekde chyba, pak to zase vyhod ini_set("error_reporting", E_ALL); ini_set("display_errors", "on"); $handle=opendir('.'); while (false!==($file = readdir($handle))) { if (is_file($file)) { chmod("./".$file,0666); } } closedir($handle); ?> Jinak taky PHP nemusí mít dostatečná oprávnění aby to změnil. |
||
Časová prodleva: 14 let
|
0