Olli: Rückmeldung nach Dateiladevorgang

Beitrag lesen

Hi,

Hi ChrisB,

Wenn dieser angeklickt wird, wird ein PHP-Script ausgeführt.
Da dieses sehr rechenintensiv ist, soll der Benutzer eine Art "Ich bin beschäftigt"-Feedback erhalten, solange der Vorgang läuft.
Ich dachte da zuerst an eine Veränderung des Cursors.
Dies geht ja recht einfach mit z.B.

document.body.style.cursor='wait';


> > Soweit so gut.  
>   
> Wozu eigentlich?  
> Mein Browser zeigt diesen Cursor eh automatisch an, so lange er noch auf Daten vom Server wartet.  

Bei mir nicht. Weder im FF noch im IE.  
Aber das grundsätzliche Problem ist ja, dem Benutzer zu signalisieren, dass da jetzt etwas längert dauert und diesem dies mitzuteilen. Ob nun mit einer Cursoraktion, oder einer anderen Meldung. Diese "Signalisierung" soll solange aktiv sein, bis das Skript/die Berechnung fertig ist.  
  

> > Ich habe deshalb mit Ajax experimentiert. Über das XMLHttpRequest-Objekt kann man ja eine Rückmeldung vom Server erhalten, wann dieser mit der Abarbeitung fertig ist.  
> > Dies funktioniert nur bedingt. Ich erhalte zwar nach der Abarbeitung über den HTTP-Statuscode die Antwort 200 (für Ok), aber das Ergebnis der Abarbeitung wird nicht an den Client gesendet (das PHP-Skript erzeugt eine Excel-Datei, die an den Client gesendet wird).  
>   
> Wenn du das Script per AJAX aufrufst, dann ist es auch dein JavaScript, das die Antwort im Hintergrund erhält.  

Aber warum funktioniert die Rückmeldung dann ohne JavaScript?  
~~~javascript
  
window.location.href = "../Verzeichnis/datei.php";  

MfG ChrisB

VG Olli