echo更新值而不是旧值

时间:2014-02-10 23:00:31

标签: php html mysql mysqli

如何回显第1列中的最新值?下面的代码回显了更新前的值。

while($line = mysql_fetch_array($result)) {
$Student = $line["calss8"];

$querySf = "SELECT SUM(ABC) AS val1 FROM tbl1 WHERE student = '$Student'"; 
$resultSf = mysql_query($querySf); 
$rSf = mysql_fetch_array($resultSf); 
$totalSf = $rSf['val1']; 
$totTMonth = $totalSf;

mysql_query("UPDATE tbl4 SET column1 = $totTMonth WHERE student = '$Student' LIMIT 1");
}


echo $line["column1"].",,";

2 个答案:

答案 0 :(得分:0)

据我所知,您必须单独查询以查看刚更新的内容。我的意思是,运行你的选择,执行你的更新,然后做另一个选择。您可以获取一般信息,例如更新了多少行,但我认为您不能获得特定信息,例如列中更改的值。菲尔是正确的,建议您只打印'$ totTMonth'值,因为这是您更新列的原因。这比对数据库进行另一次查询的开销要小。

答案 1 :(得分:0)

我认为问题在上面的代码之前开始。此代码行将显示选择结果:echo $line["column1"].",,";。变量$line在上面的代码之前设置。我的解决方案是执行以下操作:

$result1 = mysql_query("SELECT column1 FROM student ..."); /* I insert the select query here */

While($row= mysql_fetch_array($result)) {

echo $row['column1'].",,";
}