搜索功能输出为 'array'

Search functionality outputting as 'array'

我遵循了有关如何使搜索栏正常运行的教程,但我没有发现自己做错了什么。我正在尝试为用户提供搜索产品的选项。最终结果是一切都被输出为 'Array'。显示正确数量的搜索结果。

我的搜索栏在我的索引页上。

<form class="searchbar" action="/searchresults" method="POST">
                            <input class="inputsearchbar" type="text" 

    name="search" size="50">
                                <input class="searchButton" type="submit" value="Search" name="submit">
                            </label>    
                        </form>

然后我有一个名为 searchresults.php 的页面,我的结果输出到该页面。我正在从数据库中的产品 table 中提取数据。

我在文件的顶部有这个..

    if(!isset($_POST['search'])) {
    header("Location:index.php");
    die($e->getMessage());
}


$con = mysqli_connect("localhost", "root", "", "bfb"); 
$search_sql = "SELECT * FROM products WHERE name LIKE '%" . $_POST['search'] . "%' OR description LIKE '%" . $_POST['search'] . "%'";
$search_query=mysqli_query($con, $search_sql);

    if (mysqli_num_rows($search_query)!=0) {
    $search_rs=mysqli_fetch_assoc($search_query);
    }
?>

后面在正文中加上这个输出结果...

<h1>Search Results</h1>
<?php

    if(mysqli_num_rows($search_query)!=0) {
        do { ?>
        <p><?php echo $search_rs=['name']; ?></p>
        <p><?php echo $search_rs=['description']; ?></p>

    <?php       } while ($search_rs=mysqli_fetch_assoc($search_query));
        } else {
            echo"Sorry, no results were found. Please try again.";
        }
    ?>
   </div>

为什么我的所有结果都显示为 'Array',我该如何更正?

去掉多余的等号(=)

<?php echo $search_rs['name']; ?>

您必须使用 $_search_rs['name'] 。删除多余的“=”符号。

按如下方式编辑您的 PHP 代码。

<h1>Search Results</h1>
<?php

if(mysqli_num_rows($search_query)!=0) {
    do { ?>
   <p><?php echo $search_rs['name']; ?></p>
    <p><?php echo $search_rs['description']; ?></p>

<?php       } while ($search_rs=mysqli_fetch_assoc($search_query));
    } else {
        echo"Sorry, no results were found. Please try again.";
    }
?>