PHP和Mysql简单的社交网络结构

时间:2017-03-28 03:59:20

标签: php mysql database networking social

我创建了简单的社交网络,仅用于学习目的。 我很难实现朋友的一部分。 我的数据库结构是这样的:

1的饲料 2,朋友 3-用户

Feed表:

CREATE TABLE feeds(   feed_id int(11)NOT NULL,   feed_txt文本NOT NULL,   user_id int(11)NOT NULL,   user_name varchar(50)NOT NULL,   comment_id int(11)DEFAULT NULL,   feed_date时间戳NOT NULL DEFAULT CURRENT_TIMESTAMP更新CURRENT_TIMESTAMP )ENGINE = InnoDB DEFAULT CHARSET = latin1;

朋友表:

CREATE TABLE friend(   id int(11)NOT NULL,   user_id int(11)NOT NULL,   user_id2 int(11)NOT NULL,   status枚举('待定','接受','拒绝','删除')NOT NULL,   date时间戳NOT NULL DEFAULT CURRENT_TIMESTAMP更新CURRENT_TIMESTAMP )ENGINE = InnoDB DEFAULT CHARSET = latin1;

用户表:

CREATE TABLE users(   user_id int(255)NOT NULL,   user_name varchar(50)NOT NULL,   email varchar(50)NOT NULL,   gender枚号('男','女')NOT NULL,   country varchar(50)NOT NULL,   birthday日期非空,   password varchar(255)NOT NULL,   img varchar(255)NOT NULL,   log_date时间戳NOT NULL DEFAULT CURRENT_TIMESTAMP更新CURRENT_TIMESTAMP )ENGINE = InnoDB DEFAULT CHARSET = latin1;

我想让所有状态不等于“接受”的用户,我不想在搜索中获取我的ID以避免在点击搜索时添加自己。

   "select distinct 
    users.user_id ,
    users.user_name,
    users.country,
    users.gender,
    users.log_date,

    friend.user_id,
    friend.user_id2,
    friend.status

    from users,friend
    where 
    users.user_name like '%$name%'
    and users.user_id = friend.user_id2
    and users.user_id !='$myid'
    and friend.status !='accept' "

我尝试了这个查询来获取我的朋友列表,但结果好坏参与。

        "select *
        from friend ,users
         where 
          users.user_id != '$myid'
          and friend.user_id=users.user_id or  friend.user_id2=users.user_id
          and friend.status = 'accept'

谢谢大家。

0 个答案:

没有答案
相关问题