我有一个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上搜索了一些内容,但我收到了同样的问题。
答案 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);