0

我想创建一个搜索框,它显示与我们在框中输入的相关数据库中的匹配记录列表,我有使用 Jquery 的自动完成功能。没关系,但我想从我的数据库表中选择记录,而不是在 var availableTags 中手动提供它。我想在下面的代码中从数据库中获取 var availableTags 中的记录..

这是我的 Smarty 模板代码.....

我的 Html:(searchh.tpl)

{block name=head}
    <title>Untitled Document</title>
      <link rel="stylesheet" href="http://code.jquery.com/ui/1.10.2/themes/smoothness/jquery-ui.css" />
      <script src="http://code.jquery.com/jquery-1.9.1.js"></script>
      <script src="http://code.jquery.com/ui/1.10.2/jquery-ui.js"></script>
      <link rel="stylesheet" href="/resources/demos/style.css" />
      <script>

    }   
      $(function() {
        var availableTags = [
          "Python",
          "Ruby",
          "Scala",
          "Scheme"
        ];
        $( "#tags" ).autocomplete({
          source: availableTags     
        });
      });

      </script>
    {/block}
    {block name=body}
    <div class="ui-widget">
      <label for="tags">Tags: </label>
      <input id="tags" />
    </div>
    {/block}

我的 php :(searchh.php)

<?php 
    include("include/config.inc.php");
    $pArray = 0;
    $search = isset($_POST['search']) && ($_POST["search"] != "") ? $_POST['search']:''; 
    if($search != '')
    {   
      $query="select * from party where partyName like '%$search%' ";
      $result = mysql_query($query);
      $pArray = array();
      $n = 0;
      while ($row = mysql_fetch_array($result)) 
      {
        $pArray[$n]['partyId']   = $row['partyId'];
        $pArray[$n]['partyName'] = $row['partyName'];
        $n++;
      }
    }
    include("./bottom.php");
    $smarty->assign("search",$search);
    $smarty->assign("pArray",$pArray);
    $smarty->display('searchh.tpl');
    ?>

如果有人可以提供帮助,将非常感谢我。谢谢..

4

1 回答 1

2

更改您的 url 路径,例如 {$smarty.server.PHP_SELF | dirname}.balanceAj.php 并在 ajax 函数中使用 get 方法并使用 post 方法获取数据。如果您使用 get 方法发送数据(用于获取数据 $_GET[])和 Post 方法使用(用于获取数据 $_post[])

于 2013-03-23T09:29:57.107 回答