Forum for IT, data og webutvikling

Still spørsmål og svar på IT, data og webutvikling

Du er ikke logget på

#1 06-12-2011 23:14:54

recursion
Gjest
Registered: 24-11-2011
Posts: 26

Søk mens du skriver med AJAX

<html>
<head>
<script type="text/javascript">
function visHint(str)
{
var xmlhttp;
if (str.length==0)
  { 
  document.getElementById("txtHint").innerHTML="";
  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("txtHint").innerHTML=xmlhttp.responseText;
    }
  }
xmlhttp.open("GET","gethint.php?q="+str,true);
xmlhttp.send();
}
</script>
</head>
<body>

<h3>Begynn å skriv inn et navn i feltet nedenfor (tips: begynn med a,b,c,d eller e:</h3>
<form action=""> 
Fornavn: <input type="text" id="txt1" onkeyup="visHint(this.value)" />
</form>
<p>Forslag: <span id="txtHint"></span></p> 

</body>
</html>

gethint.php ser slik ut:

<?php
// fyll opp array med navn
$a[]="Anna,"Aslaug","Anne","Berit","Brit","Celine","Dorte","Doris","Emma";

//få tak i q parameter fra URL med GET
$q=$_GET["q"];

//slå opp alle hints fra array hvis length av q>0
if (strlen($q) > 0)
  {
  $hint="";
  for($i=0; $i<count($a); $i++)
    {
    if (strtolower($q)==strtolower(substr($a[$i],0,strlen($q))))
      {
      if ($hint=="")
        {
        $hint=$a[$i];
        }
      else
        {
        $hint=$hint." , ".$a[$i];
        }
      }
    }
  }

// Skriver "ingen forslag" hvis ingen hint er funnet

if ($hint == "")
  {
  $response="ingen forslag";
  }
else
  {
  $response=$hint;
  }

//returner respons
echo $response;
?>

Last edited by recursion (06-12-2011 23:15:09)

Offline

Quick post

Skriv din melding og trykk på send

Board footer

Kjører på FluxBB

Stop Spam Harvesters, Join Project Honey Pot