Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/269.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 无需按enter键或submit键即可搜索结果_Php_Html_Mysql - Fatal编程技术网

Php 无需按enter键或submit键即可搜索结果

Php 无需按enter键或submit键即可搜索结果,php,html,mysql,Php,Html,Mysql,我正在做一个从数据库获取信息的搜索页面。我想要一个搜索,这是一个类似的网站 所以我想要的是,它显示结果,而不按enter键或submit键,因此它根据所写的信函显示建议 到目前为止,我有这样的想法: div class="container"> <div class="row"> <div class="col-md-10"> <form action="#" method="POS

我正在做一个从数据库获取信息的搜索页面。我想要一个搜索,这是一个类似的网站

所以我想要的是,它显示结果,而不按enter键或submit键,因此它根据所写的信函显示建议

到目前为止,我有这样的想法:

   div class="container">
        <div class="row">
            <div class="col-md-10">
                <form action="#" method="POST">
                    <textarea name="search"></textarea>
                    <input type="submit" name="enter_search" >
                </form>
            </div>
        </div>

        <?php

        if (isset($_POST['enter_search'])) {
            $name = $_POST['search'];

            $sql = <<<SQL
            SELECT `name`
            FROM `teachers`
            WHERE `name` LIKE '%{$name}%'
SQL;

            if(!$result = $con->query($sql)){
                die('There was an error running the query [' . $con->error . ']');
            }

            while($row = $result->fetch_array()){
                echo $row['name'] . '<br />'; }
            }

            ?>


            </div>
div class=“container”>
如果我添加了一个提交按钮,它可以工作,但是没有它我就无法工作。
感谢您的帮助:)

您所指的是客户端操作,仅使用
php
html
mysql
无法实现。这基本上是一个JavaScript问题

你应该先看看,或者如果你想建立自己的机制,这里有一些线索:

您需要检测文本输入何时被更改,以便在短语更新时启动查询。您可以使用
输入
/
更改
事件或
向下键
/
向上键
/
按键

在请求服务器执行数据库操作之前,最好先等待用户停止键入,下面是检测输入结束的方法:


您需要经常使用ajax与服务器通信,并很好地处理返回的数据。

如果查询是表单的一部分,您可以将其附加到textarea中的onchange事件。也许可以肯定,查询速度很快。还有其他库提供了支持更改事件的不同文本控件。mysql函数已被弃用,请使用或代替mysql函数。您需要一些JavaScript来实现这一点。请确保保留“提交”按钮,并使用JavaScript将其隐藏(如果您想隐藏它),否则,如果脚本不起作用,人们将无法进行搜索。危险:您正在使用并且应该使用。您也很容易受到现代API的影响,因为它会使您更容易使用。