Tach,
wenn der report fertig ist, sollte die "datei" sofort zum download angezeigt werden.
Ich würde dasselbe Skript, welches Du laufen lässt, um dein Excel-Sheet zu erzeugen, benutzen, um das Excel-Sheet "on the fly" zu bauen.
Du müsstest lediglich die erzeugte Excel-Datei nicht in eine Datei, sondern direkt in den Browser ausgeben. Also wenn Du die Daten für das Excel-Sheet dann in einer Variable namens "$excel_data" hast,
einfach ein "echo $excel_data".
Allerdings müsstest Du den HTTP-Response-Header selbständig ausgeben: Normalerweise wird als "Content-type" im Header der Mime-Type "text/html" benutzt, du bräuchtest aber "application/msexcel".
Ich hab sowas mal in PERL für ein GIF-Image statt eines Excel-Sheets gemacht, da sieht das so aus:
print "Content-type: image/gif\n\n";
open IMAGE, "./img/$image";
binmode IMAGE;
print <IMAGE>;
close (IMAGE);
Wie man dass in PHP genau macht, dass kein Header ausgegeben wird, weiss ich nicht genau, aber denke, es muesste reichen, wenn einfach vor dem PHP-Teil, in dem du die Excel-Daten erzeugst & ausgibst, kein HTML-Teil vorkommt.
Hoffe, das hilft dir weiter.
Viele Grüße,
Jörg