Keine Refreshes?

pogi

Mitglied
Hallo

Ich Programiere gerade ein Chat in PHP.

Um jetzt die Nachrichten die geschrieben worden sind in den Chat zu bekommen muss ich immer ein refresh machen .

Meine Frage ist jetzt gibt es eine Weg nachrichten ohne refreshes zu bekommen?
 
Nein!
Ohne etwas neu zu laden, kann logischerweise nichts aktualisiert werden.
Suche einfach mal im Forum nach "PHP Chat", da wirst du mit Sicherheit genügend Informationen zum Sinn und Unsinn eines PHP-Chats...
 
Schau Dir mal die POSIX, Socket und Shared-Memory Funktionen von PHP an. Mir ist es gelungen daraus einen Socketserver-Chat OHNE Html oder Java refresh zu bauen.

Läuft aber nur auf einem root-server da dieses System einen Daemon benötigt der ohne Zeitlimit läuft.

Funktionsweise:

Userzeilen prüfen und in Shared-Memory pumpen (Semaphore nicht vergessen)

Der Daemon holt sich die Zeilen aus dem Speicher und pumpt sie per socket_write() zum User

Vorher das "Chatfenster-Frame" zum Daemon connectieren lassen
mydomain.de:port?id=userid
und mit socket_read() die Userid zum identifizieren holen.

Kannst mir bei Problemen Mailen
 
@pogi: Ich habe vor einiger Zeit einen Chat auf PHP-Basis programmiert. Um dabei den Traffic so gering wie möglich zu halten und nicht jedes mal alle Nachrichten vom Server holen muss, habe ich mit einem Frameset gearbeitet.

Zur verständlicheren Erläuterung: Das Frameset besteht aus 2 Frames. Im oberen Frame werden die Nachrichten angezeigt, das untere Frame ist nur 1 Pixel hoch und somit nicht sichtbar. Dieses Versteckte Frame wird aller 3 Sekunden neu geladen und verwendet als Source ein PHP-Script. Dieses PHP-Script gibt immer nur neue Nachrichten für den Benutzer zurück - und zwar in Form eines Java-Script-Codes, der wiederum die neuen Nachrichten in das Obere Frame schreibt. Ist keine neue Nachricht für den Benutzer vorhanden, gibt das PHP-Script auch nichts zurück und der Traffic wird somit veringert. Das ganze funktionierte im Testbetrieb (mit allerdings nur 6 Nutzern :)) wunderbar.

mfg, snuu
 
hallo snuu genau im gleichen prinzip arbeite ich auch nur ich wollt mal wissen ob es einen weg gibt den chat ohne refreshes aktuell zu halten
 
Nein. Ohne refresh läuft da garnichts. Wie willst du den ohne refresh die neuen Daten/Nachrichten bekommen?
 
Zurück