自动完成,MYSQL,PHP

I have been trying to implement this and the code does not seem to be working. I want auto-complete to go with name from database.Looks like I am connecting to database fine but auto-complete is not working.
Here it is.

Form jquery

 <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script>
 <script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jqueryui/1.8.18/jquery-ui.min.js"></script>
 <link rel="stylesheet" type="text/css" href="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8/themes/base/jquery-ui.css" />

    <script type="text/javascript">
            $(document).ready(function(){
                $("#name").autocomplete({
                    source:'search.php',
                    minLength:1
                });
            });
    </script>

Here is form

<form action="search.php" method="GET">
Last Name : <input type="text" id="First_Name" name="query" />
<input type="submit" value="Search" />
</form>

Here is search.php

<?php
$host="localhost"; // Host name
$username="username"; // Mysql username
$password="password"; // Mysql password
$db_name="ambassador"; // Database name


$con = mysql_connect($host,$username,$password)   or die(mysql_error());
mysql_select_db($db_name, $con)  or die(mysql_error());

$q = strtolower($_GET["q"]);
if (!$q) return;

$sql = "select DISTINCT First_Name as First_Name from First_Name where First_Name      LIKE     '%$q%'";
$rsd = mysql_query($sql);
while($rs = mysql_fetch_array($rsd)) {
$cname = $rs['First_Name'];
echo "$cname
";
}
?>
doujian3132
doujian3132 它只是没有提出任何形式的数据库。我搜索数据库中的名称,但没有弹出结果。
大约 7 年之前 回复
douou0977
douou0977 “不工作”是什么意思?你得到了什么错误?您是否使用浏览器的开发人员工具调试了该问题?
大约 7 年之前 回复

1个回答



我会说你有错误的表名,除非它真的是“First_Name”... </ p>
\ n

但是让我问你:如果有人输入值''; SHOW TABLES'会怎样?</ p>

http://www.php.net/manual/en/security.database.sql-injection.php </ p >
</ div>

展开原文

原文

I would say that you have the wrong table name, unless it really is "First_Name"...

But let me ask you: what happens if someone enters the value " '; SHOW TABLES"?

http://www.php.net/manual/en/security.database.sql-injection.php

duanlan7239
duanlan7239 它不是“SHOW TABLES”,而是“'; SHOW TABLES”。 你在做什么是一个严重的安全风险! 如果直接在MySQL客户端上运行,您的查询是否有效?
大约 7 年之前 回复
duanjia8215
duanjia8215 如果我进入SHOW TABLES,没有任何反应。 是的,我的表是First_Name
大约 7 年之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问
相关内容推荐