Bei Dateien-Download Dialogfeld erzwingen

Hallo

ich habe im Net danach gesucht, jedoch erfolglos.

deshalb frage ich hier mal nach, und zwar:

ist es möglich, mit php (oder html, javascript, etc.) bei einem Dateien-Download das Dialogfenster zu erzwingen? Ich möchte nicht, dass sich die Datei in einem neuen Fenster im Browser öffnet -.-"

Vielen Dank für die Hilfe!

Gruss
Dennis

Wollen Sie den Benutzer auffordern, die von Ihnen gesendeten Daten wie z.B. eine generierte PDF Datei zu speichern, können Sie den Header Content-Disposition verwenden, um einen empfohlenen Dateinamen anzubieten und den Browser zu zwingen, den Dialog zum Speichern anzuzeigen.

<?php // Wir werden eine PDF Datei ausgeben<br />header('Content-type: application/pdf');

// Es wird downloaded.pdf benannt
header('Content-Disposition: attachment; filename="downloaded.pdf"');

// Die originale PDF Datei heißt original.pdf
readfile('original.pdf');
?\>

Quelle:
http://de.php.net/header

Man muss nur wissen, wo man sucht :wink:

Erstmal vielen Dank für deine Antwort!!!

Nun ist das Problem jedoch folgendes, das ich den Link des Ortes und des Namens der Datei, aus der Datebank hole… (und das Fenster in dem der Download startet automatisch geöffnet wird, und die Informationen über GET bekommt)…

also z.b. der Link:

echo „name";echo „“>Download File“;

Vielen Dank für die Hilfe.

Gruss
Dennis

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

Erstmal vielen Dank für deine Antwort!!!

Nun ist das Problem jedoch folgendes, das ich den Link des
Ortes und des Namens der Datei, aus der Datebank hole… (und
das Fenster in dem der Download startet automatisch geöffnet
wird, und die Informationen über GET bekommt)…

z.b.:

echo „name";echo „“>Download File“;

Und dann die download.php:

<?php header('Content-type: application/octet-stream');
header('Content-Disposition: attachment; filename="'.$\_GET['file'].'"'); readfile('upload/'.$\_GET['file']); ?\> Du musst nur aufpassen, dass vor dem Setzen von Headern keine Ausgabe (z.B. echo) erfolgen darf. Außerdem solltest du bedenken, dass der in $\_GET['file'] übergebene Dateiname falsch ist bzw. dass $\_GET['file'] gar nicht übergeben wird. > > Wollen Sie den Benutzer auffordern, die von Ihnen gesendeten > > Daten wie z.B. eine generierte PDF Datei zu speichern, können > > Sie den Header Content-Disposition verwenden, um einen > > empfohlenen Dateinamen anzubieten und den Browser zu zwingen, > > den Dialog zum Speichern anzuzeigen. > > > > > > <?php ::// Wir werden eine PDF Datei ausgeben
header('Content-type: application/pdf'); > > > > // Es wird downloaded.pdf benannt > > header('Content-Disposition: attachment; > > filename="downloaded.pdf"'); > > > > // Die originale PDF Datei heißt original.pdf > > readfile('original.pdf'); > > ?\> > > > > > > > > Quelle: > > [http://de.php.net/header](http://de.php.net/header) > > > > Man muss nur wissen, wo man sucht :wink: