Hinweis: Das Forum wird geschlossen! Neue Registrierungen sind nicht mehr möglich!

 Zurück zu Pro-Linux   Foren-Übersicht   FAQ     Suchen    Mitgliederliste
PHP: header("location: $filename"); Problem

 
Neuen Beitrag schreiben   Auf Beitrag antworten    Pro-Linux Foren-Übersicht -> Programmieren - Allgemein
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
mvo
Gast





BeitragVerfasst am: 16. Jun 2002 15:33   Titel: PHP: header("location: $filename"); Problem

Hallo,
ich mache gerade meine ersten PHP-Gehversuche.
Ich will auf einer Seite Dateien zum Download anbieten. Um einen Downloadzaehler zu realisieren, verwende ich ein kleines PHP-Script dafuer. Dieses Script enthaelt eine

header("location: $filename");

Funktion, um die Datei abzurufen. Das funktioniert auch ganz gut, aber bei manchen Dateitypen zeigt der Browser die Datei direkt an, statt den Filesave-Dialog anzubieten. Da mache ich dann wie gewohnt "Shift-Linksklick", aber dann wird im Filesave-Dialog nicht mehr der Download-Dateiname vorgegeben, sondern der Name des Scriptes.

Wie kann ich den Browser zwingen, in jedem Fall den Filesave-Dialog anzubieten? Oder wenigstens bei "Shift-Linksklick" den richtigen Dateinamen vorzugeben? Ich habe es schon mit

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

versucht, das hat aber keine Wirkung gezeigt.
 

jensemann



Anmeldungsdatum: 08.12.2001
Beiträge: 189
Wohnort: Krefeld (obwohl mir Kölsches Bier lieber ist)

BeitragVerfasst am: 16. Jun 2002 16:39   Titel: Re: PHP: header(

Hi

Guck mal in der php FAQ nach (http://www.dclp.de), solche Fragen werden in de.comp.lang.php regelmäsig gestellt, IIRC hängt das mit dem Mimetype zusammen, teilweise auch an Buggy Browsern (wobei dabei vorrangig der M$ IE betroffen ist (wen wunderts )

Mfg jensemann
_________________
Hilfe bei LFS Problemen: <a href="http://www.lfsforum.org" target="_blank"><!--auto-->http://www.lfsforum.org</a><!--auto-->
 
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen

mvo
Gast





BeitragVerfasst am: 16. Jun 2002 20:03   Titel: Re: PHP: header(

Hi,
danke fuer den Link, da war etwas brauchbares dabei.

>Wie kann ich den Browser zwingen, in jedem Fall den Filesave-Dialog anzubieten?
So funktioniert das jetzt, mit normalem Linksclick:
code:

header("Content-type: application/octet-stream");
header("Content-Disposition: attachment; filename=$get");
readfile("$path$get");



>Oder wenigstens bei "Shift-Linksklick" den richtigen Dateinamen vorzugeben?
Dazu habe ich absolut nichts gefunden. Mit "Shift-Linksclick" wird beim Konqueror 3.0.1 immer noch der Name des PHP-Scriptes im Dateidialog vorgegeben, mit Mozilla 1.0 funktioniert es richtig.
 

jensemann



Anmeldungsdatum: 08.12.2001
Beiträge: 189
Wohnort: Krefeld (obwohl mir Kölsches Bier lieber ist)

BeitragVerfasst am: 18. Jun 2002 14:24   Titel: Re: PHP: header(

Hi

Ja, mit dem Dateinamen hatten wir auch schon mal in de.comp.lang.php, ist keine Lösung in sicht, scheint ein Browser Bug zu sein, von dem aber AFAIK auch andere Browser betroffen sind.

Mfg jensemann
_________________
Hilfe bei LFS Problemen: <a href="http://www.lfsforum.org" target="_blank"><!--auto-->http://www.lfsforum.org</a><!--auto-->
 
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen

Beiträge vom vorherigen Thema anzeigen:   
     Pro-Linux Foren-Übersicht -> Programmieren - Allgemein Alle Zeiten sind GMT + 1 Stunde
Seite 1 von 1

 
Gehen Sie zu:  

Powered by phpBB © phpBB Group
pro_linux Theme © 2004 by Mandaxy