Mailinglisten-Archive |
Stefan Krister wrote: > > http://osiris.ifi.unizh.ch/pushpull.html , Anschnitt "Server-Pull" > > wie macht das z.B. apollo7.de? Beim Netscape sehe ich die abgefragten > Suchmaschinen, anschließend kommen die Treffer. > > Beim IE jedoch, kommen die Treffer _ohne_ vorherige Suchmaschinen. vermutlich Fallunterscheidung je nach $HTTP_USER_AGENT > > Microsoft ignoriert diesen einfachen und eleganten Mechanismus > > allerdings hartnäckig > > So wie's aussieht, müssen sich die IE-User wohl damit begnügen, nichts > zu sehen ... > > Hat jemand einen Code-Ausschnitt für mich, wo sowas gemacht wird? Ich > meine jetzt die Ausgabe beginnend links oben im leeren Browserfenster. die Dokumentation im pushpull.html (s.o.) enthält doch ein Code-Beispiel, oder ? (OK, 's ist ein Shell-Script, kein PHP, aber so riesig werden die Unterschiede doch nicht sein ...) wem das allerdings zu knapp ist, kann hier eine Langfassung in PHP bewundern: <? $is_multipart = false; // unterstützt unser Browser Server-Push mit multipart/replace ? // naiv, aber für den Anfang reichts function have_multipart() { global $HTTP_USER_AGENT; if(strstr($HTTP_USER_AGENT,"ozilla")) { if(strstr($HTTP_USER_AGENT,"MSIE")) return false; if(strstr($HTTP_USER_AGENT,"compatible")) return false; return true; } return false; } // multipart-header ausgeben function multipart_next($type="text/html") { global $is_multipart; if($is_multipart!=true) { $is_multipart=true; header("HTTP/1.0 200"); header("Content-type: multipart/x-mixed-replace; boundary=MultipartDelimiter"); } print "--MultipartDelimiter\n"; print "Content-type: ".$type."\n\n"; flush(); } function multipart_start($type="text/html") { multipart_next($type); } function multipart_end() { global $is_multipart; if($is_multipart) { print "\n\n--MultipartDelimiter--\n"; } flush(); } multipart_start(); echo "Hallo start\n"; multipart_next(); sleep(5); for($i=1;$i<10;$i++) { echo "Fortsetzung $i von 10\n"; multipart_next(); sleep(5); } echo "das wars\n"; multipart_end(); ?> -- Hartmut Holzgraefe hartmut_(at)_six.de http://www.six.de
php::bar PHP Wiki - Listenarchive