我正在遵循教程 ( http://www.pontikis.net/blog/jquery-ui-autocomplete-step-by-step ),并尝试使用本地 phpmyadmin 数据库、使用安装在我的 PC 上的 Xampp 来执行此操作。
我有一个名为 cars 的表,其中包含 id 和 name 列,我填写了 2 个条目,但是自动完成功能没有工作,事实上,我在我的表格下面没有得到任何建议。因为我不能用所有的 JS 文件来打扰你,也许有人可以解释一下它到底做了什么,特别是最后一个 while 函数,因为我认为问题就在这里:
$sql = 'SELECT id, name FROM cars';
for($i = 0; $i < $p; $i++) {
$sql .= ' AND name LIKE ' . "'%" . $conn->real_escape_string($parts[$i]) . "%'";
}
while($row = $rs->fetch_assoc()) {
$a_json_row["id"] = $row['id'];
$a_json_row["value"] = $row['name'];
$a_json_row["label"] = $row['name'];
array_push($a_json, $a_json_row);
}
最佳答案
您没有在 SQL 语句中声明 WHERE
。查询可能失败,产生零自动完成选项。
$sql = 'SELECT id, name FROM cars';
for($i = 0; $i < $p; $i++) {
if ($i == 0){ $sql.= " WHERE"; } // THIS LINE HERE
$sql .= ' AND name LIKE ' . "'%" . $conn->real_escape_string($parts[$i]) . "%'";
}
关于javascript - 来自数据库的 JQuery 自动完成表单失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34321799/