Odpowiedz 
 
Ocena wątku:
  • 0 Głosów - 0 Średnio
  • 1
  • 2
  • 3
  • 4
  • 5
Zmiana uprawnień CHMOD dla plików
26-05-2009, 16:41 (Ten post był ostatnio modyfikowany: 03-10-2009 03:55 przez melma.)
Post: #1
Zmiana uprawnień CHMOD dla plików
Czasem występuje potrzeba nadania odpowiednich uprawnień (CHMOD) plikom znajdującym się na serwerze z poziomu skryptu. Przydatne, gdy np. pliki zostały utworzone na serwerze poprzez skrypt instalatora. Wówczas często nie ma możliwości zmiany uprawnień dla tych plików z poziomu FTP. Poniższy skrypt umożliwia sporządzenie listy plików, którym chcemy zmienić uprawnienia, dzięki czemu można szybko zmienić uprawnienia większej ilości plikom.

Kod PHP:
<?php
$chmod_ok 
'0666';    // CHMOD, który chcemy nadać plikom
$katalog 'katalog/pokatalog/';    // ustaw ścieżkę katalogów (ustaw $katalog = ''; jeżeli zmieniasz uprawnienia dla plików w bieżącym katalogu

// wprowadź nazwy plików, którym zmieniasz uprawnienia
$pliki[0] = $katalog."plik_0.inc";
$pliki[1] = $katalog."plik_1.inc";
$pliki[2] = $katalog."plik_2.inc";
$pliki[3] = $katalog."plik_3.inc";
$pliki[4] = $katalog."plik_4.inc";
?>


<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=iso-8859-2" />
<title>Uprawnienia plików</title>
<style type="text/css">
body {
    font-family: Tahoma, Verdana, Arial, Helvetica, sans-serif;
    font-size:12px;
    }
.wiersz {
    padding-top:5px;
    }
a {
    color: #ff9000;
    font-weight:bold;
    }
a:hover {
    color: #d47800;
    font-weight:bold;
    }
</style>
</head>
<body>

<?php
echo "<div style=\"float:left;width:70px;padding-right:10px\">&nbsp;</div><div style=\"float:left;width:200px;font-weight:bold;\">Plik</div><div style=\"font-weight:bold;\">CHMOD</div>";
for(
$i 0$cnt count($pliki); $i $cnt$i++)
{

if(
file_exists($pliki[$i])) {
$chmod_pliku substr(sprintf('%o'fileperms($pliki[$i])), -4);

// ustaw kolor czerwony dla plików z innym CHMOD, zielony dla plików z właściwym CHMOD
if($chmod_pliku==$chmod_ok$chmod_kolor 'green';
else 
$chmod_kolor '#cc0000';

echo 
"<div class=\"wiersz\"><div style=\"float:left;width:70px;text-align:right;padding-right:10px\">$i</div><div style=\"float:left;width:200px\">$pliki[$i]</div><div style=\"font-weight:bold;color: $chmod_kolor\">$chmod_pliku</div></div>";
}

else echo 
"<div class=\"wiersz\"><div style=\"float:left;width:70px;text-align:right;padding-right:10px\">$i</div><div style=\"float:left;width:200px\">$pliki[$i]</div><div style=\"font-weight:bold;color: #cc0000\">brak pliku</div></div>";
}

echo 
"<div style=\"margin-left:100px;padding-top:20px\"><a href=chmod.php?upr=zmien>nadaj uprawnienia</a></div>";
?>


<?php
// zmiana uprawnien
@$upr=$_GET['upr'];
if(
$upr=='zmien') {
    
    for(
$i 0$cnt count($pliki); $i $cnt$i++)
        {
            
// sprawdz czy plik istnieje i nadaj mu CHMOD
            
if(file_exists($pliki[$i])) {
                
chmod("$pliki[$i]"$chmod_ok);
            }
        }
    }
else echo 
'zły parametr <b>upr</b>';
?>

</body>
</html> 
Odwiedź stronę użytkownika Znajdź wszystkie posty użytkownika
Zacytuj ten post w odpowiedzi
Odpowiedz 


Skocz do: