2017-08-14 7 views
0

Utilisation de chmod Je souhaite modifier les valeurs chmod des fichiers de l'utilisateur. Mais ça ne marche pas. Mon code est;Php - Chmod ne fonctionne pas

$chmod = "0777"; 
chmod($filename, $chmod); 

Je suis entrée chmod 777. Mais la valeur chmod du fichier est 1411. J'ai essayé chmod 0777, 777, 00777. Le résultat est le même.

+1

La raison la plus courante pour laquelle cela ne fonctionne pas est que votre serveur Web fonctionne avec des autorisations d'utilisateur et de groupe qui ne lui permettent pas de modifier le fichier. Lorsque vous vous connectez, les autorisations sont souvent plus importantes que celles du serveur Web. Pouvez-vous nous dire à qui appartient le fichier (utilisateur et groupe) et quel utilisateur et groupe votre serveur Web est? – JBH

+0

Est-ce que '$ filename' contient le chemin d'accès complet au fichier? L'utilisateur dispose-t-il des autorisations nécessaires pour modifier l'autorisation sur ce fichier? –

+0

Pas tout à fait familier avec ces fonctions, mais en fonction des commentaires sur les documents php, vous devrez peut-être mettre votre numéro de mode (0777) dans la fonction 'octdec()' à la place des guillemets. – yanman1234

Répondre

0

Le problème a à voir avec la conversion de données. En passant juste dans la chaîne $ chmod, il est converti en 777, ce qui ne vous donne pas envie. octdec ("0777") affichera 511 que la valeur décimale donnera à chmod la valeur que vous voulez.

+0

Oui! Merci mec. –

0

Vérifiez le chemin du fichier et le nom du fichier est correct! alors essayez ceci

chmod("/somedir/somefile", 0755); 
+0

Cela fonctionne façon. Mais je veux le changer de l'entrant. –