Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/71.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在PHP和MySQL中使用字母搜索从数据库中获取数据_Php_Mysql - Fatal编程技术网

如何在PHP和MySQL中使用字母搜索从数据库中获取数据

如何在PHP和MySQL中使用字母搜索从数据库中获取数据,php,mysql,Php,Mysql,我需要一个帮助。当用户使用PHP和MySQL在数据库的文本字段中键入字母时,我需要获取数据。我在下面解释我的代码 $searchData=$_GET['search'] ; 在上面的行中,用户正在获取用户键入的字母,一旦根据关键字搜索键入一个字母,数据将从数据库中获取。我解释下表 数据库名称: 假设用户输入的第一个字母R应显示所有两个名称属于R,输入全名时将显示单个名称。请帮助我解决此问题。以下是您要查找的内容 试试MySql全文搜索,它应该可以完成这项工作。下面是我在我的一个项目中使用的一些

我需要一个帮助。当用户使用PHP和MySQL在数据库的文本字段中键入字母时,我需要获取数据。我在下面解释我的代码

$searchData=$_GET['search'] ;
在上面的行中,用户正在获取用户键入的字母,一旦根据关键字搜索键入一个字母,数据将从数据库中获取。我解释下表

数据库名称:


假设用户输入的第一个字母
R
应显示所有两个名称属于
R
,输入全名时将显示单个名称。请帮助我解决此问题。

以下是您要查找的内容


试试MySql全文搜索,它应该可以完成这项工作。下面是我在我的一个项目中使用的一些代码

    function getMemberIdByName($query)
    {
        //global mysql connection
        global $connection;

        $searchData = $query."*";

            $sql = "
                    SELECT 
                        * 
                    FROM 
                        member_table 
                    WHERE 
                        MATCH(name) AGAINST (:searchData IN BOOLEAN MODE) 
                    LIMIT 10
                    ";
            $statement = $connection->prepare($sql);
            $statement->bindValue(':searchData', $searchData);
            $statement->execute();
            $result = $statement->fetchAll(PDO::FETCH_ASSOC);
            if (count($result) > 0) {
                return $result;
            } else {
                return null;
            }
    }
现在使用jqueryajax调用这个脚本,使用POST或GET值,并使用搜索值作为参数调用这个函数


您应该能够自己理解ajax部分。

首先自己尝试一些代码。不要要求提供可能重复的代码
    function getMemberIdByName($query)
    {
        //global mysql connection
        global $connection;

        $searchData = $query."*";

            $sql = "
                    SELECT 
                        * 
                    FROM 
                        member_table 
                    WHERE 
                        MATCH(name) AGAINST (:searchData IN BOOLEAN MODE) 
                    LIMIT 10
                    ";
            $statement = $connection->prepare($sql);
            $statement->bindValue(':searchData', $searchData);
            $statement->execute();
            $result = $statement->fetchAll(PDO::FETCH_ASSOC);
            if (count($result) > 0) {
                return $result;
            } else {
                return null;
            }
    }