Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/294.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 使用jqueryautocomplete,使用外部源搜索术语开头的条目_Php_Jquery_Json_Autocomplete - Fatal编程技术网

Php 使用jqueryautocomplete,使用外部源搜索术语开头的条目

Php 使用jqueryautocomplete,使用外部源搜索术语开头的条目,php,jquery,json,autocomplete,Php,Jquery,Json,Autocomplete,我的问题是,我想在数据库中搜索一个条目,使用的是从开头开始,而不是中间或结尾。我看到了其他StackOverflow的答案,但这些答案涉及Jquery以数组作为源参数的自动完成 假设我有一本id=school的教科书: <input type="text" id="school"> 在自动完成发送到的foobar.php中,我有以下代码: if (isset($_GET['term'])) { $return_arr = array(); try { $stmt = $co

我的问题是,我想在数据库中搜索一个条目,使用的是从开头开始,而不是中间或结尾。我看到了其他StackOverflow的答案,但这些答案涉及Jquery以数组作为源参数的自动完成

假设我有一本id=school的教科书:

<input type="text" id="school">
在自动完成发送到的foobar.php中,我有以下代码:

if (isset($_GET['term'])) {
$return_arr = array();
try {
    $stmt = $conn->prepare('SELECT School_Name FROM SOME_TABLE WHERE School_Name LIKE :term');
    $stmt->execute(array('term' => '%'.$_GET['term'].'%'));
    while ($row = $stmt->fetch()) {
        $return_arr[] = ucwords(strtolower($row['School_Name']));
    }
} catch (PDOException $e) {
    echo 'ERROR: '.$e->getMessage();
}

/* Toss back results as json encoded array. */
echo json_encode($return_arr);
}

只需执行正确的SQL查询:

$stmt->execute(array('term' => $_GET['term'].'%'));
如果只需要以“A”开头的结果,则不能像%A%那样使用
%
将匹配该“方向”上的所有内容

因此,如果使用
A%
,将匹配以“A”开头的所有内容。如果使用
%A
将匹配以“A”结尾的所有内容

$stmt->execute(array('term' => $_GET['term'].'%'));