无论我上传什么,上面都会显示错误

时间:2013-12-18 23:57:06

标签: php html

当我将文件上传到网站时,它不会接受我上传到网站的文件!

问题是每次我尝试将图片上传到服务器时都会显示“错误”。

我想要它只是采用图像类型的png,jpg和jpeg文件。

图片仅 105 KB

我有

 enctype="multipart/form-data"

在我的表格上

PHP

<?php
if(isset($_POST["TYupdater2"]))
{
    $allowedExts = array("jpeg", "jpg", "png");
    $temp = explode(".", $_FILES["file"]["name"]);
    $extension = end($temp);
    if((($_FILES["file"]["type"] == "image/jpeg") || ($_FILES["file"]["type"] == "image/jpg") || ($_FILES["file"]["type"] == "image/pjpeg") || ($_FILES["file"]["type"] == "image/x-png") || ($_FILES["file"]["type"] == "image/png")) && ($_FILES["file"]["size"] < 20000) && in_array($extension, $allowedExts))
    {
        echo "Are now upload to server.";
    }
    else
    {
    ?>
    <div id="error">Error!</div>
    <?php
    }
}
?>

HTML

<form action="<?php $_SERVER['PHP_SELF'];?>" method="post" name="bruger-info" enctype="multipart/form-data">
<table width="90%" cellpadding="1" cellspacing="1">
<tr>
        <td>Billede</td>
        <td><input type="file" name="file" id="uploadimg"></td>
    </tr>
    <tr>
        <td></td>
        <td><input type="submit" name="TYupdater2" class="click kliknu" value="Upload"></td>
    </tr>
    <?php
        $mitpanelimg = $mebe->mitpanelimg();//Upload picture here //uploader billedet her
    ?>
</table>

3 个答案:

答案 0 :(得分:0)

此脚本可能会有效地上传到您的服务器。但是,到临时文件夹。当脚本结束删除上传的文件时,此文件夹将被清空。

你需要将你的文件move_uploaded_file()移到你要保存的地方。

需要考虑的其他事项: 正在上传多少个文件? 用户是否有可能上传具有相同名称的文件? 很多相机都像IMG0001那样命名

文件上传很可怕。如果脚本说...一个.php扩展名,那么脚本是否会失败?

我可以上传一个只包含以下代码的php文件吗?          我不知道这是否有效。通过它理论上删除根目录。

这是一本很好的读物。 http://www.php.net/manual/en/features.file-upload.php

Dony害怕手册!没有move_uploaded_file你的脚本永远不会工作 - 给它一个读取!

答案 1 :(得分:0)

您的问题只是文件大小检查。

如手册所述:

$_FILES['userfile']['size']
   The size, in bytes, of the uploaded file.

所以你的if语句有:($_FILES["file"]["size"] < 20000)这意味着如果你的文件大于〜20Kb,那么〜20kb总是会变错

如果您的文件是105 KB,则必须将此部件更改为更大的尺寸 ($_FILES["file"]["size"] < 512000)表示512Kb

答案 2 :(得分:0)

:)尝试计算($ _FILES [“file”] [“size”]&lt; 20000)。它的&lt; 20K。您上传图片(105K)。