【问题标题】:Jquery UI autocomplete MySQL/PHPJquery UI 自动完成 MySQL/PHP
【发布时间】:2012-06-19 16:05:59
【问题描述】:

我得到了这个 PHP 代码:

// connect to mysql
require_once('includes/connect.php');
// include config
include('includes/config.php');

$nameser = $_GET['term'];

$search = Array();
$names = '';
$result = mysql_query("SELECT name FROM customers WHERE name LIKE '%".$nameser."%'");
while ($row = mysql_fetch_assoc($result))
    $names = json_encode($row['name']);

echo $names;

但是输出的格式不正确,所以自动完成脚本无法弄清楚它应该如何处理它。

另外,这个例子只输出了 1 个条目,但应该远不止这些。

有什么想法吗?

【问题讨论】:

    标签: php jquery mysql jquery-ui


    【解决方案1】:

    这是正确的代码:

    $names = array();
    while ($row = mysql_fetch_assoc($result))
      $names[] = $row['name'];
    
    echo json_encode($names);
    

    由于不推荐使用mysql_* 函数,请考虑使用mysqliPDO

    【讨论】:

    • 它并没有像预期的那样工作 - 我得到了一些正确的输出,但一些结果只是显示为空。
    • 另外 - 重写它以使用 mysqli 需要多少工作?
    • 对于NULL,我不确定这个问题。也许customer.name 中的一些值是NULL?将您的代码从 mysql_* 转换为 mysqli 应该不会太难。
    • 在 phpmyadmin 中进行查询不会返回值为 NULL 的行 - 但是它们包含特殊的丹麦字符(Æ、Ø、Å)
    • 好的,用 htmlentities 修复了该部分。现在我遇到了一个问题,例如在我的搜索框中,Ø 显示为 Ø而不是Ø。
    猜你喜欢
    • 2015-01-25
    • 1970-01-01
    • 2011-07-15
    • 2011-07-23
    • 1970-01-01
    相关资源
    最近更新 更多