[PHP] - Sleep und echo treiben ein spielchen, das immer klappt. LEIDER!! :(



  • Mit sleep(); und flush(); kann man in PHP die ausführung vorerst anhalten.

    Eigentlich hatte ich vor, dass erst "Hallo..." angezeigt wird, dann sollte 10 sekunden gewartet werden und dann "...Du!" angezeigt werden.

    Aber das Hallo MUSS stehen bleiben. Nur klappt das nicht!
    Anstatt meiner Idee wartet PHP 10 Sekunden und gibt dann BEIDE gleichzeitig aus!

    <?php
    echo "Hallo...";
    flush();
    sleep(10);
    echo "...Du!";
    ?>
    

    Warum das denn?
    mfg
    Pro



  • server push



  • das ist leider browserabhängig.

    der internet explorer erlaubt das flushen, wenigstens mein älterer..

    der netscape wartet jedoch, bis sich die ganze seite geladen hat, und wirft dann alles auf einmal.



  • Das ging aber schnell *Gg*

    HMm schade.. gäbe es da nicht noch eine andere Möglichkeit?



  • ps: probiere das mal in unterschiedlichen browsern
    http://elise.joelh.de/
    hatte ich schon vor längerer zeit mit flush gebastelt. reine php anwendung.

    wenigstens bei mir gehts nur im ie, muss ich mal utner linux testen.. irgendwann



  • Sorry, aber:

    Weder Sleep, usleep noch flush funktioniert! 😉



  • Sorry, aber:

    Weder Sleep, usleep noch flush funktioniert! 😉

    PS: nebensache aber dieses Forum hat ein Bug! Bei den Smiles wird das CONFUSED Smile nur HALB angezeigt! Wie hier [ 😕 ] auch 😉

    mfg
    Pro


  • Mod

    😕 gehoert so!

    es ist kein PHP problem, sondern hat mit den browsern zu tun.

    einige stellen den runtergeladenen HTML code sofort da (zB opera) andere wollen erst die ganze seite haben, oder zumindest einen grossen teil (zB IE).

    da kannst du machen was du willst - wenn der broswer warten will, wartet er.

    btw: sleep() hat sowieso nix in einem PHP script verloren. denn der user soll die seite ja so schnell wie moeglich bekommen.



  • elise schrieb:

    ps: probiere das mal in unterschiedlichen browsern
    http://elise.joelh.de/
    hatte ich schon vor längerer zeit mit flush gebastelt. reine php anwendung.

    wenigstens bei mir gehts nur im ie, muss ich mal utner linux testen.. irgendwann

    mit firebird (mozilla 1.5a) gehts

    Shade Of Mine schrieb:

    einige stellen den runtergeladenen HTML code sofort da (zB opera) andere wollen erst die ganze seite haben, oder zumindest einen grossen teil (zB IE).

    mozilla 1.5a zeigt mir auch schon sachen teilweisse an



  • @dimah

    thanks for info, muss mal sammeln, welche browser durch flush diesen effekt haben können


Anmelden zum Antworten