mysqli_num_rows() 期望参数 1 为 mysqli_result,第 12 行 C:\wamp\www\DbConnect.php 中给出的字符串

mysqli_num_rows() expects parameter 1 to be mysqli_result, string given in C:\wamp\www\DbConnect.php on line 12

这是我的 php 代码,每当我运行它时,我都会收到该错误...数据库位于本地主机 wamp 服务器上

<?php
$username ="root";
$password= "";
$hostname ="localhost";
$database ="mydata";
$check="";
$conn = new mysqli($hostname, $username, $password, $database);
$i = "SELECT * FROM `patient` WHERE 1";
$num_rows = mysqli_num_rows($i);
while($row = mysqli_fetch_array($i))
{
$r[]=$row;
$check=$row["emailid"];
}
if($check==NULL)
{
$r[$num_rows]="Record is not available";
print(json_encode($r));
}
else
{
$r[$num_rows]="success";
print(json_encode($r));
}
//mysql_close($conn);
?>

请提出解决方案。

更改您的连接

$conn=mysqli_connect($hostname, $username, $password, $database);

你错了sql

改变这个

$i = "SELECT * FROM `patient` WHERE 1";

$i = "SELECT * FROM `patient` WHERE your_cloumn_name = 1";

而且你还没有执行你的

添加

$result=mysqli_query($conn,$i);

然后

while($row = mysqli_fetch_array($result))