Php 使用ajax上载多个文件
我有一个简单的表单,允许用户上传评论文本和文件到服务器。提交表单时,文件上传过程在“upload.php”文件中处理。只上传一个文件就可以了 我希望我的脚本能够使用AJAX上传多个文件 这就是我到目前为止所做的- HTML(部分内容):Php 使用ajax上载多个文件,php,ajax,file-upload,Php,Ajax,File Upload,我有一个简单的表单,允许用户上传评论文本和文件到服务器。提交表单时,文件上传过程在“upload.php”文件中处理。只上传一个文件就可以了 我希望我的脚本能够使用AJAX上传多个文件 这就是我到目前为止所做的- HTML(部分内容): 在这里,您可以获得与第一个文件输入关联的文件内容 几行之后(在相邻的行中会更有意义),您将该数据放入表单数据对象中: 只需为循环使用,并用循环迭代变量替换0。这里您可以获得与第一个文件输入相关联的文件内容 几行之后(在相邻的行中会更有意义),您将该数据放入表单数
在这里,您可以获得与第一个文件输入关联的文件内容 几行之后(在相邻的行中会更有意义),您将该数据放入表单数据对象中:
只需为循环使用
,并用循环迭代变量替换0
。这里您可以获得与第一个文件输入相关联的文件内容
几行之后(在相邻的行中会更有意义),您将该数据放入表单数据对象中:
只需为
循环使用,并用循环迭代变量替换0
。Hi,roi,还需要您的upload.php文件来了解您是否使用了循环来检查$\u文件是否有一个或多个文件。更多…您需要检查form_data javascript变量发送的内容。@MarmikBhatt-hi,如果upload.php将接收文件,我会很好。我只是无法将它们传输到服务器端……嗨,roi,还需要您的upload.php文件来理解您是否使用了循环来检查$\u文件是否有一个或多个文件。更多…您需要检查form_data javascript变量发送的内容。@MarmikBhatt-hi,如果upload.php将接收文件,我会很好。我只是在将它们传输到服务器端时遇到了问题…你能帮我处理脚本中的“for”循环吗?有什么问题吗?你只是在一个数组上循环(或者至少是一个与数组足够接近的东西,它不会有什么区别),这就是JavaScript 101。如果我对js语法不够熟悉,问题就出在这里了…:/我习惯在服务器端工作…顺便说一句-为什么我不能标记你的名字(@Quentin)你能帮我处理脚本中的“for”循环吗?有什么问题吗?你只是在一个数组上循环(或者至少是一个与数组足够接近的东西,它不会有什么区别),这就是JavaScript 101。如果我对js语法不够熟悉,问题就出在这里了…:/我习惯在服务器端工作…顺便说一句-为什么我不能标记你的名字(@Quentin)
<input type='file' name='file[]' maxlength='1' accept="image/jpg,image/png,image/jpeg,image/gif" />
<input type='file' name='file[]' maxlength='1' accept="image/jpg,image/png,image/jpeg,image/gif" />
<input type='file' name='file[]' maxlength='1' accept="image/jpg,image/png,image/jpeg,image/gif" />
$(function() {
$(document).on('submit','form',function(e) {
e.preventDefault();
var $form = $(this);
var file_data = $form.find('.file-field').prop('files')[0];
var form_data = new FormData();
form_data.append('act', act);
form_data.append('comment[text]', $form.find('.comment-field').val());
form_data.append('comment[pageName]', $form.find('.pagename-field').val());
form_data.append('file[]', file_data);
$.ajax({
type: "POST",
url: "ajax/addComment.php",
dataType: 'text',
cache: false,
contentType: false,
processData: false,
async: false,
data: form_data,
success: function(data)
{
$("#loader").hide();
$('#commentsBox'+$form.find('.refid-field').val()).prepend(data);
$("form").reset();
}
});
return false;
});
});
var file_data = $form.find('.file-field').prop('files')[0];
form_data.append('file[]', file_data);