2017-05-08 24 views
0

我如何上傳文件,並使用PHP, 我試圖讓他們移動到他們的角度他們的文件夾格式的文件上傳腳本自動上傳我如何根據使用PHP

圖像,如JPG和PNG爲JPG /文件夾 MP3播放,MP3 /文件夾 和MP4 FLV MPEG到MP4文件夾

<?php 
$ds   = DIRECTORY_SEPARATOR; 

$jpg = "jpg/"; 
$mp3 = "mp3/"; 
$mp4 = "mp4/"; 


if (!empty($_FILES)) 
{ 
    if(substr($_FILES['file']['name'], -3) == "mp3") 
    { 
    $destination = substr($_FILES['file']['name'], -3); 
    $file  = $_FILES['file']['name']; 

    echo "this : " . $mp3,$destination . $ds; 
    move_uploaded_file($mp3,$destination . $ds) or die("mp3 error"); 
    echo "uploaded : " . $file . "<br>"; 
    } 
    else if(substr($_FILES['file']['name'], -3) == "mp4" or substr($_FILES['file']['name'], -3) == "mp4" or substr($_FILES['file']['name'], -4) == "mpeg") 
    { 
    $destination = substr($_FILES['file']['name'], -3); 
    $file  = $_FILES['file']['name']; 

    move_uploaded_file($mp4,$destination . $ds) or die("mp4 error"); 
    echo "uploaded : " . $file . "<br>"; 
    } 
    else if(substr($_FILES['file']['name'], -3) == "jpg" or substr($_FILES['file']['name'], -3) == "png") 
    { 
    $destination = substr($_FILES['file']['name'], -3); 
    $file  = $_FILES['file']['name']; 

    move_uploaded_file($jpg,$destination . $ds) or die("jpg error"); 
    echo "uploaded : " . $file . "<br>"; 
    } 
    else 
    { 

    } 
} 
?> 
+0

什麼?你的腳本有效或什麼? –

+0

不,它不工作我要達成死亡()在每個格式 –

+0

'$ XXX,$目的地。 $ ds' - 這裏不應該有'$ ds'。這轉換爲'folder/file.xxx /'導致錯誤。 –

回答

0

move_uploaded_filemanual

第一個參數是「上傳文件的文件名」。你通過什麼:

move_uploaded_file($mp3,$destination . $ds) 

$mp3文件夾mp3

通常您需要通過$_FILES['file']['tmp_name']作爲第一個參數。

第二個音符 - concatenation $destination . $ds返回什麼?

如果是music.mp3文件,它將是mp3/

所以你打電話move_uploaded_file與參數:

move_uploaded_file('mp3/', 'mp3/'); 

你真的想要嗎?

所以,simpliest解決方法是(用於MP3的情況下):

move_uploaded_file($_FILES['file']['tmp_name'], $mp3 . $_FILES['file']['name']); 

在這種情況下,文件將被保存在文件夾mp3在同一水平上與文件的原始名稱腳本。

還要確保mp3文件夾存在並具有適當的權限