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';
}
}
}
?>