2014-03-05 89 views
-1

我有下面的代码...这是第二个文件正在上传的形式,但我不断收到错误。我正在尝试上传.php文件。我使用相同的代码来上传一个.jpg并且它工作正常!上传一个php文件到服务器使用php

$allowedExts = array("php"); 
$temp = explode(".", $_FILES["file2"]["name"]); 
$extension = end($temp); 
if ((($_FILES["file2"]["type"] == "image/php")) 
&& in_array($extension, $allowedExts)) 
    { 

    if ($_FILES["file2"]["error"] > 0) 
    { 
    echo "Return Code: " . $_FILES["file2"]["error"] . "<br>"; 
    } 
    else 
    { 
    echo "<br /><br />Upload: " . $_FILES["file2"]["name"] . "<br>"; 
    echo "Type: " . $_FILES["file2"]["type"] . "<br>"; 
    echo "Size: " . ($_FILES["file2"]["size"]/1024) . " kB<br>"; 
    echo "Temp file: " . $_FILES["file2"]["tmp_name"] . "<br>"; 

    if (file_exists("trip/" . $_FILES["file2"]["name"])) 
     { 
     echo $_FILES["file2"]["name"] . " already exists. "; 
     } 
    else 
     { 
     move_uploaded_file($_FILES["file2"]["tmp_name"], 
     "trip/" . $_FILES["file2"]["name"]); 
     echo "Stored in:" . "trip/" . $_FILES["file2"]["name"]; 
     } 
    } 
    } 
else 
    { 
    echo "Invalid file2"; 
    } 
+1

这是一个坏主意。 – Daedalus

+0

以一种形式上传2个文件? – user3015838

+0

真是个坏主意......就像在胖人身边留下一块蛋糕...... – jycr753

回答

0

上传.php文件确实不安全,我不会推荐这么做。
但是,如果你真的想学习或任何其它原因要这样做,错误是在这里:

"image/php" 

PHP的MIME类型不"image/php"。尝试"text/php"

0

删除此

if ((($_FILES["file2"]["type"] == "image/php")) 
&& in_array($extension, $allowedExts)) 
{ 

或正确地写入扩展,因为有与PHP扩展没有图像

会是这样

if (
($_FILES["file2"]["type"] == "image/jpeg") 
($_FILES["file2"]["type"] == "text/php") 
) 
{ 

这里有图像扩展JPEG,PNG,。 ..和文本有像PHP,HTML,扩展...

相关问题