// Populate headers
$fields = $result->fetch_fields();
foreach ($fields as $field)
printf("<th>%s</th>", $field->name);
printf("</tr>");
// Write to table
while ($myvar = $result->fetch_row()) {
$date = $myvar[0];
$room_ID = $myvar[1];
$description = $myvar[2];
$firstname = $myvar[3];
$lastname = $myvar[4];
$message = $myvar[5];
$period = $myvar[6];
printf("<tr>");
printf("<td>%s</td><td>%s</td>", $date, $room_ID);
printf("<td>%s</td><td>%s</td>", $description, $firstname);
printf("<td>%s</td><td>%s</td><td>%s</td>", $lastname, $message, $period);
printf("</tr>");
}
如果我的 MySQLi 结果返回空,我正在尝试回显"没有要显示的结果"。问题是标头作为数组的一部分返回,我该如何实现?
您需要检查行数。 如果它返回零,则表示表不包含任何行。 试试下面的代码。
// Populate headers
$fields = $result->fetch_fields();
foreach ($fields as $field)
printf("<th>%s</th>", $field->name);
printf("</tr>");
// Write to table
if($result->num_rows== 0){
echo "No Result to display";
}else{
while ($myvar = $result->fetch_row()) {
$date = $myvar[0];
$room_ID = $myvar[1];
$description = $myvar[2];
$firstname = $myvar[3];
$lastname = $myvar[4];
$message = $myvar[5];
$period = $myvar[6];
printf("<tr>");
printf("<td>%s</td><td>%s</td>", $date, $room_ID);
printf("<td>%s</td><td>%s</td>", $description, $firstname);
printf("<td>%s</td><td>%s</td><td>%s</td>", $lastname, $message, $period);
printf("</tr>");
}
}
简单使用num_rows
if($result->num_rows== 0){
echo "no results to display"
}
else{
while ($myvar = $result->fetch_row()) {
//Your Code here
}
您可以使用
num_rows
来获取记录的总值。
$row_count = $result->num_rows;
if($row_count>0)
{
echo "Data Available";
}
else
{
echo "No Data Available";
}
可以使用
num_rows
获取从查询中检索的记录的总值。
$row_cnt = $result->num_rows;
if($row_cnt>0){ echo "Have data";}else{echo "No data";}