我正在尝试获取数据库中的所有行。我的代码:
$sql = "SELECT * FROM lectors";
$array = array();
while($row = mysqli_fetch_assoc(mysqli_query($con,$sql))){
echo $row["name"];
}
当我发送请求时,服务器不回复。有什么想法吗?
答案 0 :(得分:5)
while($row = mysqli_fetch_assoc(mysqli_query($con,$sql))){
这是一个永无止境的循环,你的查询每次都会执行正常,循环永远不会终止。
我需要进一步说明吗?
它与
一样好while(true)
{
// keep querying my database until i run out of resources
}
首先执行查询并仅循环其结果。
哦,
当我发送请求时,服务器不回复
因为,正如我所说;它忙着跑一圈,没时间回复。
答案 1 :(得分:1)
尝试将查询放在一行中,例如......
$sql = "SELECT * FROM lectors";
$array = array();
$res = mysqli_query($con,$sql);
while($row = mysqli_fetch_assoc($res)){
echo $row["name"];
}
在上面的方法中执行此操作将导致每次执行循环执行数据库查询。