Avec la vulgarisation des réseaux sociaux et la diversification des méthodes de communication en ligne, les systèmes de chat en temps réel sont devenus un outil important dans la vie quotidienne et le travail. L'histoire du chat est énorme avec l'augmentation du temps d'utilisation, et comment récupérer rapidement et avec précision les messages historiques est devenu la clé de l'expérience utilisateur.
Cet article présentera comment réaliser la fonction de recherche des enregistrements de chat et ses résultats dans un système de chat en direct basé sur PHP, et sera accompagné d'exemples de code pratiques pour les développeurs pour se référer et se référer.
Avant d'implémenter la recherche d'enregistrements de chat, une conception de table de base de données raisonnable est la base. La structure de la table d'enregistrement de chat couramment utilisée contient généralement les champs suivants:
Tout d'abord, vous devez ajouter une zone de recherche et un bouton de recherche à l'interface utilisateur, permettant à l'utilisateur de saisir les mots clés et de soumettre une demande de recherche.
<form action="search.php" method="post">
<input type="text" name="keyword" placeholder="Entrez les mots clés">
<input type="submit" value="recherche">
</form>
L'arrière-plan traite les demandes de recherche via PHP, se connecte à la base de données et exécute des requêtes floues. L'exemple est le suivant:
<?php
// Configuration de la connexion de la base de données
$host = 'localhost';
$dbname = 'chat_system';
$username = 'root';
$password = '';
try {
$conn = new PDO("mysql:host=$host;dbname=$dbname", $username, $password);
$conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
} catch (PDOException $e) {
echo "La connexion de la base de données a échoué: " . $e->getMessage();
exit;
}
$keyword = $_POST['keyword'];
$sql = "SELECT * FROM chat_records WHERE message LIKE :keyword";
$query = $conn->prepare($sql);
$query->bindValue(':keyword', '%' . $keyword . '%');
$query->execute();
$results = $query->fetchAll(PDO::FETCH_ASSOC);
foreach ($results as $result) {
echo $result['sender'] . ' ' . $result['message'] . '<br>';
}
?>
Une fois que l'utilisateur a soumis la recherche, passez à la page de résultats de recherche et affiche le contenu de chat pertinent. L'exemple de code d'affichage est le suivant:
<?php if(count($results) > 0): ?>
<?php foreach($results as $result): ?>
<div class="search-result">
<p><?php echo $result['sender']; ?>: <?php echo $result['message']; ?></p>
<p><?php echo $result['timestamp']; ?></p>
</div>
<?php endforeach; ?>
<?php else: ?>
<p>Aucun historique de chat pertinent n'a été trouvé。</p>
<?php endif; ?>
La logique de code est concise et claire: déterminez d'abord si le résultat de la recherche existe. S'il existe, l'expéditeur, le contenu et l'heure du message seront sortis un par un; Sinon, il n'y aura pas de record correspondant.
Grâce à la conception raisonnable de la base de données et au traitement back-end PHP, combiné avec l'interface de recherche frontale, les fonctions de recherche d'enregistrements et d'affichage des enregistrements de chat dans le système de chat en temps réel peuvent être réalisées efficacement. Cette solution est une démonstration de base, et les développeurs peuvent se développer et optimiser en fonction des besoins réels, tels que l'ajout de la pagination, l'optimisation de la recherche, le contrôle de l'autorisation, etc. pour améliorer la pratique et l'expérience utilisateur du système.