我使用mysqli_fetch_assoc和'while'创建了代码,如下所示。 但这不起作用。
if($结果= mysqli_query($ dbconn,$查询)){ 它在这里起作用。
while($ row = mysqli_fetch_assoc($ result)){ 从这里开始不起作用。
我找不到错误的部分。 如果我不使用“ while”,则其工作方式如下。
出什么问题了?
// not works
$query = "select * from member where f_status='1'";
if ($result=mysqli_query($dbconn, $query)) {
while ($row = mysqli_fetch_assoc($result)) {
if ($row[f_status]==0) {
error("No data");
} else {
echo $row[f_user_id];
echo $row[f_user_name];
}
}
mysqli_free_result($result);
}
// works
$query = "select * from member where f_status='1'";
$result = mysqli_query($dbconn, $query);
$row = mysqli_fetch_assoc($result);
if ($row) {
echo $row[f_user_id];
echo $row[f_user_name];
} else {
error("No data");
}
答案 0 :(得分:0)
我认为问题在于您在循环和条件下循环显示No data
消息的方式,
您应该尝试这种方式:
$query = "select * from member where f_status='1'";
if ($result = mysqli_query($dbconn, $query)) {
if ($result->num_rows) {
while ($row = mysqli_fetch_assoc($result)) {
echo $row[f_user_id];
echo $row[f_user_name];
}
}
else {
error("No data");
}
mysqli_free_result($result);
}
希望这可以解决您的问题。