我希望能够跟踪每天服用的处方药物。我不知道我是如何努力做到这一点是正确的策略,因为我只是在学习。我目前使用的策略是使用一个表格按日期跟踪每个指定项目,并在第二个表格中使用外键指定项目详细信息。从一个表格插入多个mysql
我的直接问题是有可能如何将单个表单上的每个规定的项目分组以收集所收取的金额,然后将每个项目插入到mysql中?
这是我到目前为止。这只适用于一个项目,但我希望每个日期都有多个项目。是否有可能在一个页面上有多组输入来创建多个插入?也许我的策略是错误的。这是可能的还是另一种策略是必要的?
<form method="post" action="db_insert.php">
<?php
$date = "2016-15-16";
?>
<?php echo "Date " . $date; ?>
<input type="hidden" name="prescribedid" value="1"><br>
Prescribed #1 Amount: 200 <input type="checkbox" name="taken_amount" value="200">
Prescribed #1 Units: mg <input type="checkbox" name="units" value="mg">
Prescribed #1 Frequency: daily <input type="checkbox" name="frequency" value="1">
<input type="hidden" name="prescribedid" value="2"><br>
Prescribed #2 Amount: 200 <input type="checkbox" name="taken_amount" value="200">
Prescribed #2 Units: mg <input type="checkbox" name="units" value="mg">
Prescribed #2 Frequency: daily <input type="checkbox" name="frequency" value="1"><br>
<input type="submit" name="Submit">
</form>
db_insert.php
<?php
$date = "2016-08-15";
$date = date('Y-m-d',strtotime($date));
echo $date . "<br>";
$prescribedid = $_POST["prescribedid"];
$taken_amount = $_POST["taken_amount"];
$units = $_POST["units"];
$frequency = $_POST["frequency"];
// 1st Insert
$query[] = "INSERT INTO `tracked_db` (`takenid`, `date`, `prescribedid`, `taken_amount`, `taken_units`, `frequency`)";
$query .= " VALUES (NULL, '{$date}', '${prescribedid}', '{$taken_amount}', '{$units}', '{$frequency}')";
// 2nd insert
$query[] = "INSERT INTO `tracked_db` (`takenid`, `date`, `prescribedid`, `taken_amount`, `taken_units`, `frequency`)";
$query .= " VALUES (NULL, '{$date}', '${prescribedid}', '{$taken_amount}', '{$units}', '{$frequency}')";
$result = mysqli_query($connection, $query);
?>
的foreach查询插入。
'$ query [] ='表示它是一个数组,但是'$ query。='表示它是一个字符串。 – Barmar
难道你不说___这只适用于一个item_如果它确实如此,那么这不是你实际运行的代码。发布真实代码 – RiggsFolly
你是对的。我试图让我的问题更清晰并修改我的代码。第一个$查询不是一个数组,应该只是$查询。感谢您的答复。 –