Moin,
ich habe ein seltsames Problem mit chmod. Einen Fehler gibt es nicht, aber es werden die falschen Dateirechte gesetzt. Hier mein Code:
if($cmi) {
try {
chmod($_POST["filename"],(int)$chmod);
print '<span class="message">Sucessfully changed file permissions to '.$chmod.'.</span>';
} catch (Exception $e) {
print '<span class="error">There occured an error while changing file permissions to '.$_POST["filename"].'. Error: '.$e->getMessage().'</span>';
}
}
else print '<span class="error">The file permissions could not be set to '.$_POST["chmod"].'. Check syntax.</span>';
Der entsprechende Wert wird per Post übergeben ($_POST["chmod"]
). Vorher bearbeite ich den Wert noch etwas, damit man auch rwxrwxrwx eingeben kann. $chmod
hat am Ende entweder einen Wert in der Form 775, oder $cmi
ist false.
Ich habe schon probiert noch eine Null davor zu setzen (also 0775) oder per decoct($chmod)
umzuformen. Alles bringt keinen Erfolg.
Hier mal ein paar Beispiele:
- 777 wird 411
- 755 wird 363
- 644 wird 204
- 640 wird 200
Nur 000 bleibt 000, was aber keinem etwas bringt. Was mache ich falsch?
Grüße Marco