Position actuelle: Accueil> Derniers articles> Les résultats de recherche d'enregistrements de chat et de recherche s'affichent dans le système de chat en direct PHP

Les résultats de recherche d'enregistrements de chat et de recherche s'affichent dans le système de chat en direct PHP

gitbox 2025-06-06

1. Aperçu fonctionnel

Avec l'augmentation de la demande de messagerie instantanée, le système de chat en direct développé par PHP est progressivement devenu un module important dans les sites Web et les applications. Pour améliorer l'expérience utilisateur, la fonction de recherche sur les antécédents de chat est devenue particulièrement critique. Cet article présentera comment créer des fonctions de recherche dans PHP Chat System et affichera les résultats de recherche de manière bien.

2. Implémentation de la recherche d'enregistrements de chat

2.1 Conception de la boîte de recherche frontale et déclenchement des événements

Nous créons une interface d'entrée utilisateur via la technologie HTML et JavaScript, et utilisons AJAX pour soumettre des demandes de mots clés au backend de manière asynchrone pour réaliser une expérience de recherche sans actualisation:

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

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

2.2 Interface de requête du mot-clé backend

Le backend exploite principalement la base de données via PDO, filtre le contenu contenant des mots clés utilisateur à partir des enregistrements de chat et renvoie enfin des données dans JSON:

 
<?php
// Connectez-vous à la base de données
$pdo = new PDO('mysql:host=localhost;dbname=chat', 'root', 'password');

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

// mettre en œuvreSQLRequête floue
$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);

// retourJSONDonnées de format
header('Content-Type: application/json');
echo json_encode($results);

3. Comment afficher les résultats de recherche

3.1 Affichage dynamique des résultats de recherche

Après avoir obtenu les données renvoyées par le backend, le frontend construit dynamiquement la liste de résultats via JavaScript pour afficher le contenu de chat correspondant:

 
<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 Renvoie la structure des données Description

Tant que le frontal envoie une demande, le back-end PHP répondra aux données de liste de résultats. Le processus complet est efficace et la structure est claire, et elle convient à divers systèmes de chat en direct:

 
<?php
// Connectez-vous à la base de données
$pdo = new PDO('mysql:host=localhost;dbname=chat', 'root', 'password');

// Obtenez des mots clés
$keyword = $_POST['keyword'];

// recherche匹配内容
$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);

// SortirJSONRésultats du format
header('Content-Type: application/json');
echo json_encode($results);

4. Conclusion

Grâce à l'explication de cet article, nous implémentons systématiquement un module de recherche et d'affichage d'enregistrements de chat complet. Cette fonction améliore non seulement le caractère pratique du système de chat, mais optimise également l'efficacité d'accès de l'utilisateur des informations historiques. Lorsque les développeurs construisent un système de chat en temps réel, ils peuvent étendre de manière flexible plus de capacités interactives en fonction de la structure ci-dessus, telles que le filtrage temporel, la mise en évidence des mots clés et d'autres fonctions.