ホームページ >バックエンド開発 >PHPチュートリアル >PHP は、知識の質問と回答の Web サイトにユーザー アテンション機能を実装します。

PHP は、知識の質問と回答の Web サイトにユーザー アテンション機能を実装します。

PHPz
PHPzオリジナル
2023-07-01 22:01:381323ブラウズ

PHP は、知識の質問と回答の Web サイトにユーザー アテンション機能を実装します。

インターネットの急速な発展に伴い、知識の質問と回答の Web サイトは、人々が情報を取得し、問題を解決するための重要な手段になってきました。 。ユーザーのニーズをより適切に満たすために、重要な機能はユーザーのフォローです。つまり、ユーザーは問題、トピック、または興味のある他のユーザーをフォローして、関連する最新情報やリマインダーを取得できます。この記事では、PHP を使用して知識質問と回答の Web サイトにユーザー アテンション機能を実装する方法を紹介し、コード サンプルを添付します。

  1. データベース設計
    コードの記述を開始する前に、まずユーザーが関心のある情報を保存するデータベース テーブルを設計する必要があります。次のフィールドを含む「follows」という名前のテーブルを作成できます。
  • id: フォロー関係の一意の識別子。自己増加する整数を使用できます。
  • follower_id: フォロワーのユーザー ID。
  • following_id: フォローされている人のユーザーID。
  • created_at: 関係が作成された時刻に注意してください。

次の SQL ステートメントを使用してこのテーブルを作成できます:

CREATE TABLE `follows` (
  `id` int(11) unsigned NOT NULL AUTO_INCREMENT,
  `follower_id` int(11) unsigned NOT NULL,
  `following_id` int(11) unsigned NOT NULL,
  `created_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
  PRIMARY KEY (`id`),
  UNIQUE KEY `follower_following_unique` (`follower_id`,`following_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
  1. ユーザー アテンション関数の実装
    ユーザー インターフェイスで、「フォロー」を提供できます。 " ボタンをクリックすると、フォロー ロジックを処理する PHP スクリプトがトリガーされます。以下は、簡略化されたサンプル コードです。
<?php
// 获取当前用户的 ID,可以从登录信息中获取。
$currentUser = 1;

// 获取被关注用户的 ID,可以从用户界面中获取。
$followingUser = 2;

// 连接数据库
$pdo = new PDO('mysql:host=localhost;dbname=test', 'username', 'password');

// 检查是否已经关注
$sql = "SELECT COUNT(*) FROM follows WHERE follower_id = :follower AND following_id = :following";
$query = $pdo->prepare($sql);
$query->bindParam(':follower', $currentUser);
$query->bindParam(':following', $followingUser);
$query->execute();
$alreadyFollowing = $query->fetchColumn() > 0;

if ($alreadyFollowing) {
  // 如果已经关注,则取消关注
  $sql = "DELETE FROM follows WHERE follower_id = :follower AND following_id = :following";
} else {
  // 如果未关注,则添加关注
  $sql = "INSERT INTO follows (follower_id, following_id) VALUES (:follower, :following)";
}

$query = $pdo->prepare($sql);
$query->bindParam(':follower', $currentUser);
$query->bindParam(':following', $followingUser);
$query->execute();

// 关闭数据库连接
$pdo = null;
?>

上記のコードのロジックは、まずデータベースにクエリを実行して、現在のユーザーがフォローされているユーザーをフォローしているかどうかを判断することです。すでにアテンションを行っている場合は SQL を実行してアテンションを削除し、そうでない場合は SQL を実行してアテンションを追加します。このロジックにより、ユーザーはボタンをクリックすることで機能をフォローしたり、フォローを解除したりできます。

サンプルコードは参考用であり、実際の状況は、権限制御やエラー処理の追加など、プロジェクトの具体的なニーズに応じて調整および改善する必要があります。

概要
この記事では、PHP を使用して知識に関する質問と回答の Web サイトにユーザー アテンション機能を実装する方法を紹介します。データベース テーブルを設計し、対応する PHP スクリプトを記述することで、ユーザーのフォローとフォロー解除の機能を簡単に実装できます。この機能はユーザーにとって非常に便利で、興味深いコンテンツやリマインダーを取得するのに役立ちます。この記事がユーザー アテンション機能の理解と実装に役立つことを願っています。

以上がPHP は、知識の質問と回答の Web サイトにユーザー アテンション機能を実装します。の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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