0

2つのテーブルを結合したいのですが、機能しません。

これらはテーブルです:
スレッド: id, title
投稿: thread_id, message

$sql = mysql_query("SELECT threads.id, threads.title
                    FROM threads
                    JOIN posts ON posts.thread_id = threads.id
                    WHERE threads.id = ".intval($_GET['id']));


while ($post = mysql_fetch_assoc($sql))
{
    echo $post['title'];
    echo $post['message'];

}

タイトルは取得しますが、メッセージは取得しません。スレッドに割り当てられたものがあります。

4

4 に答える 4

3

あなたはposts.messageを選択していません。SQLをこれに変更すると、機能する可能性があります。

SELECT threads.id, threads.title, posts.message
FROM threads
JOIN posts ON posts.thread_id = threads.id
WHERE threads.id = $id
于 2009-07-21T20:23:40.987 に答える
1

thread_idに一致する を含む投稿はあり$idますか? そうしないと、空の結果セットが生成されるためです。

于 2009-07-21T20:10:19.967 に答える
0

PHPなしでMySQLで動作させることはできますか? クエリのトラブルシューティングには phpMyAdmin を使用しています。MySQL でより直接的に取得すると、phpMyAdmin には「SQL を PHP にエクスポート」機能があります。

于 2009-07-21T20:13:42.643 に答える
0

投稿を取得したい場合は、別の方法で行うことができます

SELECT threads.id, threads.title, posts.message
FROM posts
JOIN threads ON threads.id = posts.thread_id
WHERE posts.thread_id = $id
于 2009-07-21T21:10:32.840 に答える