Mailinglisten-Archive |
Hallo, Am Dienstag, 16. Oktober 2001 um 11:15 schrieb Marco Kaiser: > Ok also der Chat soll über eine MYSQL DB gehen aber ich möchte keine > HTML Seite haben die sich alle 2sec refresht. > Da ja sonnst jedes mal die ganzen Texte geladen werden müssen. > Drum nun meine Frage: "Wie schafe ich es das ich *realtime* neue Texte > auf > die Seite Flush()'e"? Bei einigen system habe ich das schon gesehen aber > leider keine idee wie ich das realisieren könnte. Ich hatte einen Ansatz der auf SHM basiert programmiert. Du brauchst eine schleife die so lange läuft bis der User die Verbindung abbricht, ausserdem empfehle ich eine Funktion zum ausgeben und zum verlängern des ausgegebenen String, da der IE anscheinend erst ab einer bestimmten Menge weiter ausgibt. Hier ein kleines Skelett für die Ausgabe <?php ignore_user_abort(1); function stream($text) { while (sizeof($text) < 256) { $text .= " "; } print($text."\n"); flush(); } while (!connection_aborted()) { /* Hier jetzt die Nachrichten holen, formatieren und in einer Variable, sagen wir $output */ stream($output); usleep(10000); //ein wenig warten, um die Serverlast gering zu halten } exit; //Beenden, eventuell "$user verlässt den Chat" usw. ausgeben ?> Mit freundlichen Grüssen Nils Meyer -- Nils Meyer, Eichenweg 7, 21745 Hemmoor Tel: 04771 - 68 98 80 | http://www.nmeyer.com Fax: 04771 - 68 97 90 | http://www.webmasterchannel.de Mob: 0174 - 20 34 08 5 | mailto:meyer_(at)_wmc24.de
php::bar PHP Wiki - Listenarchive