php - 用于搜索建议程序的简单 PHP/Ajax - 仅显示完整输入的数据库结果

标签 php mysql ajax search mysqli

所以我的问题很简单。我是一名 PHP 初学者(一般来说是菜鸟程序员,3 个月前开始),我一直在关注一些关于如何构建“搜索建议”系统的教程,该系统会检查数据库中您输入的内容是否相似并通过 AJAX 实时显示结果。

它正在部分工作。例如,当我输入完整的用户名时,它会显示结果。但当我输入一半或第一个字母时,情况就不同了。

<?php

    require 'connect.php';

    if (isset($_GET['searchText'])) {
        $searchText = $_GET['searchText'];
    }

    if($query = $db->prepare("SELECT user_name FROM users WHERE user_name LIKE ?")) {
        $query->bind_param('s', $searchText);
        $query->execute();

        $query->bind_result($searchTextResult);

        while ($query->fetch()) {
            echo $searchTextResult;
        }
    }

?>

另外,由于我是个菜鸟,所以我很想对代码提出任何建议,只是为了知道我总体上是否采用了良好的做法。我听说 Binding 和 mysqli 是推荐的,所以我努力坚持使用它们,而且我很少受到任何批评。

最佳答案

部分搜索参数的sql查询如下:

"select user_name FROM users WHERE user_name LIKE CONCAT('%',?,'%')"

关于php - 用于搜索建议程序的简单 PHP/Ajax - 仅显示完整输入的数据库结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29679573/

相关文章:

php - 设置 session 变量的 MySQL 结果

mysql - Homebrew 软件,MySQL 8 支持

javascript - AJAX 中的 Promise 和 Success 之间的区别

jquery - 如何使用 onclick 链接调用 jQuery 函数?

javascript - Ajax 调用在移动设备中返回 0 作为响应

PHP:foreach 按 id 和月份循环并添加值

php - 在 PHP 中重载属性和方法 - 原因是什么?

php - 如何将 Mysql 插入连接查询更改为 Codeigniter Active Record

mysql - 尝试配置 ODBC 驱动程序时权限被拒绝

jquery - 使用 AJAX、jquery 和 codeigniter 显示数据库中的数据