Nach 4.4.4 Update +-Zeichen und HTML-Code in eig. Newsflash
Verfasst: Fr 22. Okt 2004, 15:01
Hallo,
nachdem ich die Contenido Version 4.4.4 auf unserem System installiert habe, sehe ich bei neu angelegten Artikeln in unserem Newsflash für jedes Leerzeichen innerhalb eines Textes ein "+"-Zeichen sowie für Sonderzeichen, Zeilenumbrüche usw. Zeichen wie:
%3CP%3E%26nbsp%3BTest+...%2B%26amp%3B%3C%2FP%3E%0D%0A%3CP%3E%26nbsp%3B%3C%2FP%3E%26nbsp%3B
Der Quellcode für unseren Newsflash hat folgendes Aussehen:
nachdem ich die Contenido Version 4.4.4 auf unserem System installiert habe, sehe ich bei neu angelegten Artikeln in unserem Newsflash für jedes Leerzeichen innerhalb eines Textes ein "+"-Zeichen sowie für Sonderzeichen, Zeilenumbrüche usw. Zeichen wie:
%3CP%3E%26nbsp%3BTest+...%2B%26amp%3B%3C%2FP%3E%0D%0A%3CP%3E%26nbsp%3B%3C%2FP%3E%26nbsp%3B
Der Quellcode für unseren Newsflash hat folgendes Aussehen:
Code: Alles auswählen
// second db class instance
$db2 = new DB_Contenido;
// selected category
$selcat = "CMS_VALUE[0]";
if($selcat!="0" && $selcat!="")
{
$query = " SELECT
ARTLANG.idart,
ARTLANG.idartlang,
ARTLANG.created,
ARTLANG.lastmodified,
CONTENT.typeid ,CONTENT.value
FROM ".$cfg["tab"]["cat_art"]." AS CATART, ".$cfg["tab"]["art_lang"]." AS ARTLANG, ".$cfg["tab"]["content"]. " AS CONTENT
WHERE
CATART.idcat = '$selcat'
AND ARTLANG.idart = CATART.idart
/* Join auf Content */
AND CONTENT.idartlang = ARTLANG.idartlang AND CONTENT.idtype = '1' AND CONTENT.typeid in ('1','2')
AND ARTLANG.idlang = '$lang'
AND "."ARTLANG.online = '1'
ORDER BY
case
when ARTLANG.lastmodified > ARTLANG.created then ARTLANG.lastmodified
else ARTLANG.created
end desc
,ARTLANG.idart,CONTENT.typeid
";
//print("<pre>".$query."</pre>");
// execute query
$db->query($query);
// get id's of sub articles
while ($db->next_record())
{
$head = $db->f("value");
$ShortText = $db->f("value");
if( $db->f("typeid") == 1 )
{
?>
<tr>
<td background="pics/news-fond.gif" class="news">
<?php
}
if( $db->f("typeid") == 1 )
{
$head = $db->f("value");
// link
$link = $sess->url("front_content.php?client=".$client."&lang=".$lang."&idcat=".$selcat."&idart=".$db->f("idart")."&m=".$m."&s=".$s."");
?>
<a href="<?php echo($link) ?>" class="newsheader"><?php echo($head) ?></a><br>
<?php
}
// Bei Kurzbeschreibung auch noch auf Feldlaenge achten
if( $db->f("typeid") == 2 )
{
$ShortText = $db->f("value");
if ( strlen($ShortText) > CMS_VALUE[3])
{
$ShortText = substr($ShortText, 0, CMS_VALUE[3]);
$ShortText .= ' ...';
echo($ShortText);
?>
</td>
</tr>
<tr>
<td><img src="pics/news-trennlinie.gif" width="180" height="1"></td>
</tr>
<?php
}
}
} // end while
}
?>[/color]
Ich habe bereits den Tipp bekommen, dass die Ursache im geänderten Datenbankhandling der neuen Contenido-Version liegen kann. Habe deshalb Einträge in der Form
&db->f("value");
geändert in
trim(strip_tags(urldecode($db->f("value"))));
Hat aber leider keine Besserung gebracht.
Wer kann mir bei diesem Problem weiterhelfen?
Vielen Dank im Voraus!!![/list]