Php mysql_num_rows()希望参数1是第17行的资源

Php mysql_num_rows()希望参数1是第17行的资源,php,Php,我知道这个问题已经被问了很多次了,我已经看了答案,但是我不能让我的代码正常工作。下面显示了我尝试过的代码 <?php include 'connection.php'; $connection=mysqli_connect("localhost","root","","c3392262"); if (isset($_POST['search'])) { $search = $_POST['search']; if (!empty($search)) { $que

我知道这个问题已经被问了很多次了,我已经看了答案,但是我不能让我的代码正常工作。下面显示了我尝试过的代码

<?php

include 'connection.php';

$connection=mysqli_connect("localhost","root","","c3392262");

if (isset($_POST['search'])) {

  $search = $_POST['search'];

  if (!empty($search)) {

    $query = "SELECT name FROM products WHERE name LIKE '%$search%'";
    $query_run = mysqli_query($connection, $query);
    if (mysql_num_rows($query_run)>=1) {

      echo 'found';

    } else {

      echo 'No results found';
    }
  }
}

?>

<form name = "searchbar" method = "POST" action = "searchBar.php">
<input name = "search" type = "text" size = "40" maxlength = "50" >

<input type="submit" value="Submit">
</form>
您正在混合使用mysql_u和mysqli_u函数。不要那样做,它们是不相容的。坚持使用mysqli。

你混合了mysql和mysqli。改用mysqli\u num\u行

确保使用mysqli\u num\u行,而不是mysql\u num\u行 您需要准备查询 您只需检查是否大于0
请编辑您的帖子并粘贴正确的代码。您混合了mysqli_uu和mysql_uu函数。那不行。您还希望您也可以使用SELECT COUNT语句。如果mysqli\u num\u行。它赋予了mysql_num_rowsDanger:你很容易受到你所需要的伤害。
if (mysqli_num_rows($query_run) >= 1) {
    echo 'found';
} else {
    echo 'No results found';
}
<?php

include 'connection.php';

$connection = mysqli_connect("localhost", "root", "", "c3392262");

if (isset($_POST['search'])) {
    $search = $_POST['search'];
    if (!empty($search)) {
        $query = "SELECT name FROM products WHERE name LIKE ?";
        $query_run = mysqli_prepare($connection, $query);
        mysqli_stmt_bind_param($query_run , 's', '%'.$search.'%');
        mysqli_stmt_execute($query_run );
        if (mysqli_num_rows($query_run) > 0) {
            echo 'found';
        } else {
            echo 'No results found';
        }
    }
}
?>