Php 使用Foreach插入MYSQL

Php 使用Foreach插入MYSQL,php,Php,当我想添加 data1 sum1 data2 sum2 到数据库, 实际发生的情况: data1 data1 sum1 sum1 data2 data2 sum2 sum2 我的形式元素是 <input id="alan_" name="alanlar[]" type="text" class="form-control"> <input id="miktar_" name="alanlar[]" type="text" class="form-control">

当我想添加

data1 sum1
data2 sum2
到数据库, 实际发生的情况:

data1 data1
sum1 sum1
data2 data2
sum2 sum2
我的形式元素是

<input id="alan_" name="alanlar[]" type="text" class="form-control">
<input id="miktar_" name="alanlar[]" type="text" class="form-control">
Jquery代码:

var sayac = 1;
    $(function () {
        $('#ekle').click(function () {
            sayac += 1;
            $('#dersler tbody').append(
                '<tr><th><strong>Ders ' + sayac + '</strong></th><td><input id="alan_' + sayac + '" name="alanlar[]' + '" type="text" class="form-control" /></td><td><input id="miktar_' + sayac + '" name="alanlar[]' + '" type="text" class="form-control" /></td><td><a href="#" class="sil btn btn-danger">Sil</a></td></tr> ');
        });
var-sayac=1;
$(函数(){
$('#ekle')。单击(函数(){
sayac+=1;
$('#dersler tbody')。追加(
“Ders”+sayac+”);
});

谢谢大家。

合理设置表单控件名称大大增强了服务器上的表单数据处理:

HTML


这是因为您将两个值都带到单个数组中,因此无法区分它们。Foreach为两个值运行两次,而您为两个列插入相同的值

要解决此问题,请为这两个值使用不同的名称或定义不同的数组键

<input id="alan_" name="data[]" type="text" class="form-control">
<input id="miktar_" name="sum[]" type="text" class="form-control">

希望有帮助。

您的表单只读取2个值,但您希望在数据库中保存4个值。其他两个值来自何处?请将代码添加到您的问题中,而不是现在的commentDB;data1 sum1
data2
sum2
<input name="alanlar[0][alan]" type="text" class="form-control">
<input name="alanlar[0][miktar]" type="text" class="form-control">
<input name="alanlar[1][alan]" type="text" class="form-control">
<input name="alanlar[1][miktar]" type="text" class="form-control">
<!-- etc. -->
foreach ($_POST['alanlar'] as $set) {
  $alan = $set['alan'];
  $miktar = $set['miktar'];
  // ...
}
<input id="alan_" name="data[]" type="text" class="form-control">
<input id="miktar_" name="sum[]" type="text" class="form-control">
foreach ($_POST['data'] as $key => $value) {
    $baglanti->query(sprintf("INSERT INTO ders (data, sum) VALUES ('%s','%s')", ($value),($_POST['sum'][$key])));
    $eklenen_ders_id = $baglanti->insert_id;
}