PHP и Mysql Простая структура социальной сети

Я создал простую социальную сеть только для учебных целей.
Я с трудом реализую часть друзей.
моя структура базы данных такая:

1-каналы
2-х друзей
3-х пользователей

Таблица подачи:

СОЗДАТЬ СТОЛ feeds (
feed_id int (11) NOT NULL,
feed_txt текст НЕ НУЛЬ,
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 ON UPDATE CURRENT_TIMESTAMP
) ENGINE = InnoDB CHARSET ПО УМОЛЧАНИЮ = latin1;

Таблица друзей:

СОЗДАТЬ СТОЛ friend (
id int (11) NOT NULL,
user_id int (11) NOT NULL,
user_id2 int (11) NOT NULL,
status enum (‘pending’, ‘accept’, ‘reject’, ‘delete’) NOT NULL,
date временная метка NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
) ENGINE = InnoDB CHARSET ПО УМОЛЧАНИЮ = latin1;

Таблица пользователей:

СОЗДАТЬ СТОЛ users (
user_id int (255) NOT NULL,
user_name varchar (50) NOT NULL,
email varchar (50) NOT NULL,
gender enum (‘Male’, ‘Female’) NOT NULL,
country varchar (50) NOT NULL,
birthday дата НЕ NULL,
password varchar (255) НЕ NULL,
img varchar (255) НЕ NULL,
log_date временная метка NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
) ENGINE = InnoDB CHARSET ПО УМОЛЧАНИЮ = latin1;

Я хочу получить всех пользователей, чей статус не равен «принять», и я не хочу, чтобы при поиске мой идентификатор добавлялся, когда я нажимаю кнопку «Поиск».

   "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

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]