【问题标题】:jquery ui autocomplete with database not workingjquery ui自动完成与数据库不工作
【发布时间】:2015-10-18 22:50:01
【问题描述】:

我正在尝试使用 jquery ui 自动完成功能构建一个简单的输入表单,客户可以在其中找到他们的手机品牌,选择一个之后,他们将转到下一页完成表单,以便他们获得估算值。

唯一的问题是我似乎无法让自动完成功能工作。我制作了一个简单的数据库,其中只有一个名为merken 的列,并且我一直在使用网上的教程通过 PHP 脚本访问该数据库。当我使用旧的mysql_fetch_array 时,我可以访问数据库但只返回一项,所以我更新到 PDO 函数,没有返回任何结果。

这是我一直在使用的代码,结果为零。

<?php
$dbhost = 'localhost';
$dbuser = 'myuser';
$dbpass = 'mypass';
$dbname = 'autocomplete';

try
{
    $conn = new PDO("mysql:host=$dbhost;dbname=$dbname", $dbuser, $dbpass);
}

catch(PDOException $e)
{
    echo $e->getMessage();
}

$return_arr = array();

if($conn)
{
    $ac_term = "%".$_GET['term']."%";
    $query = "SELECT * FROM merken LIKE :term";
    $result = $conn->prepare($query);
    $result->bindValue(":term", $ac_term);
    $result->execute();

    while ($row = $result->fetch(PDO::FETCH_ASSOC)){
        $row_array['value']= $row['merken'];

        array_push($return_arr, $row_array);
    }
}

$conn = null;

echo json_encode($return_arr);

?>  

非常感谢任何帮助,因为我已经在此功能上停留了几天。

提前致谢。

【问题讨论】:

    标签: php jquery jquery-ui pdo autocomplete


    【解决方案1】:

    你的 where 语句在哪里?不是:

    SELECT * FROM merken LIKE :term
    

    但是:

    SELECT * FROM merken WHERE column_name LIKE :term
    

    【讨论】:

    • Daimos 非常感谢您确实成功了。现在我在搜索品牌时得到了整个列表。我将把这个解释添加到我的php学习书中。
    猜你喜欢
    • 1970-01-01
    • 2011-02-21
    • 2019-09-29
    • 2014-10-22
    • 1970-01-01
    • 2012-10-22
    • 1970-01-01
    • 2011-05-31
    • 2011-02-02
    相关资源
    最近更新 更多