Zum Inhalt springen
View in the app

A better way to browse. Learn more.

Fachinformatiker.de

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

mit header() downloaden von .jpg?

Empfohlene Antworten

Veröffentlicht

Hi,

Ich wollte bei einem Wallpaper Fenster einen Direkt Download der JPG Datei erzwingen, ich weis das so etwas mit PHP gehen muss und ansatzweise habe ich ja auch schon den Code, aber leider wird nicht die JPG Datei gedownloadet, sondern die HTML Ausgabe der PHP Datei, also der Download-Dialog des Browser öffnet meine wallpaper.php mit HTML inhalt.



$file=".".$datei; // Dateipfad wird zusammengesetzt

$fp = fopen($file, "r"); // Datei wird geöffnet zum lesen

header("Content-Disposition: attachment; filename=$fp"); // Browser zwingen für Download
fpassthru($fp);
fclose($fp); // Datei wird geschlossen

[/PHP]

Die Variable $datei sieht meistens so aus: ./wallpapers/kategorie/datei.jpg, deshalb setze ich in der VAriable $file noch einen . davor, damit der Pfad wieder stimmt.

Ich habe auch schon mal den Header-Befehl ganz alleine genutzt, also:

header("Content-Disposition: attachment; filename=$file");

aber da kam das selbe ergebniss, also wie kannn ich den Browser aussfordern, ein Speicher-Dialog bei Bildern zu öffnen?

$file=".".$datei;     // Dateipfad wird zusammengesetzt

$fp = fopen($file, "r"); // Datei wird geöffnet zum lesen

header("Content-Disposition: attachment; filename=$fp"); // Browser zwingen für Download
fpassthru($fp);
fclose($fp); // Datei wird geschlossen[/PHP]

header("Content-Disposition: attachment; filename=$fp");

der filename ist bei dir doch der filehandler ( $fp ), sollte aber doch der pfad+dateiname sein oder???

cu TinTin

Probiers mal so:


header("Content-length: ".filesize("../../login.gif"));
header("Content-Disposition: attachment; filename=\"login.gif\"");
header ("Content-type: image/JPG");
readfile("../../login.gif");
[/PHP]

Dateiname ist natürlich bei mir anders. ;)

Dem IE als Clientbrowser kann man nicht beibringen Dateien als Download zu starten, die er normalerweise darstellen kann.

Er versucht sie IMMER erst darzustellen ...

Da kann man mit Headerinfos auch nichts machen, die ignoriert der gerne ;)

Originally posted by Spike

Dem IE als Clientbrowser kann man nicht beibringen Dateien als Download zu starten, die er normalerweise darstellen kann.

Er versucht sie IMMER erst darzustellen ...

Da kann man mit Headerinfos auch nichts machen, die ignoriert der gerne ;)

Das stimmt nicht, mein Beispiel zwingt auch den IE6 zum download.

Es geht zumindestens bei IE 5.0 und IE6.0

üBRIGENS DAS SCRIPT VON MR SELBST GEHT JETZT; HABE NUR VERGESSEN; DIE VARIABLE ZU ÜBERGEBEN

Archiv

Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.