2013-09-29 88 views
1

我有兩個表,一個與職位和另一個註釋:PHP/MySQL的 - 使用一個查詢的結果在其他查詢中使用

posts 
----- 
ID 
user_ID 
text 
date 

comments 
-------- 
ID 
post_ID 
user_ID 
text 
date 

我想顯示每一個崗位和每一個崗位,我想要顯示相關評論。所以我做了兩個查詢:

include('bdd.php'); 
$reponse = $bdd->query(' 
    SELECT posts.ID AS post_ID, posts.user_ID, posts.text, posts.date FROM posts 
    ORDER BY posts.ID DESC 
'); 
while ($post = $reponse->fetch()){ 
    //displaying a post 
    $get_comments=$bdd->query('SELECT * FROM comments WHERE post_ID ='.$post['post_ID']); 
    while($comment = $get_comments->fecth()){ 
     //displaying a comment 
     echo $comment['text'] 
    } 
} 

但代碼停止,只顯示沒有評論的第一篇文章。

+0

:或$bdd->query();

錯字錯誤更換 $bdd->prepare();?嘗試在第一次之前插入'$ reponse-> execute();'。或用'$ bdd-> query()替換'$ bdd-> prepare();'' –

+0

是的,你說得對,當我簡化代碼時,我忘了它,我剛剛添加它。它不能解決問題。不管怎麼說,還是要謝謝你。 – Codophage

+0

我發佈它作爲答案,接受它。快樂編碼 –

回答

2

嘗試之前,首先while插入

$reponse->execute(); 

。您使用的PDO

$get_comments->fecth()檢查fetch()拼寫

+0

我加了。它不能解決問題。不管怎麼說,還是要謝謝你。 – Codophage

+0

這是拼寫錯誤。謝謝! – Codophage

1

是否正確選擇查詢?

SELECT posts.ID AS post_ID, posts.user_ID, posts.text, posts.date 
ORDER BY posts.ID DESC 

它沒有FROM子句。本來應該如下:

SELECT posts.ID AS post_ID, posts.user_ID, posts.text, posts.date FROM posts 
ORDER BY posts.ID DESC 
+0

你說得對,事實上,我簡化了代碼,我忘了FROM。但這不是問題。不管怎麼說,還是要謝謝你。我添加了FROM。 – Codophage

相關問題