Jeg har lidt problemer med et script:
<script type="text/javascript">
function showResult(str)
{
if (str.length==0)
{
document.getElementById("livesearch").innerHTML="";
document.getElementById("livesearch").style.border="0px";
return;
}
if (window.XMLHttpRequest)
{// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp=new XMLHttpRequest();
}
else
{// code for IE6, IE5
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange=function()
{
if (xmlhttp.readyState==4 && xmlhttp.status==200)
{
document.getElementById("livesearch").innerHTML=xmlhttp.responseText;
document.getElementById("livesearch").style.border="1px solid #A5ACB2";
}
}
xmlhttp.open("GET","livesearch.php?q="+str,true);
xmlhttp.send();
}
</script>
<form>
<input type="text" size="30" onKeyUp="showResult(this.value)" />
<div id="livesearch" style="background-color:#FFFFFF;"></div>
</form>
livesearch.php:
<?php
include("db_connect.php");
if ($_SESSION['id']) {
$q=$_GET["q"];
$sql="SELECT * FROM Bruger WHERE first like '%%".$q."%%' or last like '%%".$q."%%'";
$result = mysql_query($sql);
while($row = mysql_fetch_array($result))
{
echo "<p><a href=\"profile.php?username=$row[username]\">$row[first] $row[last]</a></p><br/>";
}
mysql_close($con);
} else {
header('Location: index.php');
}
?>
Mit problem er at når jeg "søger" lister den kun de to første navne i databasen. dvs. den søger slet ikke på navne som ligger længere nede end de to første indsatte i databasen..
Nogen der har en ide til hvorfor?