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.
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!
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...
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";
//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 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
}
}
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.
Kommentar