Heim > Artikel > Backend-Entwicklung > PHP 解决一次因压缩代码引发的死循环_PHP教程
id | str1 | str2 |
---|---|---|
1 | saa | bbb |
2 | saa | bbc |
3 | sss | 123 |
<?php mysql_select_db("test", mysql_connect("localhost","******","******")); while($row = mysql_fetch_array(mysql_query("SELECT DISTINCT str1 FROM table1"))) { echo $row['str1']; echo "<br>"; } ?>
于是我又一步一步还原,死循环又不见了。显然不是提交语句的问题,应该是语法结构出问题了。
果然,问题出在while里。每次检测成立条件的时候都会执行一次mysql_query。然后就杯具了。
只要保证mysql_query仅执行一次就好,正确代码如下:
<?php mysql_select_db("test", mysql_connect("localhost","******","******")); $result = mysql_query("SELECT DISTINCT str1 FROM table1"); while($row = mysql_fetch_array($result)) { echo $row['str1']; echo "<br>"; } ?>