我想在遠程主機上上傳圖片(本地一切正常)。爲什麼我不能在PHP中使用chmod()上傳文件?
我用下面的代碼就像我的其他以前的項目做到這一點:
if (move_uploaded_file($_FILES["scan"]["tmp_name"], 'images/scans/1.jpg')) {
chmod ('images/scans/1.jpg','0644');
}
但每次我運行在互聯網這個代碼的時候,我得到一個錯誤:
Warning: move_uploaded_file(images/profile/Mordent.jpg) [function.move-uploaded-file]: failed to open stream: Permission denied in ...
我必須將scans
目錄權限更改爲然後我才能上傳圖像。否則我不能。這對我來說很奇怪。我在很多時候都在不同的項目中使用過這些代碼,並且我沒有任何問題。
也許這個問題可以幫助你 http://stackoverflow.com/questions/8776348/php-script-not-processing – fkerber 2012-01-08 12:31:07
運行'chmod()'取整數,提供一個表達式爲八進制數的整數容易產生意想不到的結果。爲了清楚起見,您應該傳遞一個十進制整數(如果需要/需要,可以使用字符串)或刪除圍繞八進制數的引號。我知道這裏沒有問題,因爲在到達'chmod()'之前發生的錯誤仍然值得注意。 – DaveRandom 2012-01-08 12:46:53
我做了你的建議並刪除了引號。謝謝。但正如你所說,問題仍然存在 – 2012-01-08 16:48:26