Steffen: "Bitte warten" - Seite einblenden

Ich habe ein Perl-Scrip welche Daten von einem Formular verarbeiten muß und dann eine Antwortseite generieren und an den Browser senden soll. Die Datenverarbeitung dauer dabei bis zu 30 Sekunden.
Wärend dieser Zeit sieht der user immer nur das Formular und klickt bei längerer Wartezeit manchmal noch mehrmals auf den Submit Button.
Dadurch geht die ganze Sache dann von vorn los.

Wie kann man sozusagen eine "Zwischenmeldung" einbauen ?

Hab's schon probiert mit:

print "Bitte haben Sie etwas Geduld...";

HIER DIE VERARBEITUNG DER DATEN

print $antwortseite;

Geht aber leider nicht, da auch die erste Zeile erst nach Ablauf des gesamten Scripts im Browser erscheint.

Gruss Steffen.

  1. Hi Steffan,
    schau dir mal das Modul CGI und dort CGI::Push an. Damit solltest du das realisieren können.

    Bye
    Timothy

  2. Hi Steffan,

    bisher hatte ich über CGI::Push nur gelesen.
    Jetzt habe ich es mal probiert - aber bisher mit IE5.5 und Apache nicht (!!!) hinbekommen.
    Also kann ich nicht unbedingt behaupten, daß es mit diesem Modul funzt. Ich versuche es weiter - und sollt ich es hinbekommen haben, dann würde ich mich noch einmal melden.

    Sorry
    Timothy

    P.S. Vielleicht hat ja jemand anderes mit diesem Modul schon Erfahrungen

  3. Hi.

    Was hälst Du davon, einfach durch ein Script eine entspr. Seite sofort auszugeben und anschließend (z.B. per Meta-Tag) einfach die entspr. Daten erneut an ein cgi-Script zu übergeben?
    (Oder besser, ein Script mit einer Session-ID aufzurufen, das sich dann die entspr. Datei auf dem Server krallt).

    Zwar nicht ganz idiotensicher (User könnte "Stop" drücken), aber einfach zu realisieren.

    fs

  4. hi Steffen

    ich hab zwar keine ahnung von perl, aber eine idee wie man das evtl. doch recht einfach realisieren könnte.

    wenn du auf deiner formularseite auf "submit" clickst wird erst eine seite aufgerufen auf der steht "bitte warten...blablabla" und erst von dieser seite übergibst du die daten.
    un diese seite wird dann ersetzt durch die ausgabe seite. so hast du alles liniear.

    nur mal so eine idee am frühen montag morgen :-)

    alles liebe
    ole
    (8-)>

  5. Hallo,

    Vorige Woche wurde hier praktisch das gleiche Thema bereits diskutiert. Ich poset mal den Link auf meinen Lösungsvorschlag, vielleicht hilft Dir das weiter:
    <../../sfarchiv/2000_4/t22784.htm#a116664>

    Grüße
      Klaus