У меня есть форма с несколькими полями. Кроме того, форма отправляется через метод данных формы с использованием ajax в файл php.
Ниже приведен код javascript, передающий данные формы. Я загружаю несколько файлов в каждый входной файл, и мне нужно отправить идентификатор при отправке с массивом файлов ... Каждый раз, когда я загружаю файл и при нажатии на кнопку отправить, я я получаю последнюю итерацию referral_id цикла foreach .... пожалуйста, кто-нибудь может мне помочь, где я ошибся ....
<form method="post" action="" enctype="multipart/form-data" id="uploadforms" onsubmit="return submitForm();">
<?php
foreach($result as $value)
{?>
<div class="form-group">
<h2>Choose Files</h2>
<h3><?php echo $value->test_name;?></h3>
<input type="file" name="files[]" class="form-control filein" id="files" multiple />
<input type="text" name="referral_id" class="form-control" value="<?php echo $value->ID;?>" />
</div>
<div class="form-group">
<input type="submit" name="fileSubmit" value="UPLOAD" data-referralid="<?php echo $value->ID;?>" id="submitbtn"/>
</div>
<?php
}
?>
</form>
Я хочу опубликовать referral_id, который передается при вводе ввода .... Я не получаю сообщение об ошибке .... данные отправляются, но когда я загружаю первую кнопку отправки итерации и отправляю форму, я получаю последний итерация referral_id. Предположим, что массив для referral_id равен $ referral_id = array (1, 2, 3, 4); Каждый раз, когда я отправляю, я получаю 4 в качестве вывода
$("form").submit(function(evt){
evt.preventDefault();
var referral_id=$("#submitbtn").data('referralid');
alert(referral_id);
var formData = new FormData($('#uploadforms')[0]);
console.log(formData);
$.ajax({
url: '<?php echo base_url("Upload_Files1"); ?>',
type: 'POST',
data: {referral_id: referral_id, files: formData},
async: false,
cache: false,
contentType: false,
enctype: 'multipart/form-data',
processData: false,
success: function (response) {
alert(response);
}
});
return false;
});