Download einer Datei aus dem User-Verzeichnis

Wie kann ich in einer HTML-Box einen Link zum downloaden einer Datei aus dem user-Verzeichnis bereitstellen?
Hab schon einigies probiert, will aber irgendwie nicht!

Nun hab ich probiert das Problem mit PHP zu realisieren.

<?
$file = "C:\\IP-Symcon\\media\	est.txt";
header("Content-Type: application/msword");
header("Content-Disposition: attachment; filename=test.txt");
header("Content-Length: ". filesize($file));
readfile($file);
?>

Es startet aber kein Download, sondern der Inhalt der Datei landet in einem Popup!
Hat keiner einen Tipp für mich?

Wie meinst du in einem Popup? Es sollte der Download Dialog kommen… Du kannst auch die Word Datei direkt als Link im User Ordner legen.

paresy

Beides habe ich versucht!

Beim Aufrufen des Scriptes erscheint das Popup mit dem Inhalt der Datei!
Siehe Anhang.
Das ganze habe ich mit dem FireFox getestet.

Popup.JPG

Das Beispiel 1 aus der PHP Doku ausprobiert ?
PHP: readfile - Manual

Michael

Das ist doch ungefähr das was ich in meinem PHP-Script probiert habe.
Es erscheint aber kein Download-Dialog sondern der Inhalt der Datei landet in einem PopUp

Ungefähr ist nicht gleich.
Das hast du nicht:
header(‚Content-Description: File Transfer‘);
Michael

Bis auf den Dateinamen habe ich die Demo mal 1:1 übernommen,
gleiches Ergebnis!

Ah. Du versuchst ein Skript aufzurufen… Ähm das geht so nicht.

Du kannst eine Datei nur herunterladen, wenn du einen echten <a href…> Link in die HTMLBox setzt.

paresy

Das hatte ich erfolglos probiert. Wie muss man da den Pfad angeben?
Es muss ja irgendwie im Webserver liegen sonst kann man die aus dem Internet ja nicht laden.
Absolut oder Relativ zu was?
In welchem Verzeichniss sollten dann die Dateien liegen user/media?

Ah, das mit dem Script im WebFront habe ich auch nicht gesehen.

Entweder ganz ohne Script.
Also Datei in den Ordner webfront/user/ ablegen und dann im Link user/dateiname.txt.

Oder, wenn die Datei z.B. von einem anderen System geladen werden soll:
Dein bisheriges Script im Ordner webfront/user/ ablegen.
Readfile muss dann nur auf die eigentliche Datei per http://192.168… oder ‚c:/myfile/…‘ zeigen.
Michael
PS: Später sollte man Webhooks nutzen, ich glaube ich baue da Mal einen HookProxy :wink:

Gibt jetzt ein Modul, welches einzelne Dateien welche von IPS aus per http, https, ftp oder lokalen Dateisystem erreichbar sind, als Hook abzubilden.
Unterstützt auch SSL mit selbst-signierten Zertifikaten auf dem Quellsystem.
Die Übergabe von weiteren Get-Parametern im Hook.
Das erzwingen eines Downloads anstatt Darstellung im Browser.
Sowie Basic und Digest Authentifizierung am Quellsystem (als Parameter in der URL).

IPSNetwork/HookReverseProxy at master · Nall-chan/IPSNetwork · GitHub


Michael