PHP は、知識質問と回答の Web サイトに質問の検索履歴とレコメンデーション機能を実装します。
知識に関する質問と回答の Web サイトでは、ユーザーは多くの場合、必要な回答を見つけるために質問検索を実行する必要があります。ユーザーエクスペリエンスを向上させるために、ユーザーが以前に検索した質問を簡単に閲覧できる検索履歴機能や、レコメンド機能を通じて関連する質問をユーザーに推奨することができます。以下では、PHP を使用してこれら 2 つの関数を実装します。
1) ID とキーワードの 2 つのフィールドを含む、「search_history」という名前のデータ テーブルを作成します。
CREATE TABLE search_history (
id INT AUTO_INCREMENT PRIMARY KEY, keyword VARCHAR(255) NOT NULL
);
2) ユーザーが質問検索を送信するときに、ユーザーが入力した検索キーワードを「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) 検索履歴の表示: ユーザーが以前に検索したキーワードをデータベースから取得し、ページ上に表示します。
// 连接数据库 $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) id と content の 2 つのフィールドを含む、「questions」という名前のデータ テーブルを作成します。
CREATE TABLE question (
id INT AUTO_INCREMENT PRIMARY KEY, content VARCHAR(255) NOT NULL
);
2) ユーザーが質問検索を送信すると、検索キーワードと関連する質問がデータベースに保存されます。
// 连接数据库 $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) ユーザーの現在の検索キーワードに基づいて、関連する質問をデータベースから取得し、ユーザーに推奨します。
// 连接数据库 $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);
?>
上記のコード例を通じて、知識の質問と回答の Web サイトに質問の検索履歴と推奨機能を実装して、改善を図ることができます。ユーザー エクスペリエンス 。ユーザーが必要な答えをより早く見つけられるようにします。もちろん、これは単なる例であり、実際のアプリケーションでは、検索アルゴリズムの最適化やデータベースのパフォーマンスの向上など、さらに多くの要素を考慮する必要があります。ただし、この記事が基本的な考え方と実装方法を提供できれば幸いです。
以上がPHPは知識問答サイトに質問の検索履歴やレコメンド機能を実装しています。の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。