ホームページ  >  記事  >  バックエンド開発  >  PHPを使用した雑学サイトのユーザー検索履歴とレコメンド機能を開発しました。

PHPを使用した雑学サイトのユーザー検索履歴とレコメンド機能を開発しました。

WBOY
WBOYオリジナル
2023-07-01 14:45:071402ブラウズ

PHP を使用して知識 Q&A Web サイトのユーザー検索履歴と推奨機能を開発する

多くの知識 Q&A Web サイトでは、ユーザー検索履歴と推奨機能は重要な機能の 1 つです。パーソナライズされた検索エクスペリエンスを提供し、ユーザーが興味のあるコンテンツを見つけやすくします。この記事では、PHP を使用してこれらの機能を開発する方法について説明します。

まず、ユーザーの検索履歴と推奨コンテンツを保存するデータベースを作成する必要があります。これを実現するには、MySQL またはその他のリレーショナル データベースを使用できます。以下は、検索履歴テーブルの構造の簡単な例です。

CREATE TABLE `search_history` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `user_id` int(11) NOT NULL,
  `keyword` varchar(255) NOT NULL,
  `search_time` datetime NOT NULL,
  PRIMARY KEY (`id`),
  KEY `user_id` (`user_id`),
  KEY `keyword` (`keyword`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

次に、PHP を使用して、ユーザーの検索履歴の記録機能を実装します。すでにユーザーがシステムにログインしており、ユーザーがログイン後に検索操作を実行するとします。以下はサンプル コードです。

// 假设用户已登录,获取用户ID
$user_id = $_SESSION['user_id'];

// 获取用户搜索关键词
$keyword = $_POST['keyword'];
$search_time = date('Y-m-d H:i:s');

// 将搜索历史插入数据库
$query = "INSERT INTO search_history (user_id, keyword, search_time) VALUES ('$user_id', '$keyword', '$search_time')";
mysqli_query($connection, $query);

上記のコードは、ユーザーの検索キーワード、ユーザー ID、検索時刻をデータベースの search_history テーブルに挿入します。

次にレコメンド機能を実装していきます。ユーザーの検索履歴や他のユーザーの検索行動に基づいて、おすすめコンテンツを生成できます。以下はサンプル コードです。

// 获取当前用户的搜索历史
$query = "SELECT keyword FROM search_history WHERE user_id = '$user_id'";
$result = mysqli_query($connection, $query);

// 将搜索历史拼接为字符串,用于生成推荐内容
$search_history = '';
while ($row = mysqli_fetch_assoc($result)) {
  $search_history .= $row['keyword'] . ' ';
}

// 查询其他用户可能感兴趣的内容
$query = "SELECT keyword, COUNT(*) AS count FROM search_history WHERE user_id != '$user_id' AND keyword NOT IN ($search_history) GROUP BY keyword ORDER BY count DESC LIMIT 5";
$result = mysqli_query($connection, $query);

// 输出推荐内容
while ($row = mysqli_fetch_assoc($result)) {
  echo $row['keyword'] . '<br>';
}

上記のコードは、まず現在のユーザーの検索履歴を取得し、それを文字列に連結します。次に、データベースにクエリを実行して、他のユーザーが興味を持つ可能性のあるコンテンツを検索し、検索数の降順に並べ替えて、上位 5 つのキーワードのみを返します。

上記のコード例を通じて、PHP を使用して、知識の質問と回答の Web サイトでのユーザー検索履歴と推奨機能を開発できます。このようにして、パーソナライズされた検索エクスペリエンスをユーザーに提供し、興味のあるコンテンツを見つけやすくします。もちろん、これは単なる単純な例であり、実際のニーズに応じて変更および拡張できます。

以上がPHPを使用した雑学サイトのユーザー検索履歴とレコメンド機能を開発しました。の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。