【发布时间】:2015-11-13 17:14:33
【问题描述】:
标题并没有确切地透露整个事情。 现在我正在开发一个实验室软件。在这里,所有单独的测试名称及其详细信息都在一个表中(例如名称“test_info”)并且为这些测试生成的所有账单都在另一个表中(例如名称“bill_info”)以及何时插入测试报告我'将其存储在另一个表中(例如名称'rpt_info')。
有一些小组测试是测试的集合。我创建了一个名为 'group' 的列,如果值为 null,则它们不属于任何组测试,并且当它们是一个值(即测试名称)时,意味着该测试属于该组测试。
现在,看看是什么迫使我在这里提出问题。 当输入测试报告的值时,我只是称它们为-
<?php
$gtsql = "SELECT * FROM `bill_info` where `test_id` = '" . $pid."' and `group`='y'";
$reslt = mysql_query($gtsql);
while ($data = mysql_fetch_assoc($reslt))
{
$test_inf= "SELECT * FROM `test_info` where `group` = '". $data["pr_name"]."'";
$test_qr= mysql_query($test_inf);
$k = 1;
while ($test = mysql_fetch_assoc($test_qr)) {
echo '<tr><td width="80"></td><td align="left"> <input name="name" id="name" style="border:none; background: transparent;" value="' . $test["name"] . '" readonly/></td><td width="144" align="left"> <INPUT name="result" id="result" /></td><td width="125" align="left"><input name="unit" id="unit" style="border:none; background: transparent;" value="' . $test["unit"] . '" readonly/></td><td align="left">';
$ref= $test["ref_range"];
$ref2= $test["ref_range2"];
$ref3= $test["ref_range3"];
if($ref=!"")
{ echo '<br/><input name="ref_range" id="ref_range" style="border:none; background: transparent;" value="'.$test["ref_range"].'" readonly/>';}
if ($ref2=!"")
{ echo '<br/><input name="ref_range2" id="ref_range2" style="border:none; background: transparent;" value="'.$test["ref_range2"].'" readonly/>';} else { echo "";}
if ($ref3=!"")
{ echo '<br/><input name="ref_range3" id="ref_range3" style="border:none; background: transparent;" value="'.$test["ref_range3"].'" readonly/>';} else { echo "";};
'
</td></tr>
';
$k++;
}
}
?>
这工作正常,并在屏幕上完美地向用户显示所有测试及其信息。但是当我尝试将这些数据插入到“rpt_info”表中时,就会出现问题。
我试过'while','for',但无法将值插入表中。
这是我现在正在运行的插入代码。还有一件事要分享给你的朋友,为了获得完美数量的测试,我在另一个表(名称“sell”)中做了一行,我在其中放置了个人测试(账单)记录。名为“num”的行。我计算“num”值以找出我想要运行代码的次数。当我回应那个$num 时,它就完美了。但每次我只插入一行。
<?php
if(isset($_POST['posted']))
{
$prsql = "SELECT SUM(num) FROM `sell` where `test_id`='".$_POST['test_id']."'";
$prrs = mysql_query($prsql);
$datas = mysql_fetch_assoc($prrs);
$num= $datas['SUM(num)'];
$i=1;
while ($i < $num)
{
$str_tst = "INSERT INTO `rpt_info` (`pt_id`,`test_id`,`result`,`name`,`unit`,`ref_range`, `ref_range2`, `ref_range3`, `rcv_date`, `dlv_date`, `age`, `test_cat`)VALUES ( '" . $_POST['pt_id'] . "', '" . $_POST['test_id'] . "', '" . $_POST['result'] . "', '" . $_POST['name'] . "', '" . $_POST['unit'] . "', '" . $_POST['ref_range'] . "', '" . $_POST['ref_range2'] . "', '" . $_POST['ref_range3'] . "', '" . $_POST['rcv_date']. "', '" . $_POST['dlv_date'] . "', '" . $_POST['pt_age'] . "', '" . $_POST['test_cat']. "')";
$i++;
}
?>
<?php
if(mysql_query($str_tst))
{
echo '................';
}
?>
有没有人可以帮我解决这个问题?
这是我的第一个问题,可能我无法向你们所有人解释清楚。如果您想更清楚地了解问题,请随时向我提问。
【问题讨论】:
-
您的代码中没有插入查询?
-
发布不工作的部分,而不是工作的部分
-
您没有发布
insert查询或错误消息 -
抱歉,我正在更新我的问题
-
除了你不应该再使用mysql_*函数之外(使用mysqli或PDO,你正在创建一个插入查询,但你没有执行它。
标签: php for-loop while-loop