添加好友功能实现思路 - jiageng

时间:2024-03-09 17:57:10

添加好友功能实现思路

思路:

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.所以你知道到底该发给哪个人)发送通知.当好友同意添加你为好友时,你也可以收到系统消息说好友已同意添加你为好友等信息.这样的话就不只是操作数据库那么简单了..可以考虑实现一下