2017-02-14 21 views
0

我有兩個數組,其中包含子名稱的數組,另一個是保存子的生日的數組。 這是我的表單的設計,用戶將填滿。 enter image description here顯示兩個數組的值,並將其保存在數據庫中使用foreach在Mysql和php中

<div id="Children"> 
 
    <div class="form-group col-md-7"> 
 
    <label for="child">Name of Child</label> 
 
    <input type="text" class="form-control" name="child[]" id="child" placeholder="FULL NAME"> 
 
    </div> 
 

 
    <div class="form-group col-md-5"> 
 
    <label for="ch_DateOfBirth">Date of Birth</label> 
 
    <input type="text" class="form-control date-picker" name="ch_DateOfBirth[]" id="DateOfBirth" placeholder="Date of Birth"> 
 

 
    </div>

,這是用於保存兩個數組在數據庫中我的PHP代碼。

$child_name=$_POST['child']; 
 
$child_bday=date('Y-d-m', strtotime($_POST['ch_DateOfBirth'])); 
 
$count=count($child_name); 
 

 
for ($i=0; $i < $count ; $i++) { 
 
    $sql6="INSERT into tbl_children (Emp_ID, Ch_Name, Ch_Bdate) values ('".$emp_id."', '".$child_name[$i]."', '".$child_bday[$i]."') "; 
 
    $dbcon->query($sql6); 
 
}

但每當我試圖這樣做,只有孩子的名字都保存不包括他們的生日。如果可能,我如何使用foreach保存它?

enter image description here

+0

檢查,看看閹了'$ child_bday'實際上包含的值,用'的print_r()'這個 –

+0

我嘗試使用破滅(),它顯示值。 – Laurie

+0

什麼是JavaScript中的日期格式,何時發送。它將需要發送日期,而不是字符串? –

回答

0

希望這將工作

$child_name=$_POST['child']; 
$count=count($child_name); 

for ($i=0; $i < $count ; $i++) { 
    $child_bday=date('Y-d-m', strtotime($_POST['ch_DateOfBirth'][$i])); 
    $sql6="INSERT into tbl_children (Emp_ID, Ch_Name, Ch_Bdate) values ('".$emp_id."', '".$child_name[$i]."', '".$child_bday."') "; 
    $dbcon->query($sql6); 
} 
+0

它的工作!謝謝! @SyamMohan – Laurie

+0

但我遇到了一個小問題,我的表單有一個功能,用戶可以添加行,所以我嘗試填充添加的行並跳過默認的前三行。當我保存它時,前三行保存一個默認的出生日期1970-01-01和一個空的子名稱,然後添加我填滿的行,保存子名稱但空的出生日期。我使用devtools檢查了元素,添加的行具有與原始行相同的名稱屬性。 – Laurie

相關問題