Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

PHP Downloadzwang Script beschädigt Dateien!

Frage Entwicklung PHP

Mitglied: B-free

B-free (Level 1) - Jetzt verbinden

22.09.2013 um 21:35 Uhr, 2509 Aufrufe, 2 Kommentare

Hallo,

Ich bin ein Neuling in PHP und habe ein Script, was den Download erzwingt. Es geht eigentlich alles, nur leider sind die Dateien nach dem Download nicht mehr zu öffnen. Im Hexeditor habe ich dann gesehen, dass die gesamte Webseite in eine Datei geschrieben wurde. Blöd oder?

mein Code sieht so aus:
01.
(...) 
02.
$datei = "daten/".$pfaduser."/".$datei
03.
$dateiname = basename($datei); 
04.
$groesse = filesize($datei); 
05.
header("Content-Type: application/force-download"); 
06.
header("Content-Disposition: attachment; filename=".$dateiname); 
07.
header("Content-Length:".$groesse); 
08.
readfile($datei); 
09.
(...)
auf dem Server sind die Dateien noch ganz.

bin Ratlos
Tschau
B-Free
Mitglied: nxclass
23.09.2013, aktualisiert um 08:14 Uhr
die gesamte Webseite in eine Datei geschrieben wurde.
ja - aber das ist doch genau was passiert wenn jemand Inhalte vom Server läd.

01.
<?php 
02.
(...) 
03.
$datei = "daten/".$pfaduser."/".$datei; 
04.
$dateiname = basename($datei); 
05.
$groesse = filesize($datei); 
06.
header("Content-Type: application/force-download"); 
07.
header("Content-Disposition: attachment; filename=".$dateiname); 
08.
header("Content-Length:".$groesse); 
09.
readfile($datei); 
10.
exit;
... es darf keine Ausgabe vor dem senden der header() erfolgen und auch nicht nach dem senden der readfile($datei).

Ich würde beim Content-Type aber möglichst den richtigen Type angeben - lass doch den Browser des Clients entscheiden was er mit der Datei macht.
Bitte warten ..
Mitglied: B-free
23.09.2013 um 13:39 Uhr
Hallo, Danke und Öhm.

Ich würde beim Content-Type aber möglichst den richtigen Type angeben - lass doch den Browser des
Clients entscheiden was er mit der Datei macht.
Das Problem ist, dass ich Dateien zum Download anbiete und eben nicht möchte, dass diese angezeigt wird.

... es darf keine Ausgabe vor dem senden der header() erfolgen und auch nicht nach dem senden der
readfile($datei).
Das ist die Antwort auf mein Problem! Danke!

Also werde ich die Datei in einem neuen Tab öffnen lassen, wo vorher keine Ausgabe stattfindet (und nachher auch nicht).

Danke und Tschau
B-Free
Bitte warten ..
Ähnliche Inhalte
Windows Tools
Dbf. Datei ist beschädigt. Wie die Datei wiederherzustellen? (5)

Frage von fredneumann zum Thema Windows Tools ...

PHP
gelöst Übergabe Formularinhalte an externes PHP Script (15)

Frage von schneerunzel zum Thema PHP ...

PHP
gelöst Externe XML-Datei in PHP auslesen (18)

Frage von Akrosh zum Thema PHP ...

Neue Wissensbeiträge
Humor (lol)

Wo ist der Fehler auf dem Bild?

(2)

Information von the-buccaneer zum Thema Humor (lol) ...

Windows Update

Offenbar erneutes MS-Update mit Fehlerschleife (2012 R2)

Information von VGem-e zum Thema Windows Update ...

Windows Installation

Unorthodoxer Weg, um an einen Offline-Installer für Adobe Flash zu kommen

(14)

Tipp von beidermachtvongreyscull zum Thema Windows Installation ...

Heiß diskutierte Inhalte
Exchange Server
gelöst Proxy Server Settings Cloud + EWS (17)

Frage von SomebodyToLove zum Thema Exchange Server ...

Windows Server
PDF Editor für den Einsatz auf Terminal Servern (16)

Frage von kwame501 zum Thema Windows Server ...

Windows Installation
Unorthodoxer Weg, um an einen Offline-Installer für Adobe Flash zu kommen (14)

Tipp von beidermachtvongreyscull zum Thema Windows Installation ...

Virtualisierung
Unterschied zwischen VDI und Terminal Server Lösungen (12)

Frage von tukawi06 zum Thema Virtualisierung ...