我是新手,本來是學習java的,但剛一進公司就搞php網頁,一點都不懂啊,這兩天經理讓我做個上傳壓縮檔的按鈕,可以上傳,但在目標檔案裡卻接收不到我上傳的檔案,我把代碼複製過來,希望各路大俠能給指點下,感激不盡。
/*
Uploadify
Copyright (c) 2012 Reactive Apps, Ronnie Garcia
Released under the MIT License
*/
$targetFolder = '/nrgl/photos'; // Relative to the root
$uuid=$_GET['uuid'];
//$verifyToken = md5('unique_salt' . $_POST['timestamp']);
//if (!empty($_FILES) && $_POST['token'] == $verifyToken) {
$rand=rand(0,999999999);
//if (!empty($_FILES) && $_POST['token'] == $verifyToken) {
$tempFile = $_FILES['Filedata']['tmp_name'];
$targetPath = $_SERVER['DOCUMENT_ROOT'] . $targetFolder;
$targetFile =rtrim($targetPath,'/') . '/'.$rand.'.' .substr($_FILES['Filedata']['name'],-3,3);
// Validate the file type
$fileTypes = array('zip','rar','doc'); // File extensions
$fileParts = pathinfo($_FILES['Filedata']['name']);
if (in_array($fileParts['extension'],$fileTypes)) {
move_uploaded_file($tempFile,$targetFile);
echo $targetFile;
} else {
echo '1';
}
回複討論(解決方案)
上傳後的檔案將存放於 $targetPath 指向的目錄中
請確認該目錄真實存在,並有寫入權限
同上!!!
目錄是真實存在的,可是我一開始是上傳到c盤的,可能c盤是系統硬碟不能上傳上去,之後我改到E盤,可還是上傳不上去,並且檔案夾的屬性是唯讀狀態,改不掉,這種情況是怎麼回事呢?是檔案夾屬性的原因,還是My Code有問題,請大牛們仔細幫我看下吧,非常感謝啊,我搞這個小按鈕已經一個星期了。
我把$targetFolder = '/nrgl/photos'改成$targetFolder = 'E:\\photos';並且把$targetPath = $_SERVER['DOCUMENT_ROOT'] . $targetFolder改成$targetPath = $targetFolder;不知道代碼改的對不對,懇請指點!
因為$targetFolder = '/nrgl/photos'是相對路徑,所以我把$_SERVER['DOCUMENT_ROOT'] .去掉了,不知道對不對。 應該不是目錄是否存在的問題和許可權的問題吧,因為我一開始上傳照片都能上傳進去。