Мне нужна помощь с моим кодом запроса mysql! У меня есть три базы данных, и я пытаюсь найти способ опубликовать данные из всех трех.3 таблицы в одном запросе mysql?
users
----------------------------------
user_id username email..etc
-----------------------------------
1 username
-----------------------------------
friends_db
-------------------------------------
user_id friend_id friend_active
--------------------------------------
1 2 1
--------------------------------------
posts
-------------------------------------
post_id user_id post_content
-------------------------------------
1 1 this is a post
--------------------------------------
То, что я хотел бы сделать, это сделать список друзей, где вы можете увидеть все сообщения, которые ваши друзья (те, у кого есть 1 в friend_active) сделали сообщения.
моя функция:
function getFriendsPosts()
{
require "config.php";
$friends = $c->query ("SELECT * FROM friends_db WHERE user_id=" . $_SESSION["user_id"] ." AND friend_active = 1") ;
if ($friends->num_rows > 0)
{
while($row = $friends->fetch_assoc())
{
$postData[] = array("user_id" => $row[ "user_id" ], "friend_active" => $row[ "friend_active" ], "friend_id" => $row[ "friend_id" ]);
}
} else {
echo "No Data To Show";
}
return $postData;
}
У меня есть:
$friends = $c->query ("SELECT * FROM friends_db WHERE user_id=" . $_SESSION["user_id"] ." AND friend_active = 1") ;
, который дает мне user_id из тех, кто имеет friend_active = 1
однако я не знаю, как расширить это, связав friend_id со своим собственным user_id, чтобы получить свое имя пользователя, в котором затем будут отображаться их сообщения.
Возможно, я слишком усложняю это, или я, возможно, не так, я не знаю. Кто-нибудь знает, как я могу сделать это в том же формате, что и я уже сделал (у меня есть другие вещи, работающие в этом формате, и мне нужно, чтобы это тоже было)? Или, возможно, есть совет?
Edit:
$friends = getFriendsPosts();
foreach ($friends as $friend) {
?>
<div class="ui-corner-all custom-corners">
<div id="searchpost">
<?php
echo $friend['user_id'];
echo $friend['friend_id'];
echo $friend['friend_active'];
?>
</div>
</div>
<?php
}
?>
Id, как к:
эхо пользователя (по отношению к friend_id/Thier собственный идентификатор пользователя) эхо разместить данные (по отношению к user_id)
Да, я пытаюсь отобразить сообщения (в базе данных сообщений), сделанных пользователями (в базе данных пользователей), которые являются вашими друзьями (в базе данных друзей). Я могу поместить имя пользователя в базу данных друзей, чтобы сузить его до двух таблиц для доступа, но в любом случае у меня возникают проблемы с объединением двух баз данных. Я не слишком хорошо знаком с кодом, который вы мне дали, не могли бы вы объяснить это мне, чтобы я мог добавить его для базы данных постов? Спасибо :) –
см. Правки. Это своего рода неопределенный вопрос в ретроспективе. Вы публикуете друзей определенного идентификатора? – Kisaragi
Отредактировано тем, что у меня есть на моем индексе, чтобы опубликовать. :) –