2013-11-25 18 views
1

您是否有任何示例代碼或函數來檢查在上傳之前圖像名稱是否已存在於文件夾中? 我使用file_exists()嘗試,但它不工作,這是我的示例代碼:如果在上傳之前已經存在於文件夾中,請檢查圖像 - Codeginiter

$path = FCPATH . "images2/"; 
$filename=$_FILE['userfile']; 
$full_path = $path .$filename; 
if(file_exists($filename)) 
{ 
///display error message/// 
} 
+0

你是什麼意思是否存在?如果文件* WAS *上傳了?或者如果它在一個文件夾中? 「不起作用」是最糟糕的描述,顯示錯誤,顯示日誌等; – Jakub

+0

@Jakub - 檢查文件或文件名是否已經存在於文件夾中。 – Yaj

+0

如果您認爲您可能需要包含相似的名稱,則可以隨時在文件名稱中添加類似隨機4位字符串的內容,作爲上傳/保存過程的一部分。 – cartalot

回答

0

我假設你不與file_exists()得到正確的結果,因爲你不包括全路徑(甚至你定義它)。

嘗試使用以下:file_exists($full_path)

也可以考慮使用一些CI輔助函數用於處理文件,如圖片,或上傳。他們在那裏讓這個'更容易'。

文件幫手:
http://ellislab.com/codeigniter/user-guide/helpers/file_helper.html

+0

檢查仍然得到eror:遇到 一個PHP錯誤 嚴重性:注意 消息:未定義的變量:_FILE – Yaj

+0

謝謝,我已經通過更新修復它: $ filename = $ _ FILES ['userfile'] 至 $ filename = $ _ FILES ['userfile'] ['name']; – Yaj

+0

NP,查看指南,CI有很多輔助功能,使圖像操作更容易。 – Jakub

1

這裏是檢查最簡單的方法,如果文件存在:

if(is_file($filename){ 
    return true; //the file exist 
}else{ 
    return false; //the file does not exist 
} 
相關問題