我做了一个项目,允许一个dokter为病人添加治疗。我的项目中添加了一些基础治疗方法。
当dokter想要为患者添加1种特定治疗时,他可以获得基本治疗并添加一些额外的文本或更改日期(例如:患者可以在第4天而不是第5天回家)。
问题是,当我想保存那个循环时,我的最后一个条目将被保存。注意我不希望更新基本处理,但保存在另一个表中
atm我正在关注代码的那一刻:这显示了docter可以编辑的基本处理
<?php
echo '<form action="" method="post">';
while ($topic = $resul -> fetch_assoc())
{
$datumNew = strtotime($datum);
$stopdate_extra=$datumNew+$topic['Dag']*84600;
$stopdate_Nu=date("l", $stopdate_extra);
$stopdate_Nu1=date("d", $stopdate_extra);
$stopdate_Nu1a=date("M", $stopdate_extra);
$stopdate_Nu2=date("Y", $stopdate_extra);
$stopdate_db=date("Y-m-d",$stopdate_extra);
echo "<div class='tijdlineElement'>";
echo "<div class='tijdlineP2Element' ><input type='text' name='bescValue' value='" .$topic['Uur']. "'/><br /><br /><textarea maxlength='400' style='width:100%; height:70px;' name='uurValue' rows='4'>" . $topic['Beschrijving']. "</textarea></div>";
echo "<div class='tijdlinePElement' style='background-color: gray;'>". $stopdate_Nu . '<br/> '. $stopdate_Nu1 .' ' . $stopdate_Nu1a . '<br/> '. $stopdate_Nu2 . ' '."</div>";
echo "<input type='hidden' name='dagValue' value='" .$stopdate_db. "'/>"; echo "</div><br />";
}
echo '<br/><br/>
<input id="btnbehandeling" name="btnbehandeling" value="voegtoe" type="submit" class="button" style="width: 101%" />
</form>';
当他点击按钮时,将执行以下功能
if(!empty($_POST['dagValue']))
{
$obj_subscriber = new behandeling();
$obj_subscriber->RRN = $_SESSION['patientRRN'];
//$obj_subscriber->Dag = $_POST['date'];
$obj_subscriber->Dag = $_POST['dagValue'];
$obj_subscriber->Uur = $_POST['bescValue'];
$obj_subscriber->Beschrijving = $_POST['uurValue'];
try
{
$obj_subscriber->VoegBehandelingtoeTijdslijn();
header("location: tijdslijn.php");
}
catch(Exception $e)
{
$feedback = $e->getMessage();
}
}
VoegBehandelingtoeTijdslijn
Public function VoegBehandelingtoeTijdslijn(){
include 'PHP/Connection.php';
$sql= "INSERT INTO tijdslijn
(
Beschrijving,
User,
Dag,
Uur
)
VALUES
(
'" . $conn-> real_escape_string($this -> m_sBeschrijving) . "',
'" . $conn-> real_escape_string($this -> m_sRRN) . "',
'" . $conn-> real_escape_string($this -> m_sDag) . "',
'" . $conn-> real_escape_string($this -> m_sUur) . "'
);";
if (!$conn-> query($sql)) {
throw new Exception("Fout bij registartie");
}
}
如果我想加入治疗&#39;测试&#39;它有2行,只保存我的最后一行。所以我的问题是:如何在我的while循环中保存所有回显的行?
答案 0 :(得分:0)
在循环外部定义一个数组并推送其中的每个项目,然后再次保存。当你这样做时,只保存/存储循环的最后一项。因为你一直在覆盖上一个项目。
伪造的代码
$saveddata = array();
loop{
//with one or two pieces of data.
array_push($saveddata, $data);
//with multiple pieces of data it is recommended to save it in an object first.
//and then add these objects to the array.
}
现在,每个找到的数据都会添加到此数组中。要再次通过此阵列卸载数据循环。