PHP implémente la fonction d'attention de l'utilisateur dans le site Web de questions et réponses de connaissances
Avec le développement rapide d'Internet, le site Web de questions et réponses de connaissances est progressivement devenu un moyen important pour les gens d'obtenir des informations et de résoudre des problèmes. Afin de mieux répondre aux besoins des utilisateurs, une fonction importante est le suivi des utilisateurs, c'est-à-dire que les utilisateurs peuvent suivre des problèmes, des sujets ou d'autres utilisateurs d'intérêt pour obtenir des mises à jour et des rappels pertinents. Cet article expliquera comment utiliser PHP pour implémenter la fonction d'attention de l'utilisateur dans un site Web de questions et réponses de connaissances, et joindra un exemple de code.
Vous pouvez utiliser l'instruction SQL suivante pour créer cette table :
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;
<?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; ?>
La logique du code ci-dessus est d'interroger d'abord la base de données pour déterminer si l'utilisateur actuel a suivi l'utilisateur suivi. Si vous y prêtez déjà attention, exécutez le SQL pour supprimer l'attention ; sinon, exécutez le SQL pour ajouter l'attention. Grâce à cette logique, les utilisateurs peuvent suivre et ne plus suivre les fonctions en cliquant sur le bouton.
Il convient de noter que l'exemple de code est uniquement à titre de référence. La situation réelle doit être ajustée et améliorée en fonction des besoins spécifiques du projet, tels que l'ajout d'un contrôle d'autorisation, la gestion des erreurs, etc.
Résumé
Cet article explique comment utiliser PHP pour implémenter la fonction de suivi des utilisateurs dans un site Web de questions et réponses de connaissances. En concevant des tables de base de données et en écrivant les scripts PHP correspondants, nous pouvons facilement implémenter les fonctions de suivi et de désabonnement des utilisateurs. Cette fonctionnalité est très utile pour les utilisateurs et les aide à obtenir du contenu et des rappels intéressants. J'espère que cet article pourra vous aider à comprendre et à mettre en œuvre la fonction d'attention de l'utilisateur.
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!