【发布时间】:2016-10-05 10:51:44
【问题描述】:
我需要通过 post 将表单的克隆区域传递给 PHP,然后将每个区域传递给数组。
我的代码
<div class="input-main white_bg cloneneedsanalysis">
<div class="action-input clone-needs-analysis">
<div class="action-input-white-shorter">
<div class="inner-sub-title-less-padding">
<p>Audience Analysis</p>
</div>
<div class="col-md-12">
<div class="form-group">
<select class="select2 select2-multiple" multiple="multiple" data-placeholder="Choose ..." name="needs_analysis[]">
<option value="">-- Choose Audience Categories --</option>
<option value="536"> Finance - - Cash collection </option>
<option value="537"> IT - - Comms IT </option>
<option value="538"> Strategy - - Strategy team 1 </option>
</select>
</div>
</div>
</div>
<div class="action-input-plus-needs-analysis"> </div>
<div class="action-input-remove-needs-analysis"> </div>
</div>
</div>
克隆有效,但是当我通过 POST 发送到 PHP 时,它只会捕获最后一个,因为它们都被称为 needs_analysis[]
那么,在克隆时如何编辑名称以使其不同以及如何让 PHP 循环遍历每个数组?
我的 JQuery;
$(document).on('click', '.clone_needs_analysis_button', function(e) {
e.preventDefault();
$(this).closest('.clone-needs-analysis').clone().insertAfter('.cloneneedsanalysis:last');
$(this).closest('.action-input-plus').hide();
$(this).closest('.action-input-remove').removeClass('hidden');
我的PHP;
$needs_analysis = array();
foreach ($_POST['needs_analysis'] as $key => $value) {
$needs_analysis[$key]['audience_id'] = $value;
$needs_analysis[$key]['created'] = $_POST['updated'];
$needs_analysis[$key]['created_by'] = $_POST['updated_by'];
$needs_analysis[$key]['solution_id'] = $_POST['solution_id'];
}
foreach ($needs_analysis as $needs_analysis_insert) {
$db->insert('design_needs_analysis', $needs_analysis_insert);
}
【问题讨论】:
-
您的其他输入(例如由 ,audience 创建的更新)在哪里?
标签: javascript php jquery html arrays