PHP implémente les fonctions d'historique de recherche de questions et de recommandation dans le site Web de questions et réponses de connaissances.
Dans un site Web de questions et réponses de connaissances, les utilisateurs doivent souvent effectuer des recherches de questions pour trouver les réponses dont ils ont besoin. Afin d'améliorer l'expérience utilisateur, nous pouvons fournir aux utilisateurs une fonction d'historique de recherche afin que les utilisateurs puissent facilement visualiser les questions qu'ils ont recherchées auparavant, et nous pouvons également recommander des questions connexes aux utilisateurs via la fonction de recommandation. Ci-dessous, nous utiliserons PHP pour implémenter ces deux fonctions.
1) Créez une table de données nommée "search_history", contenant deux champs : id et mot-clé.
CREATE TABLE search_history (
id INT AUTO_INCREMENT PRIMARY KEY, keyword VARCHAR(255) NOT NULL
);
2) Lorsque l'utilisateur soumet une recherche de questions, insérez les mots-clés de recherche saisis par l'utilisateur dans la table "search_history".
// 连接数据库 $conn = mysqli_connect("localhost", "username", "password", "database"); // 检查数据库连接 if (!$conn) { die("数据库连接失败: " . mysqli_connect_error()); } // 获取用户输入的搜索关键词 $keyword = $_POST["keyword"]; // 将搜索关键词插入到数据库中 $sql = "INSERT INTO search_history (keyword) VALUES ('$keyword')"; mysqli_query($conn, $sql); // 关闭数据库连接 mysqli_close($conn);
?>
3) Afficher l'historique de recherche : Récupérez les mots-clés précédemment recherchés par l'utilisateur dans la base de données et affichez-les sur la page.
// 连接数据库 $conn = mysqli_connect("localhost", "username", "password", "database"); // 检查数据库连接 if (!$conn) { die("数据库连接失败: " . mysqli_connect_error()); } // 从数据库中获取搜索历史 $sql = "SELECT keyword FROM search_history ORDER BY id DESC LIMIT 10"; $result = mysqli_query($conn, $sql); // 显示搜索历史 if (mysqli_num_rows($result) > 0) { while ($row = mysqli_fetch_assoc($result)) { echo $row["keyword"] . "<br>"; } } else { echo "没有搜索历史。"; } // 关闭数据库连接 mysqli_close($conn);
?>
1) Créez une table de données nommée "questions", contenant deux champs : id et content.
CRÉER des questions de TABLE (
id INT AUTO_INCREMENT PRIMARY KEY, content VARCHAR(255) NOT NULL
);
2) Une fois que l'utilisateur a soumis la recherche de questions, les mots-clés de recherche et les questions associées sont enregistrés dans la base de données.
// 连接数据库 $conn = mysqli_connect("localhost", "username", "password", "database"); // 检查数据库连接 if (!$conn) { die("数据库连接失败: " . mysqli_connect_error()); } // 获取用户输入的搜索关键词 $keyword = $_POST["keyword"]; // 查询相关的问题 $sql = "SELECT content FROM questions WHERE content LIKE '%$keyword%'"; $result = mysqli_query($conn, $sql); // 将搜索关键词和相关问题保存到数据库中 while ($row = mysqli_fetch_assoc($result)) { $content = $row["content"]; $sql = "INSERT INTO questions (content) VALUES ('$content')"; mysqli_query($conn, $sql); } // 关闭数据库连接 mysqli_close($conn);
?>
3) Obtenez des questions connexes de la base de données en fonction des mots-clés de recherche actuels de l'utilisateur et recommandez-les à l'utilisateur.
// 连接数据库 $conn = mysqli_connect("localhost", "username", "password", "database"); // 检查数据库连接 if (!$conn) { die("数据库连接失败: " . mysqli_connect_error()); } // 获取用户输入的搜索关键词 $keyword = $_POST["keyword"]; // 查询相关的问题 $sql = "SELECT content FROM questions WHERE content LIKE '%$keyword%'"; $result = mysqli_query($conn, $sql); // 显示推荐的问题 if (mysqli_num_rows($result) > 0) { while ($row = mysqli_fetch_assoc($result)) { echo $row["content"] . "<br>"; } } else { echo "没有相关的问题。"; } // 关闭数据库连接 mysqli_close($conn);
?>
Grâce aux exemples de code ci-dessus, nous pouvons implémenter des fonctions d'historique de recherche de questions et de recommandation dans le site Web de questions et réponses de connaissances, améliorer l'expérience utilisateur et aider les utilisateurs à trouver plus rapidement les réponses dont ils ont besoin. . Bien entendu, il ne s’agit que d’un exemple simple et d’autres facteurs doivent être pris en compte dans les applications réelles, tels que l’optimisation des algorithmes de recherche et l’amélioration des performances des bases de données. Cependant, j'espère que cet article pourra vous fournir une idée de base et une méthode de mise en œuvre.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!