ajax实时建议搜索无法正常工作

时间:2013-08-01 12:13:03

标签: php javascript html ajax search

我正在尝试创建实时搜索,但控制台总是给我一个错误,有人可以看看我在做什么吗?提前谢谢

所以这是我的HTML代码:

<li id="ZoekBalk">
<!--De zoekbalk-->
    <form action='films.php' method='get'id='zoekform'>
        <input id="ZoekBalkSearch" type="search" name="zoekparameter" placeholder="Geef een zoekterm in." onkeyup="ajaxzoeken(this.value)" />
        <input id="ZoekButton" type="submit" value="Zoek"/>
    </form>
    <div id="resultatenPlaatshouder"></div>
</li>

我的javascript函数:

function ajaxzoeken( str ) {
   if ( str.length == 0 ) { 
      document.getElementById("resultatenPlaatshouder").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("resultatenPlaatshouder").innerHTML = xmlhttp.responseText;
      }
  }
  xmlhttp.open("GET", "ajaxzoeken.php?teZoeken = " + str, true);
  xmlhttp.send();
}

和我的php代码:

<?php
   require 'data.php';
   if ( isset( $_GET['teZoeken'] ) ) {
      $tezoeken=$_GET['teZoeken'];
      //voeg eventuele extra karakters toe aan de zoekquery
      $tezoeken = '%'.$tezoeken.'%';

      //zoek in de database (gebruik ook bindparams als beveiliging tegen sql injection)
      $query = $connection->prepare("SELECT id,filmnaam,posterlink FROM films WHERE filmnaam ILIKE :zoek ORDER BY filmnaam;");

      $query->bindParam(':zoek',$tezoeken,PDO::PARAM_STR);
      $query->execute();

      //geef alle gevonden films terug in een table
      echo '<table>'

      while ( $row = $query->fetch( PDO::FETCH_BOTH ) ) {
          $id = $row[0];
          $filmnaam = $row[1];
          $poster = $row[2];

          echo "<tr><td><a href='moviePage.php?id=$id'><img class='miniposter' src='$poster' alt='De poster van de film'/></a></td><td><a href='moviePage.php?id=$id'><strong>$filmnaam</strong></a></td></tr>";
      }
      echo '</table>';
   }
?>

1 个答案:

答案 0 :(得分:0)

我找到了,我忘记了;在回声中,该死是多么愚蠢的错误