gpt4 book ai didi

javascript - 从 PHP 自动完成动态搜索 SQL 数据库

转载 作者:可可西里 更新时间:2023-11-01 07:43:55 27 4
gpt4 key购买 nike

我有一个搜索框,通过数据库进行搜索。在我的代码中,搜索在一个输入框中完成,并显示动态搜索输出在其下方的文本区域中。

我想要的是 像 Google 一样的搜索,当用户开始输入时,它应该显示 db 表中的相似项目。

例如,如果我有两个名为“Dummy 1”和“Dummy 2”的组织并且用户输入“du”,搜索栏应该显示这 2 个结果并且用户应该能够选择一个。

我的代码是:

<form action="newbrand.php" method="post">
<br>
Brand Name: <input type="text" name="bname" /><br><br>
Search for an Organization: <input type="text" name="search" onkeyup="searchq()" id="output"><
Selected Organization:<textarea id="output"></textarea>
</form>

js是这样的:

<script type="text/javascript">
function searchq(){
var searchTxt = $("input[name='search']").val();
$.post("search.php", {searchVal: searchTxt},function(output){
$("#output").html(output);
}
}
</script>

这是 search.php 文件:

<?php
include 'db_connect.php';
$link = mysqli_connect($host, $username, $password, $db);
if(!link){
echo "DB Connection error";
}
$output = '' ;
$output2 = '' ;
if (isset($_POST['searchVal'])){
$searchq = $_POST['searchVal'];
//$searchq = preg_replace("#[^0-9a-z]#i","",$searchq);
$query = mysqli_query($link, "SELECT * FROM `organisations_info` WHERE `Organisation_Name` LIKE '%$searchq%'")or die("Could not search!");
$count = mysqli_num_rows($query);
if($count == 0){
$output = '<div>No results!</div>';
}else{
while($row = mysqli_fetch_array($query)){
$orgname = $row['Organisation_Name'];
$orgid = $row['Organisation_Id'];
$subs = $row['Subscription_Type'];
//$output = echo "<option value='".$orgname."'>" . $orgname . "</option>";
$output = $orgname;
$output2 = $orgid;
$output3 = $subs;
//$output = '<div>'.$orgname.'</div>';
}
}
}
echo ($output);
?>

我怎样才能做到这一点?

最佳答案

在JS代码中...

<script type="text/javascript">
function searchq(){
var searchTxt = $("input[name='search']").val();
$.post("search.php", {searchVal: searchTxt},function(output){
$("#output").html(output);
}
}
</script>

你已经给出了输入类型元素的id(#output)来显示(或返回)HTML语句并且js脚本也没有正确关闭(语法错误)。所以< strong>有效的声明将是...

<form action="newbrand.php" method="post">
<br>
Brand Name: <input type="text" name="bname" /><br><br>
Search for an Organization: <input type="text" name="search" onkeyup="searchq()" id="output"><
Selected Organization:<textarea id="output"></textarea>
</form>
<br>
<div id="mydiv"></div>

<script type="text/javascript">
function searchq(){
var searchTxt = $("input[name='search']").val();
$.post("search.php", {searchVal: searchTxt},function(output){
$("#mydiv").html(output);
});
}
</script>

关于javascript - 从 PHP 自动完成动态搜索 SQL 数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36687264/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com