1

jqueryオートコンプリートを使用してphp経由でSQLデータベースを検索する.aspxページがあります。問題は、データベース列の「連絡先」にユーザーの名が「ピーター」のレコードが何百もあるため、「ピーター」と入力しても、姓の文字を入力し始めるまで結果が得られないことです。すべての結果を表示するにはどうすればよいですか? 「ジョン」などの結果が小さい場合は正常に機能します。また、オートコンプリートの minLength を 3 に保持したいと考えています。

PHP.ini の max_input_vars をデフォルトの 1000 から変更して IIS をリセットしようとしましたが、うまくいきませんでした。

jqueryコード

$(function () {
    $("#queryString").autocomplete({
        source: function(request, response) {
            $.ajax({
            url: "Search.php",
            data: { term: $("#queryString").val(), searchby: $("#ddlSearch").val()},
            dataType: "json",
            type: "GET",
                success: function(data){
                response(data);
                }
            });
        },
        minLength: 3,
        multiple: true, 
        multipleSeparator: " "
    })
});

PHPファイル

$tsql = "SELECT [Contact] FROM [Goldmine].[dbo].[CONTACT1] WHERE [Contact] LIKE '$queryString%'";
}

If ($ddlSearch == 'Name') {

$stmt = sqlsrv_query( $conn, $tsql); 
$data = array();
while( $row = sqlsrv_fetch_array( $stmt, SQLSRV_FETCH_NUMERIC))     
{   
$data = array_merge( $data, array_values($row) );
sort($data, SORT_NATURAL | SORT_FLAG_CASE);
}
echo json_encode($data);
4

0 に答える 0