ERLEDIGT
NEIN
NEIN
ANTWORTEN
3
3
ZUGRIFFE
295
295
EMPFEHLEN
-
11.12.08 15:27 #1
- Registriert seit
- Oct 2002
- Ort
- Schinkel (Schleßwig-Holstein)
- Beiträge
- 44
hallo zusammen,
ich habe eine Frage und zwar habe ich anhand eines Videotutorials eine kleine Shoutbox mit AJAX in Verbindung mit PHP/MySQL gebaut.
Hier der Javascript-code
Code :1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
var reloading_sb = "10000"; function readReq() { resObjekt.open('get', 'readshout.php?date' + new Date(),true); resObjekt.onreadystatechange = handleResponse2; resObjekt.send(null); } function handleResponse2(){ var text=""; document.getElementById("readshout").style.visibility = "visible"; if(resObjekt.readyState == 4) { meinJSONObjekt = eval ( "(" + resObjekt.responseText + ")" ); for(i = 0; i < meinJSONObjekt.ergebnis.length; i++) { text += "<!---- JSON inhalte welche aus der DB geladen wurden ---->"; } }else{ text = "<img src='loading.gif' /> loading..."; document.getElementById("readshout").innerHTML = text; } } window.setInterval("readReq()", reloading_sb);
Nun ist es so, wenn ich die function in Intervalen aufrufe, das man es quasi sieht. Klar sieht man es, ich habe ja auch ein loading.gif eingebaut.
Aber ich habe bereits Shoutboxen gesehen, wo wenn man etwas geschrieben hat, der geschriebene Text sofort zu sehen ist.
Und man hat nicht so diesen Reload-Blink-Effekt. wenn ich das mal so nennen darf!
vieleicht liegt das auch an der Art mein Script in intervalen aufzurufen?
Würde mich um Rat freuen!
MfG
AndréWenn ein Mensch stirbt, ist das eine Tragödie!
Wenn Millionen sterben ist es Statistik!
'-> (Stalin)
-
Hallo,
mein Ansatz wäre:
Wenn die Site das erste mal aufgerufen wird in der Db nachsehen, wieviele Beiträge in der DB sind (via fortlaufender ID kein problem)
Dem JS-Skript
1) die letzten 5 Beiträge
2) Anzahl der Beiträge( mittels ID)
dem JS-Skript zurückgeben.
Im Intervall:
Per Ajax dann an das serverseitige Skript die verfügbare ID senden.
Das Serverseitige Skript soll dann nachsehen, ob es seit dem neue Einträge gibt und die dann ggf. per XML zurückgeben.
Aus der Anzahl der XML Ergebnise dann die aktuelle ID generieren (ID + Anzahl neuer einträge) und nach kurzer zeit mit der neuen ID anfragen ob neue Einträge vorhanden sind.
Die Einträge lasse sich ja dann über JS bequem an die aktuellen schon angezeigten Einträge anhängen.
Ich hoffe, dass ich dir weiterhelfen konnte.
Viele Grüße
MarcelGeändert von marcel_m (11.12.08 um 15:38 Uhr)
-
11.12.08 18:03 #3
- Registriert seit
- Oct 2002
- Ort
- Schinkel (Schleßwig-Holstein)
- Beiträge
- 44
Hallo marcel,
momentan ist es so, das alles nicht in xml in der datenbank gespeichert wurde.
Ist es dennoch möglich die datensätze, wenn neue vorhanden sind, "hinten dran zu hängen" oder ist es einer der Vorteile xml in der SB zu speichern?
Danke Dir schonmal!
viele Grüße
AndréWenn ein Mensch stirbt, ist das eine Tragödie!
Wenn Millionen sterben ist es Statistik!
'-> (Stalin)
-
Hi André,
wie die Daten in der DB gespeichert sind, ist an sich egal.
Wichtig wäre, dass das PHP Skript die Ergebnisse aus der Datenbank XML konform zurückgibt (wobei man das nicht zwanghaft mit xml lösen muss.)
Ein "allgemeiner Code" zum anhängen neuer Daten:
Code :1 2 3 4 5 6 7 8
// Erstelle neues Element var neuerBeitrag = document.createElement("div"); // Weise neuem Element Inhalt zu neuerBeitrag.innerHTML = text ; // Füge das neue Element der Shoutbox hinzu document.getElementById("readshout").appendChild(neuerBeitrag);
Hoffe, dass ich helfen konnte
Grüße ausm Süden Deutschlands
Marcel
Ähnliche Themen
-
Funktionsaufruf nach AJAX - ohne eval, ohne jQuery?
Von ZodiacXP im Forum Javascript & AjaxAntworten: 1Letzter Beitrag: 02.11.10, 11:53 -
Ajax: Teil einer Seite reloaden
Von EGJSoldier im Forum Javascript & AjaxAntworten: 12Letzter Beitrag: 21.10.09, 12:53 -
Formular auswerten ohne Reload - AJAX
Von HeinerK im Forum Javascript & AjaxAntworten: 1Letzter Beitrag: 30.04.09, 20:17 -
Ajax/JSP Tutorials ohne DB
Von messmar im Forum Javascript & AjaxAntworten: 2Letzter Beitrag: 24.10.08, 15:21 -
Content ohne neuladen mit Ajax verändern
Von VanHellsehn im Forum Javascript & AjaxAntworten: 3Letzter Beitrag: 28.06.08, 13:27





Zitieren
Login





