Teaser als Laufschrift

  • Hallo
    Ich hab mir den Teaser installiert. Und er funktioniert wunderbar. Mit verlinkung usw.
    Nun möchte ich den Teaser gerne als Laufschrift darstellen.


    Dafür hab ich folgenden Code erstellt:
    <html><head><title>Lauftext</title></head>
    <body> <marquee> <?php include 'teaser.php'; ?> </marquee> </body></html>


    Die Teaser.php wird korrekt eingebunden und das ganze wird auch als Laufschrift angezeigt.
    Nur leider werden die 5 Einträge die ich gespeichert habe untereinander angezeigt...
    Eintrag 1
    Eintrag 2
    Eintrag 3
    Eintrag 4
    Eintrag 5


    Was muss ich tun damit es in etwa so aussieht...:


    +++ Eintrag 1 +++ Eintrag 2 +++ Eintrag3 +++ Eintrag 4 +++ Eintrag 5 +++


    Kann ich den Marquee befehl auch direkt in die Teaser.php einbauen und wie bekomme ich das
    in einer Reihe angezeigt. Ausserdem möchte ich irgendwie die + Zeichen einbinden als Trennungszeichen.


    Ich hab schon viel probiert und auch gegooglet.
    Bin dann auf row und fetch gestossen, kann damit aber nicht umgehen bzw. das auf die Variablen verwenden die ich haben will...


    Meine Teaser Ausgabe sieht mitlerweile so aus:
    // Ausgabe beginnt:
    echo "<font color='#ffffff' size='2' face='arial'>";
    echo "<a:link color='#ffffff'>";
    echo "<div class=\"teaser\">";
    if(!empty($catname)) echo "<span class=\"catlink\">Kategorie: ".$catname."</span><br />\n";
    echo trim(truncateHtml(strip_tags($text,$strip), $text_len));
    echo "<hr></div>";


    Es wird also nicht alles mit angezeigt, sonder nur der Inhalt (Haupttext ohne überschrift etc...)...


    Ich hoffe es macht nicht so viel Umstände mir hierbei zu helfen...
    Gruß
    Andreas Tallen

  • Ich Probier und Probier und Tüftel usw. aber komm nicht weiter...
    Ich hab mittlerweile alles unnötige rausgenommen um mehr Überblick zu schaffen.
    Und zwar hab ich jetzt nur noch die Teaser.php in arbeit.


    Der Code unten sieht so aus:
    // Ausgabe beginnt:
    echo "<div class=\"teaser\">";
    $trenn = "- - - ";
    $laufschrift = $text;
    echo("<marquee> $trenn $laufschrift </marquee>");

    echo "</div>"; } }


    So werden aber alle 5 Zeilen gleichzeitig durchs Bild geschoben...
    Ich bin mir fast Sicher das ich die Variable $text dafür gar nicht verwenden darf, denn sie besteht schon aus den 5 Zeilen die untereinander stehen.
    wenn ich nämlich echo $text schreibe hab ich die 5 Zeilen auch schon...


    Ich müsste eine Variable haben die in etwa $Zeile(1) oder so heißt.
    oder nach meinem verständnis irgendwie
    i=i+1 echo "$zeile(i)"; if i = $limit then i ="0"
    Dann würde er das script zeile 1 einzeln ausgeben und dann zeile 2 usw. bis das voreingestellte limit erreicht wurde. (bei mir halt 5)


    Hoffentlich hört sich das nicht allzu lächerlich an.
    Danke Andreas

  • Hallo.


    Am Teaser selber brauchst du doch gar keine Änderungen vorzunehmen.


    Du machst auf der jeweiligen Seite wo du den Teaser als Laufschrift ausgeben möchtest einfach das ganze über den PHP Includebefehl.
    Wichtig ist nur das du für deinen Teaser im ACP-Artikelsystem eine feste Kategorie vergibt. Diese trägst du dann einfach im Teaser ein und los geht das ganze.


    LG

  • Danke erst mal für die Antwort. Aber so funzt das noch nicht.
    Ich hab jetzt eine Datei tea.php mit folgendem inhalt:
    <?php
    include 'teaser.php';
    ?>


    Die teaser.php ist jetzt unverändert. Und es werden alle Daten korrekt ausgegeben. Halt leider nur untereinander. Und nicht in einer Reihe...


    Wenn ich die Infos mit einer Kategorie vergebe und im teaser dann $cats="1" eingebe, werden natürlich nur die Infos mit der Kategorie 1 ausgegeben.
    Aber auch untereinander...
    Und wenn ich jetzt noch echo("<marquee> $text </marquee>"); in die tea.php einfüge wird als Laufschrift nur die letzte Zeile angegeben.


    Und jetzt wirds weiter interessant.:
    $trenn = "- - - ";
    echo("<marquee> $trenn $text </marquee>");

    dieser Block soll zuerst "--- " ausgeben und daneben dann den inhalt von $text direkt daneben. Aber die beiden Variablen werden auch untereinander geschrieben.
    Also mach ich da doch schon was falsch. Ausserdem wird jetzt nur die letzte Zeile der 5 Infos angezeigt...


    Irgendwie müsste man eine $laufschrift Variabel erzeugen die aus "--- "+$text(zeile1)+$text(zeile2)+etc bis zur angegebenen maximalen Zahl ($limit) geht erschaffen.
    Ich glaub schon das der Schlüssel der Veränderung auch in der teaser.php liegt.


    Oder meintest Du mit der vergabe einer Kategorie noch etwas anderes als den Infotext mit ner Kategorie zu versehen...?


    Danke und Gruß
    Andreas

  • Ich hab grad noch rausgefunden, das wenn ich eine neue php datei mit folgendem Inhalt schreibe alles so klappt wie es soll.
    Die Variablen $trenn und $name werden hintereinander ausgegeben und laufen durchs Bild...
    <?php
    $trenn = "- - - ";
    $name = "andreas";
    echo("<marquee> $trenn $name </marquee>");
    ?>


    Also ist doch die eigentliche Ausgabe in Ordnung. Nur die $text ist schuld an der ausgabe in mehreren Zeilen, denn
    wenn ich die teaser.php includiere und dann die $text mit ausgebe echo("<marquee> $trenn $name $text</marquee>"); wird zum einen eine neue Zeile angefangen,
    und alle anderen Zeilen werden dann auch in einer neuen Zeile ausgegeben...

  • OK! Ich hab jetzt eine neue Teaser.php aus der Original-ZIP entpackt und nur die Zeilen mit // versehen die ich nicht
    angezeigt haben möchte... (Zeile 254 und 256). Ich hab auch zusätzlich zur Ausgabe (echo trim...) noch
    meine Laufschrift eingebunden (marquee) die Variable $trenn soll halt noch trennstriche einfügen. ( text --- text --- etc.)
    Die Ausgabe ist so natürlich doppelt.
    Die statische Ausgabe müsse man dann auch mit // versehen. Und die Laufschrift müsste so verändert werden das sie in einer Reihe läuft...


    Ich hab meine Zugangsdaten rausgenommen...


    Komischerweise funktioniert das Script bei mir auch wenn ich die $ziel_url lehr lassen. Ich hatte den Pfad mal
    falsch. Ist mir irgendwann aufgefallen. Die korrektur hatte aber keine Veränderung gebracht...


    Unter http://www.svgehlenberg.de/lauf/teaser.php hab ich auch das Script hochgeladen.


    Ich hoffe du kannst mir da weiterhelfen. Ich hab die teaser.php in eine zip gepackt damit ich sie anhängen kann...
    Gruß Andreas

  • Habs installiert und hochgeladen. Komischerweise wird jetzt nur der letzte Datensatz von den 5 angezeigt.
    Aber der gleich 2 mal... est mit den Trennstrichen und dann ohne...


    So sieht das jetzt aus:
    Vorbereitung / Spielplan 1.Damen 2016/17
    - - - Vorbereitung / Spielplan 1.Damen 2016/17


    siehe http://www.svgehlenberg.de/lauf/teaser.php


    scheint doch schwieriger zu sein...


    Edit:
    Wenn ich den Punkt zwischen $text und = weg lasse wird nur eine Zeile angezeigt und das mit den Trennstrichen...
    Aber immernoch nur der letzte der Datensätze...


    So hab ichs mal kurz versucht...:
    $text = $trenn.trim(truncateHtml(strip_tags($text,$strip), $text_len));
    anstatt so:
    $text .= $trenn.trim(truncateHtml(strip_tags($text,$strip), $text_len));


    Aber das brings ja auch nicht wirklich...


    Edit:
    Wenn ich den Punkt weglasse und die marqueezeile mit in die } nehme, dann laufen wieder alle 5 Datensätze durchs bild. Immerhin schon mit den Trennstrichen vorweg...
    Aber leider immernoch untereinander...


    So sieht das jetzt bei mir aus.:

    // Ausgabe beginnt:
    // echo "<div class=\"teaser\">";
    // echo "<a href=\"".$link."\" class=\"title\">".$row['titel']."</a><br />\n";
    // if(!empty($catname)) echo "<span class=\"catlink\">Kategorie: ".$catname."</span><br />\n";
    // echo "<span class=\"datetime\">".$datum.", ".$uhrzeit." Uhr</span><br /><br />\n";
    $text = $trenn.trim(truncateHtml(strip_tags($text,$strip), $text_len));
    // echo "</div>";

    echo "<marquee>$text</marquee>"; }
    }


    Ich hab die Datei auch wieder Online unter http://www.svgehlenberg.de/lauf/beaser.php


    Ich hab die teaser.php auch noch online gelassen...
    Ist jetzt also teaser (die Datei von Dir) und beaser.php (mein neuer versuch...)

  • Ich habs geschafft...!! Und ich kanns kaum glauben.
    Ich hab mir überlegt, das sich die $text ja jedesmal um einen Datensatz weiter aufbauen muss.
    Also darf die Zeile nicht mit $text= beginnen. Denn ich will ja eine neue Variable aus der Ansammlung der $text Variabel erzeugen.
    Also hab ich meine neue Variable $lauf genannt.
    Das ganze dann addieren lassen und wieder raus aus dieser Klammer }.


    Meine Zeilen sehen jetzt folgendermaßen aus:


    // Ausgabe beginnt:
    $lauf = $lauf . $trenn.trim(truncateHtml(strip_tags($text,$strip), $text_len));
    }
    echo "<marquee>$lauf</marquee>";
    }


    Ich hab die // Zeilen jetzt mal weggelassen. Das ganze kann nun unter http://www.svgehlenberg.de/lauf/ceaser.php bewundert werden... :-)


    Ist der Code so in ordnung (valide???)

    Gruß Andreas

  • Was genau passiert eigentlich mit der $ziel_url...?
    Denn es funktioniert auch alles wenn ich diese Variable lehr lasse.
    Oder hat das damit zutun das ich keine Kategorien bei mir nutze...?


    Denn ich tease nicht meine Artikel die ich veröffentliche.
    Ich hab extra für diese Laufschrift das 01artikel system ein 2.mal installiert und hab es 01infobox genannt.
    diese 01infobox wird nirgends gezeigt. Nur der teaser greift auf dessen Datenbank zu.


    Ich glaub dann nutzt das teaser Script die Variable $ziel_url gar nicht...


    Richtig...???


    Gruß Andreas

  • Die Variable $ziel_url würde verwendet werden um aus dem Teaser heraus auf den entsprechenden Beitrag direkt zu verlinken.
    Da Sie das aber ja eh nicht nutzen kann die Variable auch gefahrlos leer bleiben.


    MfG,
    Michael

  • Ich hab die Infos verlinkt. Und auch aus der Laufschrift heraus funktioniert das wunderbar.
    Selbst wenn ich die Variable lehr lasse...
    Aber Egal. Ich habs jetzt korrekt eingegeben. Und es läuft super.


    Ich such jetzt nur noch ne bessere Alternative zu Marquee. Denn die Laufschrift soll nicht unterbrochen werden.
    Sie startet immer erst dann neu, wenn der letzte Buchstabe durch ist. Da muss ich mir wohl was mit JavaScript basteln.
    Hat aber in diesem Forum nichts verlohren..


    Danke nochmal für alles...!
    Andreas