如果数据库没有结果,PHP while语句会给我错误。如果数据库中什么也看不到,为什么它不能执行呢
while ($row = mysqli_fetch_assoc($result_tomorrow)) {
$rowsB[] = $row['last'];
}
我得到的错误是未定义的变量$ rowsB。当我在数据库中放入一些东西时一切正常。我还尝试在if语句中包装while循环
if(results){
while ($row = mysqli_fetch_assoc($result_tomorrow)) {
$rowsB[] = $row['last'];
}
}
这不起作用
答案 0 :(得分:3)
是错误还是通知?你应该在while循环之前定义你的变量。
答案 1 :(得分:1)
如果您仅在查询未返回任何结果时收到错误,那么这是因为您稍后尝试使用$rowsB
而未声明它(请注意错误的行#) 。您应该始终检查查询的结果是否也有效:
$rowsB = array();
if ($result_tomorrow) {
while ($row = mysqli_fetch_assoc($result_tomorrow)) {
$rowsB[] = $row['last'];
}
}
答案 2 :(得分:0)
试试这个
if(mysqli_num_rows($result_tomorrow) > 0){
while ($row = mysqli_fetch_assoc($result_tomorrow)) {
$rowsB[] = $row['last'];
}
}
答案 3 :(得分:-1)
首先检查数据库是否返回了一些内容然后执行你的while语句。
$result = mysqli_query($connection, $query); //execute the query
if( $result ){ //on successful query execution
if( mysqli_num_rows($result) > 0 ){ //check for number of returned rows. If its > 0
while( $row = mysqli_fetch_assoc($result) ){ //execute for loop
//other statements
}
}
}