Thread CGI mit sleep() (15 answers)
Opened by kimmy at 2011-05-16 09:58

topeg
 2011-05-19 12:08
#148797 #148797
User since
2006-07-10
2611 Artikel
BenutzerIn

user image
Eine "wachsende" HTML Seite ist eine schlechte Lösung.
Das funktioniert nur mit einigen Browsern und nicht alle Server unterstützen das. Das ist "veraltete" Technik.
Eine eine Idee ist den STDOUT zu flushen use IO::Handle; STDOUT->autoflush(1); und dann den Inhalt immer weiter zu schreiben und zu hoffen der Browser fängt schon an alles darzustellen bevor die Seite fertig geladen ist.
Die Andere einen speziellen Multipart-Header zu senden, den nur Browser verstehen, die von Netscape abstammen. Jeder Part ist eine HTML-Seite bei dem der Fortschrittsbalken größer geworden ist.


Besser:

- cgi 1 legt Datei an uns schreibt rein wie weit der Upload ist
- cgi 2 ließt die Datei und wird regelmäßig aufgerufen (siehe "redirect")
- Damit die Datei immer vollständig ist, muss sie beim Schreiben/lesen gelockt (siehe lock) werden.
- Damit mehrere Uploads funktionieren muss der Dateiname einzigartig für einen Upload sein.

Zu allem gibt es Beispiele im Forum und im Netz.

View full thread CGI mit sleep()