[英]Inserting dynamic table values from PHP array to MySQL table
在 PHP 中將動態字段和值插入 mysql db 表時需要幫助。 樣本數據
$data[] = array( 'client'=>$clientname,
'amount' => 12000,
'balance'=>6000,
'term'=>6,
'maturitydate'=>'2016-05-31'
)
為獲取上述數據而傳遞的參數:branch = branchid, date =cutoffdate
這是我需要插入上述數據的表結構。
字段:分支、日期、account_no、字段、值
前兩個字段值來自傳遞的參數,account_no 來自使用傳遞的參數查詢數據庫后的數據,因為字段值應該來自數組索引,值是索引值。 插入數據后的表格
branch date account_no field value
br001 2016-03-31 0010GL001 client Client Name 1
br001 2016-03-31 0010GL001 amount 12000
br001 2016-03-31 0010GL001 balance 6000
......
一直在網上尋找一些可能的解決方案,但我找不到。 任何幫助將不勝感激。 謝謝你
假設您已經擁有前三個值( branch
、 date
、 account_no
)並且還分配了$clientname
,您可以使用foreach()
,因此腳本應如下所示:
<?php
$branch = 'br001';
$date = '2016-03-31';
$accNo = '0010GL001';
$clientname = 'client_name';
$data = array('client' => $clientname,
'amount' => 12000,
'balance' => 6000,
'term' => 6,
'maturitydate' => '2016-05-31'
);
foreach ($data as $field => $value) {
$query = "INSERT INTO db_table
(`branch`, `date`, `account_no`, `field`, `value`)
VALUES
('" . $branch . "', '" . $date . "', '" . $accNo . "', '" . $field . "', '" . $value . "')";
echo $query . '<br>';
mysqli_query($link, $query) or die(mysqli_error($link));
}
?>
這將產生以下查詢:
INSERT INTO db_table (`branch`, `date`, `account_no`, `field`, `value`) VALUES ('br001', '2016-03-31', '0010GL001', 'client', 'client_name')
INSERT INTO db_table (`branch`, `date`, `account_no`, `field`, `value`) VALUES ('br001', '2016-03-31', '0010GL001', 'amount', '12000')
INSERT INTO db_table (`branch`, `date`, `account_no`, `field`, `value`) VALUES ('br001', '2016-03-31', '0010GL001', 'balance', '6000')
INSERT INTO db_table (`branch`, `date`, `account_no`, `field`, `value`) VALUES ('br001', '2016-03-31', '0010GL001', 'term', '6')
INSERT INTO db_table (`branch`, `date`, `account_no`, `field`, `value`) VALUES ('br001', '2016-03-31', '0010GL001', 'maturitydate', '2016-05-31')
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.