[英]Insert array values and single form values into all rows PHP MYSQL
有人可以告訴我如何將此插入內容寫入數據庫嗎? 下面的代碼是我要完成的示例。 我想為有多個孩子的家庭准備一份表格。 他們提交他們的姓氏和一個ID,並將在數據庫中共享。 參見下面的代碼...
表格輸入
<input type="text" name="fname[]"/>
<input type="text" name="lname[]"/>
<input type="text" name="fname[]"/>
<input type="text" name="lname[]"/>
<input type="text" name="family_id"/>
這就是我遇到麻煩的地方。 我可以提交姓氏,但只有第一個“行”“名稱”也要存儲“ family_id”。
的PHP
foreach($_POST['fname'] as $key => $fname) {
$lname = $_POST['lname'][$key];
$family_id = $_POST['family_id'][$key];
$query = mysql_query("INSERT INTO Table (FName, LName, Family_ID ) VALUES ('{$fname}', '{$lname}', $_POST['family_id'])");
}
感謝您的幫助!
$_POST['family_id']
左右缺少{}
。
family_id
不是數組。
所以第一次迭代
$_POST['family_id'][0]; // gets the id
第二
$_POST['family_id'][1]; // gets undefined index
要解決此問題,請執行以下操作。
在foreach
循環之前添加以下代碼,並像在其他查詢中所做的那樣將concat $family_id
連接到查詢中。
$family_id = $_POST['family_id'];
嘗試這個:
extract($_POST);
$total=count($fname);
for($i=0;$i<count($total);$i++)
{
$fname=$fname[$i];
$lname=lfname[$i];
$query="INSERT INTO Table (FName, LName, Family_ID ) VALUES ('{$fname}', '{$lname}', $family_id)";
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.