繁体   English   中英

文件上传在IE8,IE9中不起作用

[英]File upload not working in IE8, IE9

我正在尝试解决此问题,到目前为止我还没有运气。

我的文件上传只能在Chrome,Mozilla,Safari上运行,而不能在IE 8或9上运行。它只能挂在Internet Explorer中,直到超时。 代码如下。

在这里,我正在寻找错误代码“ 0 ”,这意味着成功。 如果用户进行了任何操作,但选择了文档,则执行以下代码。如果是文档,则转到代码的else部分。

在第一部分中,我在变量中设置了新文件路径。 检查它是否没有上传,如果没有,则向用户发送消息。 如果成功,则将一些值插入表中。 然后,我使用函数move_uploaded_file将临时文件移动到目录中。 如果它是一个文档,那么我在else部分下面执行代码。 我在哪里错了? 任何想法都是有帮助的。

这是我的代码。

if ($_FILES['image']['error'] == 0) {

    if ($_POST['type'] != 'document') {

        $newFile = "/var/www/localhost/htdocs/digital-materials/images/products/".basename($_FILES['image']['name']);

        if (!move_uploaded_file($_FILES['image']['tmp_name'],$newFile)) {
            echo "<h1>Error uploading file ".$_FILES['image']['name']."</h1>$newFile<br />\n";
        } else {
            error_reporting(E_ALL);
            $escapedPost = array_map('mysql_real_escape_string', $_POST);
            extract($escapedPost);
            $sql = "INSERT INTO digital_materials (`itemName`,`itemDesc`,`imageURL`,`language`,`category`,`size`,`flagDesc`,`type`,`description`,`fileURL`) VALUES ('$itemName','$itemDesc','".basename($_FILES['image']['name'])."','$language','$category','".basename($_FILES['image']['size'])."','$itemDesc','$category','$itemDesc','".basename($_FILES['image']['name'])."')";
            $res = mysql_query($sql);
            move_uploaded_file($_FILES['image']['tmp_name'],$newFile);
            echo "<h1>File has been uploaded</h1><br />\n";
        }

    } else {

        print_r($_FILES);
        $newFile = "/var/www/localhost/htdocs/digital-materials/documents/".basename($_FILES['image']['name']);
        $file = $_FILES['image']['tmp_name'];
        move_uploaded_file($file,$newFile);

    }
}

表单代码如下

<form method='post' action='digital-materials-admin.php' enctype='multipart/form-data'>
            <input type='hidden' name='newItem' value='1' />
            <div class='add-new-input'>
                <div>Item Name:</div><input type='text' name='itemName' />
            </div>
            <div class='add-new-input'>
                <div>File:</div><input type='file' name='image' />
            </div>
            <div class='add-new-input'>
                <div>Type:</div>
                    <select name='type'>
                        <option value='default'>Please Select a Type</option>
                        <option value='image'>Image</option>
                        <option value='Photos'>Photo</option>
                        <option value='Logos'>Logo</option>
                        <option value='document'>Document</option>
                    </select>
            </div>
            <div id='typeSelect'></div>
            <div class='add-new-input'>
            <div>Category</div>
                <select name='category'>
                    <option value='default'>Please Select a Category</option>
                    <option value='Logos'>Logos</option>
                    <option value='Presentations'>Presentations</option>
                    <option value='Photos'>Photos</option>
                    <option value='PDF'>PDF</option>
                    <option value='CAD'>Cad Drawing</option>
                    <option value='Word'>Word Documents</option>
                    <option value='Spreadsheets'>Spreadsheets</option>
                </select>
            </div>
            <div id='categorySelect'></div>
            <div class='add-new-input'>
                <div>Item Description:</div><textarea rows='3' cols='40' name='itemDesc'></textarea>
            </div>
            <div class='add-new-input'>
                <div>Language:</div><input type='text' name='language' id='language' />
            </div>
            <div class='add-new-input'>
                <div>Flag Text:</div><input type='text' name='flagDesc' />
            </div>
            <div class='add-new-input'>
                <input type='submit' value='Add Item' id='submit-button' />
            </div>
        </form>

CSS代码

#imageWarn {
    width: 300px;
    position: relative;
    left: 200px;
    color: red;
    font-size: 12px;
    padding-bottom: 15px;
}

.add-new-input {
    vertical-align:top;
    padding-bottom:10px;
}
.add-new-input input, textarea, select {
    width:300px;
}
.add-new-input div {
    width:200px;
    font-size:12pt;
    clear:none;
    display:inline-block;
    vertical-align:top;
}
#submit-button {
    width:100px;
}

尝试将其添加到您的表单

<input type="hidden" name="MAX_FILE_SIZE" value="MaxFileSizeInBytes">

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM