現在の位置: ホーム> 最新記事一覧> チャットレコード検索と検索結果は、PHPライブチャットシステムに表示されます

チャットレコード検索と検索結果は、PHPライブチャットシステムに表示されます

gitbox 2025-06-06

1。機能的な概要

インスタントメッセージングの需要の増加に伴い、PHPが開発したライブチャットシステムは、ウェブサイトやアプリケーションで徐々に重要なモジュールになりました。ユーザーエクスペリエンスを向上させるために、チャット履歴検索機能が特に重要になっています。この記事では、PHPチャットシステムで検索機能を構築する方法を紹介し、検索結果を適切に表示します。

2。チャットレコード検索の実装

2.1フロントエンド検索ボックスの設計とイベントトリガー

HTMLおよびJavaScriptテクノロジーを介してユーザー入力インターフェイスを作成し、Ajaxを使用してキーワードリクエストをバックエンドに非同期に送信して、更新されない検索エクスペリエンスを実現します。

 
<input type="text" id="search-input">
<button onclick="search()">検索</button>

<script>
function search() {
  var keyword = document.getElementById("search-input").value;
  // Ajax请求获取検索结果
  // ...
}
</script>

2.2バックエンドキーワードクエリインターフェイス

バックエンドは主にPDOを介してデータベースを操作し、チャットレコードからユーザーキーワードを含むコンテンツをフィルターし、最後にJSONのデータを返します。

 
<?php
// データベースに接続します
$pdo = new PDO('mysql:host=localhost;dbname=chat', 'root', 'password');

// 获取検索关键词
$keyword = $_POST['keyword'];

// 埋め込むSQLファジークエリ
$stmt = $pdo->prepare("SELECT * FROM chat_records WHERE content LIKE ?");
$search_keyword = "%{$keyword}%";
$stmt->bindParam(1, $search_keyword);
$stmt->execute();

$results = $stmt->fetchAll(PDO::FETCH_ASSOC);

// 戻るJSONフォーマットデータ
header('Content-Type: application/json');
echo json_encode($results);

3.検索結果を表示する方法

3.1検索結果の動的表示

バックエンドで返されたデータを取得した後、FrontEndはJavaScriptを介して結果リストを動的に構築して、一致するチャットコンテンツを表示します。

 
<ul id="search-results"></ul>

<script>
function search() {
  var keyword = document.getElementById("search-input").value;
  $.post('/search.php', { keyword: keyword }, function(results) {
    var list = "";
    for (var i = 0; i < results.length; i++) {
      list += "<li>" + results[i].content + "</li>";
    }
    document.getElementById("search-results").innerHTML = list;
  });
}
</script>

3.2 PHPはデータ構造の説明を返します

フロントエンドがリクエストを送信する限り、PHPバックエンドは結果リストデータに応答します。完全なプロセスは効率的であり、構造は明確であり、さまざまなライブチャットシステムに適しています。

 
<?php
// データベースに接続します
$pdo = new PDO('mysql:host=localhost;dbname=chat', 'root', 'password');

// キーワードを取得します
$keyword = $_POST['keyword'];

// 検索匹配内容
$stmt = $pdo->prepare("SELECT * FROM chat_records WHERE content LIKE ?");
$search_keyword = "%{$keyword}%";
$stmt->bindParam(1, $search_keyword);
$stmt->execute();

$results = $stmt->fetchAll(PDO::FETCH_ASSOC);

// 出力JSONフォーマット結果
header('Content-Type: application/json');
echo json_encode($results);

4。結論

この記事の説明を通して、完全なチャットレコード検索と表示モジュールを体系的に実装します。この機能は、チャットシステムの実用性を向上させるだけでなく、ユーザーの履歴情報へのアクセスを最適化します。開発者がリアルタイムチャットシステムを構築すると、時間フィルタリング、キーワードハイライト、その他の機能など、上記の構造に基づいてよりインタラクティブな機能を柔軟に拡張できます。