2011-07-02 73 views
1

私のサイトにリンクを動的に表示できるスクリプトを作成しようとしています。PHP MYSQL JOIN QUERY 2データベース、where table1.id = table2.id、table1.idとしてtable2.contentを表示する方法

私は2つのテーブルを持っています。最初のものは、domainsは1行につき2つの値を持つことができます。これらは、domIddomainです。次の表linksには、行ごとにいくつかの値を入れることができます。ここで働いている人はdomIddomainsテーブルのdomIdと一致します)descと `link 'です。ここで

は、これまでのところ、私のクエリです:ここでは

$linkQuery2 = 'SELECT `link`,`desc`,`domId` 
       FROM `links` 
       WHERE `catId`="'.$pageCat.'" 
        && (`modId`="1" || modId="'.$pageModel.'") 
      ORDER BY `domainId` ASC 
       LIMIT ' . $from . ', ' . $max_results2;  

は私が必要とする情報を表示するために使用してイムコードです:私が何をしようとしています何

$linkLoop2 = ''; 
$linkAd = $row['link']; 
$linkDesc = stripslashes($row['desc']); 
$linkDomain = stripslashes($row['id']); 
$linkLoop = '<ul class="bymodel-dllinks">'; 
$linkLoop2 .= '<li><a href="'.$linkAd.'" target="_tab">'.$linkDesc.' '.$linkDomain.'</a></li>'; 
$linkLoop3 = '</ul>'; 

ので道を見つけることです$ linkDomainがエコーされると、domainフィールドに格納されたテキストがdomainsテーブルに表示されます。現在$linkDomainがエコーされている場合、303にはリンク先サイトのdomIdが表示されます。

+0

あなたは答えの一つを受け入れるだろうか? –

答えて

1

使用することを

$linkQuery2 = 'SELECT `link`,`desc`,`domId`,`domain` 
      FROM `links` 
      WHERE `catId`="'.$pageCat.'" 
       && (`modId`="1" || modId="'.$pageModel.'") 
     ORDER BY `domainId` ASC 
      LIMIT ' . $from . ', ' . $max_results2; 

変更$linkDomain domainstableからドメイン名を選択するために参加:

$linkQuery2 = 'SELECT l.link,l.desc,l.domId,d.domain 
      FROM links l LEFT JOIN domains d ON d.domid = l.domid 
      WHERE l.catId="'.$pageCat.'" 
       && (l.modId="1" || l.modId="'.$pageModel.'") 
     ORDER BY l.domainId ASC 
      LIMIT ' . $from . ', ' . $max_results2; 
+0

$ linkQuery2 = 'SELECT l.link、l.desc、l.domId、d.domain FROMリンクl LEFT JOINドメインd ON d.domId = l.domId WHERE l.catId = "'。$ pageCat。 '" && (l.modId = "1" || l.modId = "'。$ pageModel。'")ORDER BY d.domain ASC LIMIT '。 $から。 '、' $ max_results2。 ' ';私の友人、ありがとう、私はあなたの頭の上に残っている髪を借りている:) –

+0

あなたの歓迎!:D –

0

domain列をselectステートメントに追加します。

$linkDomain = stripslashes($row['domain']); 
+0

Mior - ドメイン列は同じデータベースの別のテーブルに格納されています。「ドメイン」これはエラーが少ないため、ドメイン名を一度入力するだけです。これらの変更を適用するとエラーが発生します。 ''フィールドリスト 'に'ドメイン 'が不明です'これは 'domain'が' links'テーブルのカラムではないためですか? –

+0

私の謝罪。私はあなたがこのテーブルにまだ参加していないことに気付かなかった。下のハミッドの答えを参照してください:) –

+0

ありがとうございました。私はとても興奮しています:) $ linkDomainの変更は間違いなく助けになりました! –

関連する問題