2 Datenbanken

akkie

Erfahrenes Mitglied
Hi

Ich habe 2 Tabellen. Kategorie und Einträge.

$query = "SELECT * FROM cms_affiliates_kat t1, cms_affiliates t2 WHERE t1.kat_id = t2.kat_id";
$result = safe_query($query_kat);

Wenn ich mir das ganze jetzt per mysql_fetch_array als Array ausgeben lasse. Sieht das so aus.

kat1 -> eintrag1
kat1 -> eintrag2
kat1 -> eintrag3
kat2 -> eintrag4
kat2 -> eintrag5
usw...

gibt es ne möglichkeit das durch die Mysql Datenbang anderst selektieren zu lassen

so währ es am besten

kat1 -> eintrag1
eintrag2
eintrag3
kat2 -> eintrag4
eintrag5

oder die Kategorien die ich jetzt nicht mit hingeschrieben habe durch nen lehren String zu erstzen.

Mfg Akkie
 
Ich benutze ein Template System. Und das ganze funktioniert mit der Block api nicht richtig. Das heißt ich kann die Blöcke nicht parsen.

PHP:
$query_kat = "SELECT * FROM cms_affiliates_kat t1, cms_affiliates t2 WHERE t1.kat_id = t2.kat_id";
$result_kat = safe_query($query_kat);

while($row_kat = mysql_fetch_array($result_kat))
{
      $tpl->setCurrentBlock("kategorie");
      $tpl->setVariable('KATEGORIE', $row_kat['kat']);

      $tpl->setCurrentBlock("affiliates");
      $tpl->setVariable('URL', $site_dir."/count.php?linkid=".$row_kat['id']."&url=".$row_kat['url']);
      if(preg_match("/^http:\/\/.*/", $row_kat['image'])) $tpl->setVariable("IMAGE", $row_kat['image']);
      else $tpl->setVariable('IMAGE', $row_settings['affili_dir'].$row_kat['image']);
      $tpl->setVariable('NAME', $row_kat['name']);
      $tpl->setVariable('VIEWS', $row_kat['views']);
      $tpl->parse("affiliates");
      $tpl->parse("kategorie");
}

Sagen wir mal es gibt 3 Kategorien und 9 Einträge. Die Kategorie wird jetzt aber auch neun mal angezeigt.

Hab es auch schon mal anderst versucht.
PHP:
$query_kat = "SELECT * FROM cms_affiliates_kat t1, cms_affiliates t2 WHERE t1.kat_id = t2.kat_id";
$result_kat = safe_query($query_kat);

$kat = "";
while($row_kat = mysql_fetch_array($result_kat))
{
      if($kat != $row_kat['kat'])
      {
         $tpl->setCurrentBlock("kategorie");
         $tpl->setVariable('KATEGORIE', $row_kat['kat']);
         $tpl->parse("kategorie");
      }
      $kat = $row_kat['kat'];
      $tpl->setCurrentBlock("affiliates");
      $tpl->setVariable('URL', $site_dir."/count.php?linkid=".$row_kat['id']."&url=".$row_kat['url']);
      if(preg_match("/^http:\/\/.*/", $row_kat['image'])) $tpl->setVariable("IMAGE", $row_kat['image']);
      else $tpl->setVariable('IMAGE', $row_settings['affili_dir'].$row_kat['image']);
      $tpl->setVariable('NAME', $row_kat['name']);
      $tpl->setVariable('VIEWS', $row_kat['views']);
      $tpl->parse("affiliates");

}
Hier wird der Block jedoch gleich geparst.

ergibt:

kategorie

kategorie
affiliates

kategorie
affiliates

affiliates
 

Neue Beiträge

Zurück