Seite 1 von 1

Modul Artikelblättern / Datumsanzeige

Verfasst: Do 1. Apr 2004, 20:08
von McDeeJay
Tach,
ich setzt das Artikelblätternmodul für ein Pressearchiv ein.

Frage: Bei der Übersicht wird das Erstelldatum des Artikels ausgegeben. Ist es möglich, dort das Erscheinungsdatum in der Zeitung anzuzeigen?

Gruß

Martin

Verfasst: Fr 2. Apr 2004, 07:58
von scipio
Ausgegeben werden kann nur das, was im Artikel erfasst wurde. Gesteuert wird das über eine SQL-Abfrage:

$sql = "SELECT ARTLANG.idart, ARTLANG.title, CATART.idcat, ARTLANG.created, CONTENT.value, CONTENT.idtype, CONTENT.typeid
FROM ".$cfg["tab"]["cat_art"]." AS CATART, ".$cfg["tab"]["art_lang"]." AS ARTLANG, ".$cfg["tab"]["cat"]." AS CAT, ".$cfg["tab"]["content"]." AS CONTENT WHERE ARTLANG.idart = CATART.idart AND CATART.idcat = CAT.idcat AND ARTLANG.idartlang=CONTENT.idartlang AND CONTENT.idtype<=2 AND CONTENT.typeid<=2 AND CAT.idcat='$idcat' AND ARTLANG.idlang = '$lang' AND ARTLANG.online = '1' AND CATART.is_start='0' ORDER BY ARTLANG.artsort ASC,ARTLANG.created DESC";

Die Webausgabe über PHP speziell für das Datum läuft im OUTPUT mittels:

Code: Alles auswählen

 $artikel[$j][2] = substr($db->f("created"),8,2).".".substr($db->f("created"),5,2).".".substr($db->f("created"),0,4);
Man könnte nun das Feld "Startzeitpunkt" im Bereich "Zeitsteuerung" des Artikels missbrauchen:

Einfach das Datum der Erscheinung in das Feld "Startzeitpunkt" und die SQL-Abfrage ändern in:

$sql = "SELECT ARTLANG.idart, ARTLANG.title, CATART.idcat, ARTLANG.datestart, CONTENT.value, CONTENT.idtype, CONTENT.typeid FROM ".$cfg["tab"]["cat_art"]." AS CATART, ".$cfg["tab"]["art_lang"]." AS ARTLANG, ".$cfg["tab"]["cat"]." AS CAT, ".$cfg["tab"]["content"]." AS CONTENT WHERE ARTLANG.idart = CATART.idart AND CATART.idcat = CAT.idcat AND ARTLANG.idartlang=CONTENT.idartlang AND CONTENT.idtype<=2 AND CONTENT.typeid<=2 AND CAT.idcat='$idcat' AND ARTLANG.idlang = '$lang' AND ARTLANG.online = '1' AND CATART.is_start='0' ORDER BY ARTLANG.artsort ASC,ARTLANG.datestart DESC";

und den PHP-Teil ebenfalls ändern:

Code: Alles auswählen

 $artikel[$j][2] = substr($db->f("datestart"),8,2).".".substr($db->f("datestart"),5,2).".".substr($db->f("datestart"),0,4);
Hab's nicht getestet, daher wäre ein Feedback nicht schlecht.

Verfasst: Fr 2. Apr 2004, 14:33
von McDeeJay
Hi,
deine Lösung funzt bei mir nicht. Wenn ich das Startdatum nicht aktualisiere, setzt das Modul logischerweise alles auf 00.00.00. Wenn ich jedoch das Startdatum eingebe, zerschiest es den betreffenden Artikel in der List.

Verfasst: Mo 5. Apr 2004, 10:42
von McDeeJay
Tach,
die vorgeschlgene Lösung funzt doch. Hatte nur versehentlich die Zeitsteuerung aktiviert. Das ist aber nicht erforderlich.

Einfach nur Datum unter Starttermin eingeben, Artikel online stellen und freuen...

Gruß