2014-04-26 95 views
1

我可以將文件夾路徑插入到數據庫中,但圖片文件似乎沒有移動到該文件夾​​中?不能move_uploaded_file到文件夾

$pic = $_POST['pic']; 

$picName= $_FILES['pic']['name']; 

$type = $_FILES['pic']['type']; 

$tmp = $_FILES['pic']['tmp']; 

$picPath = "/pictures/"; 

    if(is_uploaded_file($tmp)) { 
     if(move_uploaded_file($tmp, $picPath . $picName)) { 
      echo "congrats! Image is uploaded."; 
     } 
     else { 
      echo "Sorry, couldn't move your picture."; 
     } 
    } 
    else { 
     echo "Sorry, couldn't upload your picture."; 
    } 

$picPath = $picPath . $picName; 

mysql_query("INSERT INTO User(pic) VALUES ('$picPath')"); 

我得到這個回聲信息:抱歉,無法上傳你的圖片。

php文件保存在public_html文件夾,我有一個圖片文件夾,我想要將用戶圖片移動到。

插入工作,因爲我可以將$ picPath存儲在我的數據庫中,但圖片不存儲在我的文件夾中。

回答

2

嘗試用

$tmp = $_FILES['pic']['tmp_name']; 
+0

謝謝。我不知道爲什麼'tmp_name'工作,而不是'tmp'。雖然我懷疑這是一個需要的關鍵字。 – Martynogea

+0

這些數組是由PHP設置的,它必須是'tmp_name',因爲這就是PHP如何做的 –

1

1替換

$tmp = $_FILES['pic']['tmp']; 

)檢查文件夾的權限如果可寫或沒有。
2)確保您的路徑與代碼中的相同文件夾名稱相同。
3)嘗試從此$picPath = "/pictures/";更改爲像這樣$picPath = "pictures/";刪除正斜槓。

相關問題