news-ticker über php

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • news-ticker über php

    wie kann man - oder kann man das überhaupt - einen newsticker über php basteln?
    hat da vielleicht jemand code oder einkleines beispiel?
    mfg

  • #2
    Was genau soll denn der News-Ticker können?
    Beschreib mal genauer, was Du willst...
    Am Besten, Du schaust Dir mal verschiedene JavaScript Ticker an, die Du z.B. bei JS-Welt findest.

    Im Prinzip ist es dann ganz einfach, den Ticker über PHP zu "speisen", indem Du an der Stelle, an der der Inhalt des Tickers erscheinen soll (im JavaScript) dann PHP-Code einfügst, der z.B. eine Textdatei ausliest oder Einträge aus einer Datenbank ausgibt.

    Gruss, zzet

    Kommentar


    • #3
      Hallo,

      ich habe ein ähnliches Problem... Ich bin sehr sehr neu auf dem Gebiet und hab das alles noch nicht so 100%ig raus mit PHP und mySQL. Bin aber glaib ich auch einem guten Weg...

      Ich bräuchte die Möglichkeit, einen Text (entweder DB oder TXT Datei) in einem Ticker anzeigen zu lassen. Um die Ausgabe in das Javascript und und den Ticker ansich geht es mir nicht.

      Wo ich hänge, ist die Administration des Textes. Wie baue ich das Formular auf, damit man über den Browser den Text in der DB ändern kann? Welche Felder brauche ich in der DB? Brauche ich ein Primärschlüsselfeld? Es soll immer nur einen Datensatz geben, der bei Bedarf geändert wird...

      Das sind sehr rudimentäre Fragen, ich weiß, aber ich mach da schon länger dran rum und komm nicht wirklich weiter...

      Wäre super, wenn jemand ein Tutorial oder vielleicht schon ein fertiges Script hat!

      Gruß
      Kane

      Kommentar


      • #4
        schau mal www.schattenbaum.net/php da siehst du ganz gut, wei man mit sql umgeht. in unseren Tuts findest du denke ich auch was.

        Kommentar


        • #5
          Hallo,

          also, ich habe ja oben bereits gepostet, welches Problem ich wirklich habe.
          Nun weiß ich aber noch immer nicht, wie ich das ganze am besten realisieren kann. Ich habe versucht von anderen Newssystemen was abzukupfern, aber die sind oft viel zu komplex für die Anforderung, die ich im Moment habe. Wahrscheinlich sind das nur 5-10 Zeilen, was ich brauche...

          Hier mal meine Fragen:

          1. Wie baue ich die Tabelle am besten auf? Brauche ich eine ID? Es ist ja sowieso immer nur 1 Record. Würde da auch genügen, nur EIN Textfeld, z.B. "Tickertext", anzulegen (ohne echten Primärschlüssel)?

          2. Ich brauche zum administrieren eigentlich auch nur eine Seite, da ich keine Übersicht bzw. Auflistung oder ähnliches brauche. Auf dieser Seite soll einfach ein Formular mit einem "Ändern"-Button sein. Kann mir da vielleicht jemand helfen, wie der PHP Code dazu aussehen muss?



          Das alles ist wahrscheinlich echt total simpel, aber ich hab das alles noch nicht so 100%ig raus. Wenn ich es dann erstmal sehe, wie es gelöst ist, dann ist es bestimmt voll einfach für mich und dann ärger ich mich wieder, wieso ich das nicht selbst hinbekommen habe...

          Ich wäre echt voll dankbar, wenn mir jemand helfen könnte...

          Schönen Feiertag noch!

          Gruß
          Kane


          Kommentar


          • #6
            Hallo,

            ich habe jetzt den ganzen Nachmittag damit verbracht das Teil hinzubekommen. Ich habe es auch geschafft!! YIPEE! Ich kann Termine eintragen, ändern und löschen. Wobei ich das ganze jetzt doch mit Primärschlüssel gemacht habe und dadurch ist die Administration auch übersichtlicher und schöner geworden, wenn man einzelne Termine/Datensätze anlegen kann.

            Folgendes Problem habe ich jedoch. Wenn ich das ganze in einem Ticker anzeigen will, dann zeigt der Ticker immer nur einen (ich glaube den letzten) Datensatz an und nicht alle. Ich bräuchte das aber so, dass er alle anzeigt, in der selben Reihenfolge, wie wenn ich diese aufsteigend auflisten würde.

            Ich habe mal das PHP Script mit der Abfrage angehängt und den dazugehörigen Ticker. Vielleicht kann mir jemand helfen? Ich bin wie gesagt absolut neu und vielleicht ist auch jemand so nett und passt mir das kurz an, falls es nicht zu viel Aufwand ist?!?

            Gruß
            Kane

            <?PHP

            require "db.php";

            $db=db_conn();

            $sql="select * from kls_ticker where datum >= CURRENT_DATE order by datum asc";

            $abfr=mysql_query($sql);

            while($zeile=mysql_fetch_array($abfr))

            {
            $datum=substr($zeile['datum'],-2).".".substr($zeile['datum'],4,2).".".substr($zeile['datum'],0,4);
            $titel=($zeile['titel']);
            $sep=("&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;---&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ");
            }

            db_close($db);

            ?>
            <script language="JavaScript1.2">

            /*
            Cross browser Marquee script- © Dynamic Drive (www.dynamicdrive.com)
            For full source code, 100's more DHTML scripts, and Terms Of Use, visit http://www.dynamicdrive.com
            Credit MUST stay intact
            */

            //Specify the marquee's width (in pixels)
            var marqueewidth=500
            //Specify the marquee's height
            var marqueeheight=15
            //Specify the marquee's marquee speed (larger is faster 1-10)
            var marqueespeed=1
            //configure background color:
            var marqueebgcolor="#ffffff"
            //Pause marquee onMousever (0=no. 1=yes)?
            var pauseit=0

            //Specify the marquee's content (don't delete <nobr> tag)
            //Keep all content on ONE line, and backslash any single quotations (ie: that\'s great):


            var marqueecontent='<nobr><span class="ticker">Neuankündigungen: <? echo "ab $datum" ?> <? echo "$titel" ?><? echo "$sep" ?></span></nobr>'


            ////NO NEED TO EDIT BELOW THIS LINE////////////

            var copyspeed=marqueespeed
            var pausespeed=(pauseit==0)? copyspeed: 0
            var iedom=document.all||document.getElementById
            if (iedom)
            document.write('<span id="temp" style="visibility:hidden;position:absolute;top:-100;left:-1000">'+marqueecontent+'</span>')
            var actualwidth=''
            var cross_marquee, ns_marquee

            function populate(){
            if (iedom){
            cross_marquee=document.getElementById? document.getElementById("iemarquee") : document.all.iemarquee
            cross_marquee.style.left=marqueewidth+8
            cross_marquee.innerHTML=marqueecontent
            actualwidth=document.all? cross_marquee.offsetWidth : document.getElementById("temp").offsetWidth
            }
            else if (document.layers){
            ns_marquee=document.ns_marquee.document.ns_marquee2
            ns_marquee.left=marqueewidth+8
            ns_marquee.document.write(marqueecontent)
            ns_marquee.document.close()
            actualwidth=ns_marquee.document.width
            }
            lefttime=setInterval("scrollmarquee()",20)
            }
            window.onload=populate

            function scrollmarquee(){
            if (iedom){
            if (parseInt(cross_marquee.style.left)>(actualwidth*(-1)+8))
            cross_marquee.style.left=parseInt(cross_marquee.style.left)-copyspeed
            else
            cross_marquee.style.left=marqueewidth+8

            }
            else if (document.layers){
            if (ns_marquee.left>(actualwidth*(-1)+8))
            ns_marquee.left-=copyspeed
            else
            ns_marquee.left=marqueewidth+8
            }
            }

            if (iedom||document.layers){
            with (document){
            document.write('<table border="0" cellspacing="0" cellpadding="0"><td>')
            if (iedom){
            write('<div style="position:relative;width:'+marqueewidth+';height:'+marqueeheight+';overflow:hidden">')
            write('<div style="position:absolute;width:'+marqueewidth+';height:'+marqueeheight+';background-color:'+marqueebgcolor+'" onMouseover="copyspeed=pausespeed" onMouseout="copyspeed=marqueespeed">')
            write('<div id="iemarquee" style="position:absolute;left:0;top:0"></div>')
            write('</div>')
            }
            else if (document.layers){
            write('<ilayer width='+marqueewidth+' height='+marqueeheight+' name="ns_marquee" bgColor='+marqueebgcolor+'>')
            write('<layer name="ns_marquee2" left=0 top=0 onMouseover="copyspeed=pausespeed" onMouseout="copyspeed=marqueespeed"></layer>')
            write('</ilayer>')
            }
            document.write('</td></table>')
            }
            }
            </script>
            Zuletzt geändert von Kane23; 01.01.2003, 17:48.

            Kommentar


            • #7
              hi

              Ich sehe zwar das dieses Thread schon über ein Jahr alt ist, jedoch steh ich jetzt vor selbigen Problem, da ich ebenfalls verschiedene Newsbeiträge,
              zBsp die der letzten 3 Tage aus der DB hole und Sie via des Javascript Marquee Scripts ausgeben lassen wollte.

              Habt ihr es nun geschafft, das ihr mehrere Beiträge anzeigen lassen könnt?

              Bei mir wird ebenfall immer nur der letzte Angezeigt, was auch irgendwie logisch ist, wüsst jetzt aber nicht wie ich das so aufteilen kann, das eben mehrere angezeigt werden.

              Danke , Gruß David

              Kommentar

              Lädt...
              X