通过JavaScript发送图片上传的帖子请求

时间:2014-05-26 22:57:43

标签: javascript php jquery post

我有一个HTML表单,我试图通过它上传图片。

<form id="imageform" method="post" enctype="multipart/form-data" action='upload.php'>
    Upload image <input type="file" name="file" id="file" />
</form>

<div id='preview'>
</div>

我想使用JavaScript上传运行upload.php,因此页面无需刷新。然后我想在#preview显示输出。

$(document).ready(function() { 
    $('#file').live('change', function() {
        $("#preview").html('');
        $("#preview").html('Uploading...');
        $.post("upload.php",$("#imageform").serialize(), function(data){
            $("#preview").html(data);
        });
    });
}); 

然而,我在div中遇到了很多这样的错误。我知道数据没有通过,但我该如何解决呢?

Notice: Undefined index: file in /path/upload.php on line 14

我在Google上搜索了一些内容,但我收到了同样的问题。

2 个答案:

答案 0 :(得分:-2)

您无法通过AJAX发送文件。无论如何,以这种方式。您需要使用新的HTML5方式:例如http://blog.teamtreehouse.com/uploading-files-ajax或使用某种利用某些iframe黑客的插件:例如https://github.com/blueimp/jQuery-File-Upload

答案 1 :(得分:-3)

您需要关闭PHP中的错误报告或修复upload.php中的错误。 PHP错误报告:http://www.php.net/manual/en/function.error-reporting.php

E.g。

error_reporting(0);