思路:
1用戶發送好友申請之后 把申請儲存到申請數據表中,狀態為 未驗證
2 當用戶登錄時,查詢申請表中是否有uid和被申請人id相同的,如果同意,更改狀態,並把數據插入到對應的好友數據表,否則,刪除申請數據表中數據
3,當一方刪除好友時,從被刪除人中刪除刪除人的好友
4 創建分組名稱字段,字段設定好值,讓用戶選擇,或者讓用戶自定
5 當查詢時候列出數據表信息
附:mysql數據表 共兩個
#以上步驟是對數據庫的操作,你可以實例化,
#好友表
mysql_query("CREATE TABLE `t_friend` (
`id` int(11) NOT NULL auto_increment COMMENT
'自增id'
,
`uid` int(11) NOT NULL COMMENT
'用戶id'
,
`fid` int(11) NOT NULL COMMENT
'好友uid,用,分割,可以有多個'
,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
#申請表
CREATE TABLE `t_shenqing` (
`id` int(11) NOT NULL auto_increment COMMENT
'自增id'
,
`uid` int(11) NOT NULL COMMENT
'被申請用戶id userid'
,
`sid` int(11) NOT NULL COMMENT
'好友申請人id'
,
`text` varchar(255) NOT NULL COMMENT
'附言'
,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
");
每一次用戶請求操作,就會對數據庫進行一次查詢或更新,
完畢
當然 前面提到的是在百度知道里面看到的.但是這種思路卻打開了我另外一條思路,用戶在登錄的時候便可以建立一個與自己用戶名綁定的socket.不管是web應用還是一些移動應用.當然,你可以建立websocket,或者時socket來進行通信.當有好友添加你為好友的時候,這時候服務器收到添加好友請求.並且向你請求的好友的那個socket(登錄的時候就綁定了socket.所以你知道到底該發給哪個人)發送通知.當好友同意添加你為好友時,你也可以收到系統消息說好友已同意添加你為好友等信息.這樣的話就不只是操作數據庫那么簡單了..可以考慮實現一下