Artikelliste zeigt alle Zeichen der Headline
Verfasst: Di 14. Sep 2004, 07:43
Hi Leute,
als Contenidoneuling und php-Frischling kann ich leider nicht herausfinden, warum es bei meiner Artikelliste nicht klappt. Vielleich könnt Ihr mir ja helfen.
Problem: Die Artikellist nutze ich als "Navigationserweiterung". Alle Artikel einer Kategorie werden auch angezeigt. Doch die Einstellung: "Angezeigt Länge in Zeichen" hat so gar keine Auswirkung. Woran mag das liegen?
Ich will die Headline halt gerne verkürzen.
Hier die Codes:
Input:
Output:
Wäre Euch für eine Antwort sehr dankbar!
Gruß
Zalu
als Contenidoneuling und php-Frischling kann ich leider nicht herausfinden, warum es bei meiner Artikelliste nicht klappt. Vielleich könnt Ihr mir ja helfen.
Problem: Die Artikellist nutze ich als "Navigationserweiterung". Alle Artikel einer Kategorie werden auch angezeigt. Doch die Einstellung: "Angezeigt Länge in Zeichen" hat so gar keine Auswirkung. Woran mag das liegen?
Ich will die Headline halt gerne verkürzen.
Hier die Codes:
Input:
Code: Alles auswählen
// selected category
$selected = "CMS_VALUE[0]";
echo "<table cellspacing=\"0\" cellpadding=\"10\" border=\"0\">
<tr valign=\"top\">
<td>Kategorie wählen:</td>
<td>
<select name=\"CMS_VAR[0]\">";
if($selected!="0" && $selected!=""){
echo"<option value=\"0\">--- kein ---</option>";
}else{
echo"<option selected=\"selected\" value=\"0\">--- kein ---</option>";
}
// fetch all categorys
$query = "SELECT A.idcat, A.level, C.name FROM ".$cfg["tab"]["cat_tree"]." AS A, ".
$cfg["tab"]["cat"]." AS B, ".$cfg["tab"]["cat_lang"]." AS C WHERE A.idcat=B.idcat ".
"AND B.idcat=C.idcat AND C.idlang='$lang' AND B.idclient='$client' ".
"AND C.visible=1 ORDER BY A.idtree";
// execute query
$db->query($query);
// loop result and build the options
while ($db->next_record()) {
// indent spacer
$spaces = "|";
// how many levels
$levels = $db->f("level");
for ($i = 0; $i < $levels; $i ++) {
// add 2 spaces for every level
$spaces = $spaces . "--";
} // end for
$spaces .= ">";
if ($selected == $db->f("idcat")) {
// selected category
echo "<option selected=\"selected\" value=\"". $db->f("idcat") ."\">". $spaces . $db->f("name") ."</option>";
} else {
// category
echo "<option value=\"". $db->f("idcat") ."\">". $spaces . $db->f("name") ."</option>";
} // end if
} // end while
echo " </select>";
echo " </td>
</tr>
<tr>
<td>Überschrift</td>
<td><input type=\"text\" name=\"CMS_VAR[2]\" value=\"CMS_VALUE[2]\"></td>
</tr>
<tr>
<td>Angezeigte Länge in Zeichen</td>
<td><input type=\"text\" name=\"CMS_VAR[3]\" value=\"CMS_VALUE[3]\"></td>
</tr>
</table>";
Code: Alles auswählen
<?php
/***********************************************
* CONTENIDO MODUL - OUTPUT
*
* REFERENZ MODUL / ARTIKELLISTE
*
* Artikelliste mit Img 1, Head 1, Head 2
*
* Erstellt eine Liste mit allen Artikel bis
* auf den Startartikel.
*
* Author : Jan Lengowski
* Copyright : four for business AG
* Created : 15-08-2002
* Modified : 16-08-2002
* Modified : 23-08-2004 Sortierung nach Artikelsortierer
************************************************/
// second db class instance
$db2 = new DB_Contenido;
// selected category
$selcat = "CMS_VALUE[0]";
if($selcat!="0" && $selcat!=""){
// select all articles in category widthout start article
$query = "SELECT ARTLANG.idart, ARTLANG.idartlang, ARTLANG.artsort FROM ".$cfg["tab"]["cat_art"]." AS CATART, ".
$cfg["tab"]["art_lang"]." AS ARTLANG ".
"WHERE CATART.idcat = '$selcat' AND ARTLANG.idart = CATART.idart AND ARTLANG.idlang = '$lang' AND ".
"ARTLANG.online = '1' ORDER BY ARTLANG.artsort, CATART.idart";
// execute query
$db->query($query);
unset($articleID);
unset($linkID);
// get id's of sub articles
while ($db->next_record()) {
$articleID[] = $db->f("idartlang");
$linkID[] = $db->f("idart");
$sortID[] = $db->f("artsort");
} // end while
// loop through subarticles
echo '
<table valign="top" width="90%" border="0" cellspacing="0" cellpadding="0">
<tr><td height="30" colspan="2" ></td></tr>
<tr><td bgcolor="#FFF7B5"><img src="images/wuerfel.gif" border="0" height="15" width="15"></td>
<td width="143" bgcolor="#FFF7B5" class="punkte"> CMS_VALUE[2]</td></tr>
';
if (is_array($articleID)) {
foreach ($articleID as $key => $value) {
// select all CMS variables of the article
$sql = "SELECT * FROM ".$cfg["tab"]["content"]." WHERE idartlang = '$value' AND idtype = '1' AND typeid = '1'";
$db->query($sql);
$db->next_record();
$head = $db->f("value");
if ( strlen($head) > "CMS_VALUE[3]") {
$head = substr($head, 0, "CMS_VALUE[3]");
$head .= '..';
}
// link
$link = $sess->url("front_content.php?client=$client&lang=$lang&idcat=$selcat&idart=$linkID[$key]&m=$m&s=$s");
echo '<tr><td colspan="2" height="22" style="padding-left:10px" bgcolor="#FFF7B5" cellspacing="1"><a class="artikel" href="'.$link.'">- '.urldecode($db->f("value")).'</a></td></tr>';
echo '<tr><td style="border=0; border-top=1;"></td></tr>';
} // end while
unset($headline);
unset($text);
} // end foreach
} // end if (is_array)
echo '</table><br>';
?>
Gruß
Zalu