javascript - 搜索后自动显示数据

标签 javascript php html mysql

我想要我的代码做的是,如果我搜索批处理代码,等于该批处理代码的数据将自动显示在文本框中,基本上每个批处理代码在每个类别中都有(4)个数据,这就是为什么我有(4)个文本框。正如你所看到的,我将文本框与 php 代码分开,因为我有计划并为每个文本框使用 javascript。

在我当前的代码中它不起作用,我收到一条错误消息:“注意:未定义索引:第 19 行 C:\xampp\htdocs\test\index.php 中的代码”

我当前的代码:

<?php 
ob_start();
session_start();
?>
<script type="text/javascript" src="jquery/jquery.js"> </script>
<script type="text/javascript" src="jqueryui/js/jquery-ui-1.10.3.custom.min.js"></script>
<script type="text/javascript"  src="Zebra_Dialog-master/public/javascript/zebra_dialog.js"></script>
<link rel="stylesheet" href="Zebra_Dialog-master/public/css/default/zebra_dialog.css" type="text/css">
<link type="text/css" href="jqueryui/css/ui-lightness/jquery-ui-1.10.3.custom.min.css" rel="stylesheet" />
<?php
include('include/connect.php');
$batchcode = $_POST['code'];
$sql = mysql_query("SELECT aic,batchcode,address,name FROM tb_app WHERE batchcode LIKE '$batchcode'");
while($rows = mysql_fetch_array($sql)){
    $aic[] = $rows['aic'];
    $name[] = $rows['name'];
    $address[] = $rows['address'];
}
?>
<html>
<head>
<title>test</title>
</head>
<body>
Search Batchcode:<input type="text" name="code" id="query" /><br />
<form>
<table>
<tr>
<td>
aic: <br />
<input type="text" value="<?php echo $aic[0] ?>" /> <br />
<input type="text" value="<?php echo $aic[1] ?>" /> <br />
<input type="text" value="<?php echo $aic[2] ?>" /> <br />
<input type="text" value="<?php echo $aic[3] ?>" /> <br />
</td>
<td>
Name List: <br />
<input type="text" value="<?php echo $name[0] ?>" /> <br />
<input type="text" value="<?php echo $name[1] ?>" /> <br />
<input type="text" value="<?php echo $name[2] ?>" /> <br />
<input type="text" value="<?php echo $name[3] ?>" /> <br />
</td>
<td>
Address: <br />
<input type="text" value="<?php echo $address[0] ?>" /> <br />
<input type="text" value="<?php echo $address[1] ?>" /> <br />
<input type="text" value="<?php echo $address[2] ?>" /> <br />
<input type="text" value="<?php echo $address[3] ?>" /> <br />
</td>
</form>
<!--search function code-->
<script type="text/javascript">
$(document).ready(function(){

    $("#query").autocomplete({
        source : 'search.php',
        select : function(event,ui){
            $("#query").html(ui.item.value);
        }
    });

});
</script>
</body>
</html>

search.php代码:

<?php

$q = $_GET['term'];

mysql_connect("localhost","root","");
mysql_select_db("test");
$query = mysql_query("SELECT batchcode FROM tb_app WHERE batchcode LIKE '$q%'");

$data = array();
while($row = mysql_fetch_array($query)){
$data[]=array('value'=>$row['batchcode']);
}
echo json_encode($data);
?>

我希望它做的是在搜索并单击搜索文本框中的特定批处理代码后,数据将自动显示在文本框中。

最佳答案

Woah Woah Woah Chappy,直接POST数据到sql查询大不可以..

另一方面,您的错误是由于 Global Post 数组没有名为“code”的数组索引而引起的。主要是因为还没有发送数据到页面。

您需要将所有内容包装在 if 语句中。

if(isset($_POST['code'])){
///Logic. 

不过,我会先阅读一些有关 mysql 注入(inject)的内容并清理发布数据。

关于javascript - 搜索后自动显示数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21386110/

相关文章:

javascript - 运行另一个函数后终止一个函数

Internet Explorer 中的 PHP session 数据更改

php - 如何在php中转换mongo db查询

html - 使 div 占浏览器窗口高度的 100%

javascript - AngularJS 重复动态数组值

html - 是否可以避免 CSS3-Pretag?

javascript - Javascript-对象数组未按日期排序

javascript - 如何在可视化 Web 开发人员中将 javascript 组合到 html/ASP.Net 中?

javascript - Google map 融合表 API SQL "LIKE"命令不起作用

php - MySQL - 几个月之间(而不是时间戳)