ホームページ > バックエンド開発 > PHPの問題 > PHPで入力中にクエリ結果を表示する機能を実装する方法

PHPで入力中にクエリ結果を表示する機能を実装する方法

PHPz
リリース: 2023-04-11 10:12:26
オリジナル
871 人が閲覧しました

PHP は一般的に使用されるサーバーサイド スクリプト言語であり、データの処理や HTML ページの生成に役立ちます。多くの Web アプリケーションでは、データベースへのクエリは一般的な要件です。これにより、ユーザーはキーワードを入力することで必要な情報を取得できるからです。

ここでは、PHP を使用して、入力中にクエリ結果を表示するコードを記述する方法を紹介します。このようにして、ユーザーがキーワードを入力すると、一致した結果がリアルタイムで表示され、検索プロセスがより便利かつ効率的になります。

まず、データベースに接続する必要があります。PHP の組み込み mysqli または PDO オブジェクトを使用できます。この記事ではmysqliを使用します。

//连接数据库
$con = mysqli_connect("localhost","username","password","database");
if (!$con){
    die('Could not connect: ' . mysqli_error());
}
ログイン後にコピー

次に、ユーザーが入力したキーワードを取得する必要があります。これは、$_POST または $_GET 配列を使用して実現できます。ここでは $_POST 配列を使用します。

//获取用户输入
$keyword = $_POST["keyword"];
ログイン後にコピー

次に、ユーザーが入力したキーワードに基づいてデータベースにクエリを実行し、結果をページに出力する必要があります。入力中に表示する効果を実現するには、AJAX テクノロジーを使用する必要があります。

AJAX は、ブラウザとサーバー間の非同期通信のテクノロジであり、ページを更新せずにデータを更新できます。この例では、これを実現するために jQuery の AJAX メソッドを使用します。

//使用AJAX来查询数据库
$.ajax({
    type: "POST",
    url: "search.php",
    data: { keyword: keyword },
    success: function(data){
        $("#results").html(data); //将查询结果输出到页面上
    }
});
ログイン後にコピー

上記のコードは、ユーザーが入力したキーワードを処理のために search.php ファイルに渡し、結果をページに出力します。

search.php ファイルでは、データベースを取得し、一致する結果を返す必要があります。以下は単純な例です:

//查询数据库
$sql = "SELECT * FROM table WHERE column LIKE '%".$keyword."%'";
$result = mysqli_query($con,$sql);

//输出查询结果
while($row = mysqli_fetch_array($result)){
    echo $row['column']."<br>";
}
ログイン後にコピー

上記のコードは、列名 column を持つテーブル内のキーワードに一致する行をデータベースにクエリし、それらをページに出力します。

最後に、クエリ結果を表示するために、ページにテキスト ボックスとラベルを追加する必要があります。

<input type="text" name="search" id="search" onkeyup="search()">
<div id="results"></div>
ログイン後にコピー

これで、入力中にクエリ結果を表示する機能が完成しました。ユーザーはキーワードを入力するだけで、ページに一致する結果がリアルタイムで表示されます。このようにして、Web アプリケーションのユーザー エクスペリエンスと検索効率を大幅に向上させることができます。

つまり、PHP への入力中にクエリ結果を表示するには、AJAX テクノロジの使用と、データ取得を実現するための SQL ステートメントの合理的な使用が必要です。この記事がお役に立てば幸いです。

以上がPHPで入力中にクエリ結果を表示する機能を実装する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート