我有一个表单包含用于图像上传的多个输入。 它是一个jQuery File Upload库 如何使用不同的输入文件上传多张图像。 我不使用WANNA SINGLE输入来选择多个文件。 每个图像应从不同的输入上传。
这是我的HTML
<label>Upload Question Image</label>
<div id="questionImageUploader">Upload Question Image</div>
<br>
<label>Upload Option A Image</label>
<div id="questionOptionAUploader">Upload Option A Image</div>
<br>
<label>Upload Option B Image</label>
<div id="questionOptionBUploader">Upload Option B Image</div>
<br>
<label>Upload Option C Image</label>
<div id="questionOptionCUploader">Upload Option C Image</div>
<br>
<label>Upload Option D Image</label>
<div id="questionOptionDUploader">Upload Option D Image</div>
这是触发上传的脚本。
通知:我使用相同的网址上传所有文件。只需帮助我处理我的php文件,我将如何将所有这些文件保存在那里,因为每个文件都有不同的名称。
<script type="text/javascript">
var testSelected = false;
var testCatgeorySelected = false;
var checkFilesUploaded = false;
var questionImageFileUploadStatus = false;
var optionAFileUploadStatus = false;
var optionBFileUploadStatus = false;
var optionCFileUploadStatus = false;
var optionDFileUploadStatus = false;
// UPLOAD QUESTION IMAGE
var questionImageUploader = $('#questionImageUploader').uploadFile({
url:"admin/teaching-test/TeachingTest/insert_question",
fileName: "questionImage",
multiple:false,
maxFileCount:1,
showAbort:true,
showPreview:true,
previewHeight: "120px",
previewWidth: "90px",
autoSubmit:false,
dynamicFormData: function()
{
var data ={
'questionEng':$('#questionEng').val(),
'questionHindi':$('#questionHindi').val(),
'questionOptionAEng':$('#questionOptionAEng').val(),
'questionOptionBEng':$('#questionOptionBEng').val(),
'questionOptionCEng':$('#questionOptionCEng').val(),
'questionOptionDEng':$('#questionOptionDEng').val(),
'questionOptionAHindi':$('#questionOptionAHindi').val(),
'questionOptionBHindi':$('#questionOptionBHindi').val(),
'questionOptionCHindi':$('#questionOptionCHindi').val(),
'questionOptionDHindi':$('#questionOptionDHindi').val(),
'correctAnswerEng':$('#correctAnswerEng').val(),
'correctAnswerHindi':$('#correctAnswerHindi').val()
}
return data;
},
onSuccess:function(files,data,xhr,pd)
{
checkFilesUploaded = true;
questionImageFileUploadStatus = true;
},
onError: function(files,status,errMsg,pd)
{
checkFilesUploaded = false;
questionImageFileUploadStatus = false;
swal('Image Uploading','Question Image uploading failed Contact Developer','error');
}
});
// UPLOAD OPTION A IMAGE
var OptionAImageUploader = $('#questionOptionAUploader').uploadFile({
url:"admin/teaching-test/TeachingTest/insert_question",
fileName: "optionAImage",
multiple:false,
maxFileCount:1,
showAbort:true,
showPreview:true,
previewHeight: "120px",
previewWidth: "90px",
autoSubmit:false,
dynamicFormData: function()
{
var data ={
'questionEng':$('#questionEng').val(),
'questionHindi':$('#questionHindi').val(),
'questionOptionAEng':$('#questionOptionAEng').val(),
'questionOptionBEng':$('#questionOptionBEng').val(),
'questionOptionCEng':$('#questionOptionCEng').val(),
'questionOptionDEng':$('#questionOptionDEng').val(),
'questionOptionAHindi':$('#questionOptionAHindi').val(),
'questionOptionBHindi':$('#questionOptionBHindi').val(),
'questionOptionCHindi':$('#questionOptionCHindi').val(),
'questionOptionDHindi':$('#questionOptionDHindi').val(),
'correctAnswerEng':$('#correctAnswerEng').val(),
'correctAnswerHindi':$('#correctAnswerHindi').val()
}
return data;
},
onSuccess:function(files,data,xhr,pd)
{
checkFilesUploaded = true;
optionAFileUploadStatus = true;
},
onError: function(files,status,errMsg,pd)
{
checkFilesUploaded = false;
optionAFileUploadStatus = false;
swal('Image Uploading','Option A Image uploading failed Contact Developer','error');
}
});
</script>
这是我的php(codeigniter)文件。
public function insert_question()
{
$config['upload_path'] = realpath(FCPATH.'/teaching_test/');
$config['allowed_types'] = 'jpg|jpeg|gif';
$config['max_size'] = '10000000';
$config['overwrite'] = TRUE;
$config['encrypt_name'] = FALSE;
$config['remove_spaces'] = TRUE;
if ( ! is_dir($config['upload_path']) ) die("THE UPLOAD DIRECTORY DOES NOT EXIST");
$this->load->library('upload', $config);
$this->upload->initialize($config);
// just geting one file with name questionImage how can i get other files here.
if ( ! $this->upload->do_upload('questionImage')) {
echo 'error';
} else {
// GET DATA FROM POST
$questionArray = array(
'questionTestCategory' => $this->input->post('teachingCategorySelect'),
'questionTestID' => $this->input->post('testSelect'),
'questionEng' => $this->input->post('questionEng'),
'questionHindi' => $this->input->post('questionHindi'),
'questionOptionAEng' => $this->input->post('questionOptionAEng'),
'questionOptionBEng' => $this->input->post('questionOptionBEng'),
'questionOptionCEng' => $this->input->post('questionOptionCEng'),
'questionOptionDEng' => $this->input->post('questionOptionDEng'),
'questionOptionAHindi' => $this->input->post('questionOptionAHindi'),
'questionOptionBHindi' => $this->input->post('questionOptionBHindi'),
'questionOptionCHindi' => $this->input->post('questionOptionCHindi'),
'questionOptionDHindi' => $this->input->post('questionOptionDHindi'),
'correctAnswerEng' => $this->input->post('correctAnswerEng'),
'correctAnswerHindi' => $this->input->post('correctAnswerHindi'),
'test_type_id' => 1
);
print_r($questionArray);
}
}