近年、ソーシャルネットワークは人々の日常生活に欠かせないものとなっています。同時に、ソーシャル ネットワークの重要な部分である友人関係も、その実装においてますます注目を集めています。この記事ではPHPを使って友達追加機能を実装する方法を紹介します。
1. データベース設計
友達追加機能を実装する過程で、友達関係テーブルを設計する必要があります。テーブルには少なくとも次のフィールドが含まれている必要があります:
<?php // 连接数据库 $con = mysqli_connect("localhost","root","mypassword","mydatabase"); // 获取用户输入 $user_id1 = $_POST['user_id1']; $user_id2 = $_POST['user_id2']; // 验证用户输入是否合法 if(!is_numeric($user_id1) || !is_numeric($user_id2)) { echo "Error: 用户ID必须为数字"; exit(); } // 检查要添加的好友是否已经是用户的好友 $sql = "SELECT * FROM friend_relation WHERE ((user_id1 = $user_id1 AND user_id2 = $user_id2) OR (user_id2 = $user_id1 AND user_id1 = $user_id2)) AND status = 1"; $result = mysqli_query($con,$sql); if(mysqli_num_rows($result) > 0) { echo "该用户已经是您的好友!"; exit(); } // 如果两个用户之间没有好友关系,则添加一条新的好友关系记录,其中状态为“0”(待处理) $sql = "INSERT INTO friend_relation (user_id1,user_id2,status) VALUES ($user_id1,$user_id2,0)"; if(mysqli_query($con,$sql)) { echo "添加好友请求已经发送!"; } else { echo "Error: " . mysqli_error($con); } mysqli_close($con); ?>
<?php // 连接数据库 $con = mysqli_connect("localhost","root","mypassword","mydatabase"); // 获取用户输入 $user_id1 = $_POST['user_id1']; $user_id2 = $_POST['user_id2']; $action = $_POST['action']; // 操作类型,可选值包括“accept”和“reject” // 验证用户输入是否合法 if(!is_numeric($user_id1) || !is_numeric($user_id2)) { echo "Error: 用户ID必须为数字"; exit(); } // 更新好友关系状态 if($action == "accept") { $sql = "UPDATE friend_relation SET status = 1 WHERE user_id1 = $user_id1 AND user_id2 = $user_id2"; if(mysqli_query($con,$sql)) { echo "您已经同意该好友请求!"; } else { echo "Error: " . mysqli_error($con); } } else if($action == "reject") { $sql = "UPDATE friend_relation SET status = -1 WHERE user_id1 = $user_id1 AND user_id2 = $user_id2"; if(mysqli_query($con,$sql)) { echo "您已经拒绝了该好友请求!"; } else { echo "Error: " . mysqli_error($con); } } else { echo "Error: 请输入正确的操作类型!"; } mysqli_close($con); ?>
以上がPHPで友達追加機能を実装する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。