php - 根据字母从数据库中搜索

标签 php mysql sql search

我有一个搜索表单,可以帮助用户从数据库中搜索任何内容。

表的 View 是(表的名称 = 菜单)

id  dish
1   ABC
2   CDE
3   EFG
4   CDF

目前,当用户输入一个词,例如 ABC,然后使用表单执行搜索时,我得到了想要的结果,但我想稍微改变一下这个功能,

我希望如果用户输入第一个字母,例如:C,那么表 dish 中包含字母 C 的所有单词都应该显示出来,

然后,如果他键入例如:CD,那么应该显示所有具有 CD 的单词。谁能告诉我怎么做

包含搜索表单的 index.php 页面代码:

<script>
$(document).ready(function()
    {
        $('#form').on('submit', function(e)
            {
                e.preventDefault();
                $.ajax({
                    url: 't_searchmenu.php',
                    type: 'POST',
                    dataType: 'html',
                    data: {text:$('#textbox').val()},
                    success: function(response) {
                    $('#prod_search').html(response);
                    }
                });
            });
    });
</script>

<form class="pull-right" style="width:100%;" id="form" >
    <input type="text" id="textbox" name="textbox" class="search-query" placeholder="Search" style="width:80%;" />
    <button type="submit" value="submit" id="generate2"  class="btn btn-primary">Find</button>
</form> 

t_searchmenu.php 页面上的代码

 $t = $_POST['text']; 
 $sql = " SELECT * from menu where dish='" . $t . "'";
 $result = mysqli_query($con, $sql);
 if (mysqli_num_rows($result) > 0) {
     while ($row = mysqli_fetch_assoc($result)) {
         //print the result
     }
 }

最佳答案

你可以这样查询:

$sql=" SELECT * from menu where dish like '%".$t."%'";

关于php - 根据字母从数据库中搜索,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32646648/

相关文章:

php - 使用 MySQL 在一个查询中连接三个表

php - Silex-Twig_Error_Syntax : The function "path" does not exist

mysql - 修剪剩余空间数据库

SQL Server 兼容性产生问题

java - 从数据库中获取年份

php - jQuery 或 php 在单个节点内查找多个 html 字符串并用 span 括起来

php - Mysql -> 用户表中可以有多少列?我应该存储数组吗?

php - 从mysql数据库中选择希伯来语

php - 显示具有多个需要累加的值的左连接

php - 在 PHP 中删除 MySQL 行时出现问题