2010-09-02 98 views
0

我想我的服務器上從一個文件夾移動文件到另一個使用PHP重命名功能,但我得到這個錯誤PHP重命名功能問題

警告:重命名(/家/ pramiro /public_html/new/cipri/adauga/tmp/Koala.jpg,/home/pramiro/public_html/new/images/memo/Koala.jpg)[function.rename]:/ home/pramiro/public_html中沒有這樣的文件或目錄第13行

的路徑是好的,這些文件夾存在並且要複製的文件是在TMP folder.What /new/cipri/adauga/categorie.php可能,我是做錯了什麼?

這是代碼:

$filename=$_POST['poza_conv']; 
$filename=substr($filename,37); 
$old_path='/home/pramiro/public_html/new/cipri/adauga/tmp/'.$filename; 
$new_path=' /home/pramiro/public_html/new/images/'; 
switch($_POST['categorie_conv']) 
{ 
    case 'memo': $filename=$new_path.'memo/'.$filename; 
    break; 
    case 'ort_sup': $filename=$new_path.'ort_sup/'.$filename; 
    break; 
} 

rename($old_path,$filename); 
+1

可能是一個權限問題 – Randolpho 2010-09-02 18:23:50

+2

請顯示您正在使用的代碼。 – 2010-09-02 18:23:57

回答

4

這是你的錯誤:

$new_path=' /home/pramiro/public_html/new/images/'; 

有一個空格,只是/home之前,這是造成錯誤,所以它應該是:

$new_path='/home/pramiro/public_html/new/images/'; 

如果仍然得到錯誤,那麼下一個最有可能的罪魁禍首是,正如其他人所說的那樣,權限,特別是在你移動文件的目錄和文件本身上。

+1

是的!就是這樣!謝謝! – Vidi 2010-09-02 18:45:33

3

權限可能? PHP腳本可能不會在您自己的用戶帳戶下運行,並且如果PHP用戶沒有權限讀取文件,PHP將不會看到它們。

+0

那麼我應該使用哪些權限? – Vidi 2010-09-02 18:34:45

+0

你應該chmod文件到777 – 2010-09-02 18:35:26

+0

php或圖像?或者兩者兼而有之? – Vidi 2010-09-02 18:37:54

0

目標路徑/home/pramiro/public_html/new/images/memo/確實存在嗎?錯誤表明它沒有。

+0

它存在!甚至嘗試回聲getcwd(); – Vidi 2010-09-02 18:39:32

+0

@Vidi:你應該使用'is_dir($ new_path);'而不是'getcwd();'來檢查。 – BoltClock 2010-09-02 18:45:00