За последние 24 часа нас посетили 22970 программистов и 1231 робот. Сейчас ищут 732 программиста ...

Mysqli запрос по получению друзей из бд

Тема в разделе "PHP для новичков", создана пользователем PHP-Chainik12, 23 дек 2018.

Метки:
  1. PHP-Chainik12

    PHP-Chainik12 Новичок

    С нами с:
    31 янв 2018
    Сообщения:
    32
    Симпатии:
    2
    Есть 2 бд data где пользователи и friends где друзья:
    data
    id login password nickname ban
    1 Mike 123 Sal 0
    2 Alex 123 Master 0
    3 John 123 John 0
    4 Alexey 123 Priler 0
    friends
    id uid_1 uid_2 query
    1 2 3 1
    2 2 5 0
    3 3 6 1
    4 3 1 1

    Поясню бд friend
    id - идентификатор(Вы уже поняли)
    uid_1 - друг1
    uid_2 - друг2
    query - это boolean поле которое имеет 2 значения 1 значит друг добавлен и 0 значит друг не добавлен (значит что друг еще не принял заявку)

    Вопрос :
    1.Каков запрос mysqli чтобы выбрать всех друзей допустим Alex, тип так ? :
    PHP:
    1. $id = 2(id алекса)
    2. $query = mysqli_query($con,"SELECT * FROM `friends` WHERE (`query` = 1 )  AND `uid_1` = $id OR `uid_2` = $id";
    3. $fetch = mysqli_fetch_assoc($query);
    4. if($fetch['uid_1'] != $id){
    5.   $query_1 = mysqli_query($con,"SELECT * FROM `data` WHERE `id` =  " .$fetch['uid_1'] . " ");
    6.   while($fetch_1 = mysqli_fetch_assoc($query_1)){
    7.     echo $fetch_1['login'];
    8.   }
    9. }elseif($fetch['uid_2'] != $id){
    10.    $query_1 = mysqli_query($con,"SELECT * FROM `data` WHERE `id` =  " .$fetch['uid_2'] . " ");
    11.    while($fetch_1 = mysqli_fetch_assoc($query_1)){
    12.     echo $fetch_1['login'];
    13.    }
    14. }
    Пытался так сделать но не получалось может у вас выйдет
    Спасибо заранее
    бд таблицы сверху искажены форумом пробелы удалились но думаю вы поймете