Abfrage in einer 2ten Tabelle innerhalb einer Funktion??

coloxer

Mitglied
hallo,

hab eine function in der Kategorien aufgelistet werden. Dafür gibts ne Datenbank(test.linkcats), die 2 Felder hat (ID und Kategoriename).

Diese wird in der function abgefragt und anschliessend werden alle Kategorien aufgelistet.

Eine 2te Datenbank(test.links) beinhaltet die einzelnen Links mit den jeweiligen Kategorien und was so dazu gehört.

Funktion, die alle Kategorien auflistet:

PHP:
function showcats() 
{ 
$link=mysql_connect ("...", "...", "...") or die ("could not connect"); 
$inhalt=mysql_query("SELECT catid,catname FROM test.linkcats", $link); 

while($erg=mysql_fetch_array($inhalt)) 

$html.='<a href="links.php?action=showcat&catid='.$erg[catid].'">'.$erg[catname].'('.????????.')</a></td> 
echo $html; 
}

Ich möchte nun zusätzlich die Einträge der 2ten Datenbank(test.links) zählen die die angezeigte Kategorie anzeigen.

Problemmatik: Da die Kategorien als erstes angezeigt werden hab ich noch keine Variable für $catid, die ich dann in der 2ten Tabelle abfragen könnte .....

PHP:
$inhalt2=mysql_query("SELECT * FROM test.links WHERE catid='$catid' ", $link);

Die Variable $catid bekomm ich ja wenn ich den Link aus dem ersten Code Beispiel anklick.....

Hoffe meine Problemmatik ist verständlich :-)
 
Zuletzt bearbeitet:
mhh ich weiß nicht ob ich das jetzt alles richtig verstanden habe, aber vielleicht meinst du ja sowas in der art?:

Code:
SELECT t1.catid, t1.catname 
FROM test.linkcats t1, test.links t2 
WHERE t1.catid = t2.catid 
GROUP BY t1.catname
 
Öhm, ich weiss nicht ob du das meinst, aber:

PHP:
<?php
function showcats() {
    $link = mysql_connect("localhost","root","******")or die("could not connect"); 
    $sql = mysql_query("SELECT catid,catname FROM test.linkcats", $link); 
    while($erg=mysql_fetch_array($sql)) {
        $html.='<a href="links.php?action=showcat&catid='.$erg[catid].'">'.$erg[catname].'('.????????.')</a></td> 
        $sql2 = mysql_query("SELECT * FROM test.links WHERE (catid='$erg[id]')",$link);
        $row = mysql_fetch_array($sql2);
        $html.= "$row[id] - $row[bla]<br />";
    }
    return $html;
}
?>
 
Zurück