0

だから私はトピックのIDに表示されるカテゴリ名を取得したい. 現在、私はこれを持っています

        $cato = $db->prepare('SELECT
                        topics.topic_cat,
                        topics.topic_id,
                        categories.cat_id,
                        categories.cat_name
                    FROM
                        topics
                    LEFT JOIN
                        categories
                    ON
                        topics.topic_cat = categories.cat_id
                    WHERE
                        topics.topic_id =:topid');

$cato->bindParam(':topid',  $row2["topic_id"], PDO::PARAM_INT); 
$cato->execute();
$result2 = $cato->fetch();

Categories.cat_idカテゴリのIDです。

Categories.cat_name私が取得したい名前です。

Topics.topic_catトピックが投稿されたカテゴリ ID (categories.cat_id と同じ ID)

Topics.topic_idトピックの ID ( topic.php?id=28)

私の結果は

トピック 28 は、カテゴリ hello (hello = categories.cat_name) にあります。

簡単に言うと、トピック ID は 28 で、28 の行のトピックを検索し、topic_id28 と同じ行にある topic_cat を取得しtopic_idます。次に、カテゴリを調べてcategories_nameisを取得しますtopic_cat。次に、categories_name

私が十分に明確であることを願っています。

4

1 に答える 1

0

試すことができますか:

SELECT topics.topic_cat,
       topics.topic_id,
       categories.cat_id,
       categories.cat_name
FROM topics, categories
WHERE topics.topic_cat = categories.cat_id
      AND topics.topic_id =:topid

カテゴリのないトピックがない限り、これはうまくいくはずです。

于 2013-07-19T14:49:12.070 に答える