无法通过IE8发送文件

时间:2011-09-26 09:49:18

标签: php javascript jquery forms internet-explorer

我在通过IE8发送文件时遇到了一些问题。

var form = formAppend('', OBJ.uploadFileContainer);
form.enctype = 'multipart/form-data';
form.action = 'iCal/iCalUpload.php';
form.target = 'help';
form.method = 'post';
var input = inputAppend('[type=file][name=calendarFile]', form);
var id = inputAppend('[type=hidden][name=id]', form);
$(form).submit();

我获得了http 200状态,这很好。但在PHP中,我无法真正获取$_FILES['calendarFile']文件,它会发出警告未定义索引。它适用于所有浏览器版本,除了IE< 9.如何解决这个问题?

忘了提一下inputAppend()是我正在使用的DOM创建函数。它创建一个输入元素并使用jquery选择器添加属性。绝对没有错。

PHP代码

$errorMessage = 'invalid File';
if ($_FILES["calendarFile"]["size"] <   100000 && //Undefined Index Warning in PHP
    ($_FILES['calendarFile']['type'] == 'text/calendar' || $_FILES['file']['type'] == 'text/x-vcalendar')){
    if ($_FILES["calendarFile"]["error"] > 0){
        $errorMessage = $_FILES["calendarFile"]["error"];
    }else{
        $timeStamp = time();
        $errorMessage = 'The file was succesfully uploaded!';
        move_uploaded_file( $_FILES["calendarFile"]["tmp_name"], "upload/$timeStamp"."-".$_FILES['calendarFile']['name']);
    }
}

0 个答案:

没有答案