(Hallo|Hi(ho)|Tag) Silvia Zeiss-Ribbe,
ich verwende ein recht einfaches Skript zum Hochladen von Dateien:
<?php
...
?><html>
...
?>
Jetzt ist es aber so, dass nach dem Klick auf "Upload" die Seite so "stehen bleibt", erst wenn der Upload abgeschlossen ist, wird die Seite neu geladen.
Gibt es eine - einfache - Möglichkeit, WÄHREND des Hochladens eine GIF-Animation einzubinden?
Mein Browser zeigt während eines Uploads eine "Animation" inklusive der hochgeladenen
Datenmenge. So gesehen kann ich auf solchen Schnick-Schnack verzichten.
;-)
Der Dateiupload in PHP wird intern gehandled. Wenn du auf $_FILES zugreifen kannst, ist alles schon vorbei. Die Datei ist
oben. Wenn du direkt nach dem Aktivieren des Submit-Buttons im Browser was anzeigen willst, benötigst du JavaScript.
Damit kannst du dann irgendeine (animierte GIF-)Grafik einbinden.
Willst du genauere Informationen (die Menge der hochgeladenen Daten) anzeigen, gibts in PHP keine einfache Lösung -- zumindest
kenne ich keine. Die gängigen Lösungen sind:
1. Es wird ein Perl-Script zum Upload benutzt. In Perl wird der Dateiupload über das Modul CGI erledigt. Dies erlaubt die
Angabe einer so genannten Hook-Funktion, die Daten über den Upload liefern kann.
2. Seit PHP 5.2 kann man eine spezielle Extension einbinden, die Rückmeldungen über den Upload liefern kann:
http://pecl.php.net/package/uploadprogress
3. Ältere PHP-Versionen kann man eventuell patchen, damit sie Upload-Rückmeldung geben können:
http://bluga.net/projects/uploadProgressMeter/
Alle drei Methoden benötigen auf der Client-Seite einen Browser der mit
Remote-Scripting (im Volksmund als AJAX bekannt) ansteuerbar ist, damit
dieser die Upload-Informationen auch abfragen kann.
MffG
EisFuX