php - PHP MySQL Jquery - 过滤器列表上的重复行
问题描述
过滤列表时出现重复行。在我过滤列表之前,没有重复值,只有当我过滤它时。
有任何想法吗?
<input type="text" id="myInput" onkeyup="myFunction()" placeholder="Filter models" title="Type in a name">
<ul id="myUL">
$con = mysqli_connect("localhost","un","pw","db");
$listdbtables = array_column(mysqli_fetch_all($con->query('SHOW TABLES FROM searcher_toshiba')),0);
foreach ($listdbtables as $key => $value) {
$sqlqry = "select model, realmodelname from ".$value." GROUP BY model";
$nameResult = mysqli_query($con,$sqlqry);
while($nam = $nameResult->fetch_array()) {
echo'<li><a href="toshiba/codes.php?model=' . $nam['model'] . '">' . $nam['realmodelname'] . '</a></li>';
}
}
</ul>
剧本:
function myFunction() {
var input, filter, ul, li, a, i, txtValue;
input = document.getElementById("myInput");
filter = input.value.toUpperCase();
ul = document.getElementById("myUL");
li = ul.getElementsByTagName("li");
for (i = 0; i < li.length; i++) {
a = li[i].getElementsByTagName("a")[0];
txtValue = a.textContent || a.innerText;
if (txtValue.toUpperCase().indexOf(filter) > -1) {
li[i].style.display = "";
} else {
li[i].style.display = "none";
}
}
}
我尝试了 fetch_assoc,但没有奏效。
while($nam = $nameResult->fetch_assoc()) {
我也尝试了数组唯一,但没有奏效。
任何帮助将不胜感激。
更新
我错了,查询在过滤器之前产生重复项。
我试过了:
$sqlqry = "select (DISTINCT)model, realmodelname from ".$value." GROUP BY model";
但得到了相同的重复结果。
谢谢,
解决方案
我的解决方案最终是:
SHOW TABLES FROM mydb LIKE "e%"