我正在使用對PHP文件的Ajax調用來從MySQL數據庫獲取數據,並在HTML中填充選擇選項。問題是選項中的重複項目,我不知道爲什麼。我在工作臺中試過了這個查詢,它帶回了我需要的東西。爲什麼我從MySQL查詢中獲取重複的項目?
PHP文件:
<?php
$q=$_GET["q"];
// open db connection code
$query = "select * from r2rtool.materialtype where type = 'FE' and tools like '%".$q."%'";
$result = mysql_query($query);
$option = "";
while($row = mysql_fetch_array($result))
{
$mat = $row["Material"];
$option.="<option value=\"$mat\">".$mat."</option>";
echo $option;
}
// close db connection
?>
的Ajax功能:
function populatematerial(str)
{
if (str=="") {
document.getElementById("txtHint").innerHTML="";
return;
}
if (window.XMLHttpRequest) {
// IE7+, Firefox, Chrome, Opera, Safari
xmlhttp=new XMLHttpRequest();
}
else{
// IE6, IE5
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange=function()
{
if (xmlhttp.readyState==4 && xmlhttp.status==200) {
document.getElementById("txtHint").innerHTML=xmlhttp.responseText;
}
}
xmlhttp.open("GET","phpfile.php?q="+str,true);
xmlhttp.send();
}
換句話說,在完成檢索/構建數據後執行輸出。您的版本正在建設,輸出,增加一點,再次輸出等... –
它不完全重複,你得到像1 12 123 1234 12345 ... –
我愛你。工作完美。 :-D – TheRealDK