da ich recht frisch bin in contenido, von php wenig ahnung habe und mysql nur mit glück funktioniert:
könnten die routiniers mal hier drübersehen und evtl. kritisch kommentieren?
die von mir gefunden artikellisten waren mir alle zu overdosed. ausserdem war mir die verwendung von datenbankabfragen in for- und while-schleifen etwas suspekt.
diese artikelliste listet einfach aus der aktuellen kategorie die enthaltenen artikel auf.
nicht mehr - aber auch nicht weniger, hehe.
für mich eine gute grundlage, um weitere anforderungen einzubauen.
reiner output:
Code: Alles auswählen
<?php
$cfgList = array();
$cfgList["selCat"] = $idcat;
$cfgList["sortBy"] = "ARTLANG.artsort";
$cfgList["sortOrder"] = "DESC";
$cfgList["showStart"] = "false";
if (($cfgList["selCat"] != "0") && ($cfgList["selCat"] != "")){
  if (!is_object($db)) {
    $db = new DB_Contenido;
  }
  $sql  = "SELECT ARTLANG.idart, ARTLANG.idartlang, CONTENT.value, CONTENT.idtype, CONTENT.typeid FROM ";
  $sql .= $cfg["tab"]["cat_art"]." AS CATART, ";
  $sql .= $cfg["tab"]["art_lang"]." AS ARTLANG, ";
  $sql .= $cfg["tab"]["cat_lang"]." AS CATLANG, ";
  $sql .= $cfg["tab"]["content"]." AS CONTENT ";
  $sql .= "WHERE CATART.idcat = '".$cfgList["selCat"]."' ";
  $sql .= "AND ARTLANG.idlang = '".$lang."' ";
  $sql .= "AND ARTLANG.idartlang = CONTENT.idartlang ";
  $sql .= "AND ARTLANG.idart = CATART.idart ";
  $sql .= "AND CATLANG.idlang = ARTLANG.idlang "; 
  $sql .= "AND CATLANG.idcat = CATART.idcat "; 
  $sql .= "AND ARTLANG.idart = CATART.idart "; 
  $sql .= "AND ARTLANG.online = '1' ";
  if ($cfgList["showStart"] == "false") {
    $sql .= "AND CATLANG.startidartlang != ARTLANG.idartlang ";
  }
  $sql .= "ORDER BY ".$cfgList["sortBy"]." ".$cfgList["sortOrder"]."";
  $db->query($sql);
  if ($db->num_rows() > 0) {
    $i = 0;
    $listData = array(array());
    while ($db->next_record()) {
      $i = $db->f("idart");
      $listData[$i]["idart"] = $db->f("idart");
      $listData[$i]["idartlang"] = $db->f("idartlang");
      if (($db->f("idtype") == "2") && ($db->f("typeid") == "1")) {
        $listData[$i]["html_text"] = urldecode($db->f("value"));
      } elseif (($db->f("idtype") == "1") && ($db->f("typeid") == "1")) {
        $listData[$i]["headline"] = urldecode($db->f("value"));
      } elseif (($db->f("idtype") == "1") && ($db->f("typeid") == "2")) {
        $listData[$i]["subheadline"] = urldecode($db->f("value"));
      }
    }
    foreach($listData as $key => $i) {
      if((isset($listData[$key]["headline"])) && ($listData[$key]["headline"] != '') && ($listData[$key]["headline"] != ' ')) {
        echo "<h2>".$listData[$key]["headline"]."</h2>";
      }
      if((isset($listData[$key]["subheadline"])) && ($listData[$key]["subheadline"] != '') && ($listData[$key]["subheadline"] != ' ')) {
        echo "<strong>".$listData[$key]["subheadline"]."</strong>";
      }
      if((isset($listData[$key]["html_text"])) && ($listData[$key]["html_text"] != '') && ($listData[$key]["html_text"] != ' ')) {
        echo "".$listData[$key]["html_text"]."";
      }
    }
  }
}
?>cg