我的代码有问题。我的目标是从数据库中获取一些数据并再次更新数据库。
while( $row = mysql_fetch_array($result) ) {
if ($phpgsb->doLookup($row['origin']) === true) {
echo var_dump($phpgsb->doLookup($row['origin'])). " - ". $row['origin'];
mysql_connect("localhost", "ali", "password");
mysql_query("UPDATE `mydatabase`.`dns_soa` SET active='N' WHERE origin='".$row['origin']."'");
echo "<br>";
}
}
echo var_dump($phpgsb->doLookup($row['origin'])). " - ". $row['origin'];
的输出是
bool(true) - hello.com.
这很奇怪,因为如果我删除mysql连接代码
mysql_connect("localhost", "ali", "password");
mysql_query("UPDATE `mydatabase`.`dns_soa` SET active='N' WHERE origin='".$row['origin']."'");
将显示数据库的正确输出:
bool(true) - hello.com.
bool(true) - jool.com.
bool(true) - kool.com.
我每次运行此代码时都只需要hello.com。记录将在数据库中更新。这是错的。如何使用我的UPDATE查询更新所有3条记录?
提前致谢。
答案 0 :(得分:2)
采取这一行:
mysql_connect("localhost", "ali", "password");
并将其放在while循环之前(之前)。您无需一次又一次地连接到数据库。