Reload alle 2 Sekunden? ohoh...

leo-magic

Aktives Mitglied
Thread Starter
Dabei seit
24.12.2004
Beiträge
1.178
Reaktionspunkte
4
Hallo!

Ich stehe vor einem kleinen Problem. Uns so siehts aus:

Ich habe zwei Computer. Beide greifen auf gleiche Infos in einer mySQL Datenbank zu. Wenn nur der eine Computer neue Informationen in die Datenbank schreibt, soll der andere Computer möglichst ohne Versözerung die Seite aktualisieren und die neuen Infos anzeigen.

Wie lässt sich das am besten realisieren?

Meine Lösung:
Eine Seite mit zwei Frames.
1. Frame: Die Ausgabe der Seite.
2. Frame: eine mySQL Abfrage die auf neue Daten überprüft. Falls neue Daten vorhanden sind, aktualisiert es das Frame 1. Das Frame 2 muss alle 2 Sekunden neu geladen werden.

Die Idee dahinter ist, dass die Ausgabeseite nur dann neugeladen wird, wenn auch wirklich neue Datensätze in der DB sind. Ausserdem muss nur eine Datenbankabfrage alle zwei Sekunden durchgeführt werden.

Seht ihr eine andere, schönere Lösung? Kann das Aktualisieren im 2 Sekunden-Takt ein Problem darstellen?

Danke und Gruss!
Léo
 
ich habe keine ahnung von der materie, aber ich habe gelernt dass frames immer recht ungünstig sind.
 
Frames sind Technik aus den 90ern. ;)
Mach doch alle 1-2 Sekunden einen Ajax-Request und wenn es neue Einträge gibt, dann kannst Du entsprechende Inhalte auf der Seite austauschen, oder die ganze Seite neu laden.
 
Ajax klingt schön und gut, nur habe ich keine Ahnung davon. Wie würde das konkret funktionieren?

Gruss,
Léo
 
Ajax bedeutet "Asynchronous JavaScript and XML" und der Hintergrund ist der, das man im Hintergrund per Javascript eine HTTP-Adresse aufruft und je nachdem, was man machen möchte und was von dem Aufruf zurückkommt z.B. bestimmte Inhalte der Webseite austauscht.

Beispiele und nähere Infos findest Du schnell per google, falls Du das mal ausprobieren möchtest.
 
Du kannst auch einfach den Req machen und dann die komplette Seite mit dem zurück gelieferten ersetzten, wenn du dich nicht so damit auskennst. Dann kannst du einfach die Adresse des "Ausgabeframes" nehmen per Ajax anfragen und den Response als Body Inhalt zu setzen "document.getElementsByTagName("body")[0].innerHTML=req.responseText";
 
klingt super nur komm ich wirklich 0 draus. Habe absolut keine Erfahrung mit Ajax...

Vielleicht hilft mir ein Beispiel?

Danke!
Léo
 
Soweit ich weis... (JA ICH WEIS ES !) Kannst du ohne JS kein PUSH machen, du musst prüfen ob es ein Update gibt
 
Zurück
Oben Unten