2012-11-20 79 views
4

我想使用php上传图像文件。我正在使用一个简单的文件上传代码,如www.w3schools.com/php/php_file_upload.asp,但有时php文件无法上传图像,PHP文件上传文件错误

图像不是那么大。一个只有130kb的大小,上传过程高达48%的罚款,然后很长一段时间后减慢达到72%,并给我一个错误“不完整的请求”。有没有什么办法可以解决这个问题。

编辑

代码:

$allowedExts = array("jpg", "jpeg", "gif", "png"); 
$extension = end(explode(".", $_FILES["file"]["name"])); 
if ((($_FILES["file"]["type"] == "image/gif") 
|| ($_FILES["file"]["type"] == "image/jpeg") 
|| ($_FILES["file"]["type"] == "image/png") 
|| ($_FILES["file"]["type"] == "image/pjpeg")) 
&& ($_FILES["file"]["size"] < 2000000) 
&& in_array($extension, $allowedExts)) 
    { 
    if ($_FILES["file"]["error"] > 0) 
    { 
    echo "Return Code: " . $_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 "Temp file: " . $_FILES["file"]["tmp_name"] . "<br />"; 

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

能否请您发布您的代码?这种方式很难看。通常这是由服务器上的配置问题引起的。然而,你似乎提到一些文件**实际上得到上传,是正确的? – Digitalis

+0

@Digitalis代码发布,是的一些照片确实上传,一些没有,他们从互联网下载,我试图在gmail和gmail上的相同图像上传图像很好,但在tumblr上有同样的问题 – rksh

+0

我我不敢在我的开发服务器上重现你的错误。祝你好运,但我不知道答案。 – Digitalis

回答

0

我想你应该先尝试

$foo = explode('.', $_FILES['file']['name']); 
$extension = end($foo); 

move_uploaded_file($_FILES["file"]["tmp_name"], 
        "upload/" . $_FILES["file"]["name"]); 
echo "Stored in: " . "upload/" . $_FILES["file"]["name"]; 

然后:

  • 增加的图像来uploa DED您的文件中
  • 然后所有内容的位置,创建要在其中存储您的图片文件夹,该文件夹应该命名为upload