2013-12-20 116 views
0

在PHP中,是否可以將文件上傳到服務器?如果是這樣,那麼我如何創建一個上傳表單並將文件插入到特定頁面?任何擴展圖像:.jpeg .gif或文件:.txt .pdf等我使用XAMPP(localhost查看我的網站)。在PHP中,是否可以將文件上傳到服務器?

我已經嘗試過很多教程,但有很多錯誤。

這是這個HTML文件:

<form action="fileupload.php" method="post" enctype="multipart/form-data"> 
<label for="file">Filename:</label> 
<input type="file" name="file" id="file" /> 
<br /> 
<input type="submit" name="submit" value="Submit" /> 
</form> 

這裏是PHP腳本:

if ($_FILES["file"]["error"] > 0) 
{ 
    echo "Error: " . $_FILES["file"]["error"] . "<br />"; 
} 
else 
{ 
    echo "Upload: " . $_FILES["file"]["name"] . "<br />"; 
    echo "Type: " . $_FILES["file"]["type"] . "<br />"; 
    echo "Size: " . ($_FILES["file"]["size"]/1024) . " Kb<br />"; 
    echo "Stored in: " . $_FILES["file"]["tmp_name"]; 
} 

結果是這個樣子:

上傳:(文件在這裏)
類型:圖片/ jpeg
大小:757.521484375 Kb
中存儲:在C(臨時文件:

但每當我發現我的tmp文件夾的文件。無處可尋。

+0

你有沒有先試過自己?如果是,那麼告訴我們問題 –

+0

什麼Harshal的意思是說http://www.w3schools.com/php/php_file_upload.asp – gb056

+1

http://www.w3fools.com/ – DanFromGermany

回答

0
function getExtension($str) 
    { 
     $i = strrpos($str,"."); 
     if (!$i) 
     { 
      return ""; 
     } 
     $l = strlen($str) - $i; 
     $ext = substr($str,$i+1,$l); 
     return $ext; 
    } 

    $extension = getExtension($filename); 
    $extension = strtolower($extension); 
    if($extension=="jpg" || $extension=="jpeg" || $extension=="gif" || $extension=="txt" || $extension=="pdf"){ 

    echo "Upload: " . $_FILES["file"]["name"] . "<br />"; 
    echo "Type: " . $_FILES["file"]["type"] . "<br />"; 
    echo "Size: " . ($_FILES["file"]["size"]/1024) . " Kb<br />"; 
    move_uploaded_file($_FILES["file"]["tmp_name"],"upload/" .date("d_m_h_i_s"). $_FILES["file"]["name"]); 

    } 

getExtension函數有助於獲取文件的擴展名。這些文件將被上傳到上傳文件夾。

相關問題