隨著社交網絡的不斷普及,互相關注成為連接用戶的重要功能。用戶通過關注對方,可以實時獲取對方的動態信息,實現互動交流。開發互相關注功能前,需要明確核心需求:
為支持互相關注功能,需要設計相應數據庫結構:
$follower_id = $_GET['follower_id']; // 獲取關注者ID
$followed_id = $_GET['followed_id']; // 獲取被關注者ID
$follow_time = time(); // 獲取當前時間
$sql = "INSERT INTO following (follower_id, followed_id, follow_time) VALUES ($follower_id, $followed_id, $follow_time)";
$result = mysqli_query($conn, $sql);
$user_id = $_GET['user_id']; // 獲取用戶ID
// 查詢關注列表
$sql1 = "SELECT * FROM following WHERE follower_id = $user_id";
$result1 = mysqli_query($conn, $sql1);
// 查詢粉絲列表
$sql2 = "SELECT * FROM following WHERE followed_id = $user_id";
$result2 = mysqli_query($conn, $sql2);
// 輸出關注列表
while ($row1 = mysqli_fetch_assoc($result1)) {
$followed_id = $row1['followed_id'];
$followed_user = mysqli_query($conn, "SELECT * FROM user WHERE user_id = $followed_id");
$row = mysqli_fetch_assoc($followed_user);
echo $row['username']; // 輸出關注的用戶名
}
// 輸出粉絲列表
while ($row2 = mysqli_fetch_assoc($result2)) {
$follower_id = $row2['follower_id'];
$follower_user = mysqli_query($conn, "SELECT * FROM user WHERE user_id = $follower_id");
$row = mysqli_fetch_assoc($follower_user);
echo $row['username']; // 輸出粉絲的用戶名
}
$user_id = $_GET['user_id']; // 獲取用戶ID
// 查詢關注列表
$sql = "SELECT * FROM following WHERE follower_id = $user_id";
$result = mysqli_query($conn, $sql);
// 輸出動態列表
while ($row = mysqli_fetch_assoc($result)) {
$followed_id = $row['followed_id'];
$dynamic = mysqli_query($conn, "SELECT * FROM dynamic WHERE user_id = $followed_id ORDER BY dynamic_time DESC LIMIT 10");
while ($row = mysqli_fetch_assoc($dynamic)) {
echo $row['content']; // 輸出動態內容
}
}
互相關注功能的實現核心在於對數據庫的增刪查操作,通過設計合理的數據庫結構和編寫相應的PHP代碼,可以實現用戶之間的關注關係管理及動態內容展示。開發者可以根據業務需求,進一步擴展該功能,比如添加通知提醒、關注分組等。本文的示例代碼為初步實現提供了清晰的思路,便於開發者快速集成到自己的項目中。