簡體   English   中英

在每個循環內查詢? 嘗試獲取返回的每一行中每個外國ID號的用戶名

[英]Query within a for each loop? Trying to get user name for each foreign ID number in each row returned

我正在嘗試顯示每條記錄喜歡其他用戶帖子的人的用戶名。 我只能弄清楚到目前為止如何顯示該用戶ID號(我們從points.LID獲得)。 這是下面的代碼。 我已經嘗試了一些方法,但是我不知道如何在foreach循環中獲取第二個sql查詢,以便為每個喜歡的用戶獲取LID / ID的user_name。

我需要從某個地方/以某種方式從LID sql獲取用戶顯示名稱,以便可以回顯喜歡該帖子的人的名稱(LID)。 我需要使用LID連接到wp_users表中的wp_users.ID,然后抓取wp_users.display_name。 但是我可以在下面的foreach循環中插入這樣的查詢嗎?

我想我需要添加一些類似的東西(從points.ID = $ user_ID的點中選擇points.LID),然后在wp_users.ID = points.LID的位置獲取顯示名稱

這些是帶有相關列的3個表:1.點(ID,LID,SID),2。故事(ID,story_name)3. wp_users(ID,display_name)

//此代碼返回故事的名稱和喜歡它的人的ID號(LID)。 但是我需要它來返回喜歡它的人的用戶名(wp_users.display_name)

//only need current user for ID of author
$user_ID = get_current_user_id()

$results = $dbh->prepare("select 
stories.ID,
stories.SID,
stories.story_name,
points.ID,
points.LID,
points.PID,
wp_users.ID,
wp_users.display_name
FROM stories
JOIN points ON stories.SID=points.SID
JOIN wp_users ON stories.ID=wp_users.ID
where (stories.ID = $user_ID) and (PID = 1)");
$results->execute();

$row = $results->fetchAll(PDO::FETCH_ASSOC);

if ($row) {
echo '<table>';
echo '<tr>';
echo '<td><b>Name</b></td>';
echo '<td><b>Author</b></td>';
echo '</tr>';
foreach ($row as $all) {

//Get user display name from LID sql here? So I can echo name of person
//who liked the post (the LID) below? I need use LID to connect to
//wp_users.ID in wp_users table and then grab wp_users.display_name

$stp = stripslashes($all['story_name']);
echo '<tr>';
echo "<td><a href=\"http://example.com/complete-text?
writing=$all[SID]\">$stp</a></td>";
echo "<td><a href=\"http://example.com/portfolio?ID=$all[LID]\">
$all['LID']</a></td>";
}
echo '</table>';
}
?>
SELECT 
  stories.ID,
  stories.SID,
  stories.story_name,
  points.ID,
  points.LID,
  points.PID,
  wp_users.ID,
  wp_users.display_name,
  wp_users2.display_name AS 'user_who_liked',
FROM
  stories 
  JOIN points 
    ON stories.SID = points.SID 
  JOIN wp_users 
    ON stories.ID = wp_users.ID 
  LEFT JOIN wp_users AS wp_users2 
    ON points.LID = wp_users2.ID 
WHERE (stories.ID = $user_ID) 
  AND (PID = 1) ;

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM