sebastian2608
Goto Top

PHP Dateianzeige im Browser

n' Abend Leute,

ich stehe im Moment vor einer Aufgage, die ich seit mehreren Tagen nicht gelöst bekomme...
Ich möchte PDF´s im Browser anzeigen lassen - Soweit sogut, bei bestimmten PDF´s klappt das ohne Probleme, bei anderen zeigt der Browser nur einen Fehler.
(Firefox als Bsp.: http://prntscr.com/h7yt7i )

Hierbei ist mir aufgefallen, dass die geladene Dateigröße nicht der tatsächlichen entspricht: http://prntscr.com/h7ytzk
Die eigentliche Größe Beträgt ca 7MB - Es funktioniert allerdings schon mit 2MB auch nicht...

Ich lade die PDF´s mit folgendem Script:

	if ($action == "show_pdf") {  
		set_time_limit(50000000);
		$data_pdf_file = "./pfad/pfad/pfad/$file";  
		$filename = "$file";  
                header("Pragma: public");  
                header("Expires: 0");  
                header("Cache-Control: must-revalidate, post-check=0, pre-check=0");  
                header("Cache-Control: private",false);  
		header('Content-type: application/pdf');  
		header('Content-Disposition: inline; filename="' . $filename . '"');  
		header('Content-Length: ' . filesize($data_pdf_file));  
		header("Content-Description: File Transfer");  
		header('Content-Transfer-Encoding: binary');  
		header('Accept-Ranges: bytes');  
		@readfile($data_pdf_file);
	}

Hab auch schon einige header hinzugefügt, um zu sehen ob evtl ein fehlender header das Problem ist...
Hat jemand eine Idee was den Fehler verursachen könnte? Bin echt schon ratlos...

LG
Sebi

Content-ID: 354122

Url: https://administrator.de/contentid/354122

Ausgedruckt am: 22.11.2024 um 16:11 Uhr

Arano
Arano 08.11.2017 um 22:26:54 Uhr
Goto Top
Guten Abend.

Speichere die Bilder(?) doch bitte direkt im Beitrag !
So bleiben diese auch sichtbar wenn der externe Server offline geht.
Außerdem müssen wir uns nicht erst durch lahme Links "quälen" um an die Infos zu kommen die DU uns liefern solltest !

  • Mach mal das "@" in Zeile 15 weg,
  • lade die generiert Datei herunter und
  • öffne sie mit einem Texteditor
Ich schätze dann siehst du eine PHP-Fehlermeldung.


~Arano
LordGurke
LordGurke 08.11.2017 um 22:43:32 Uhr
Goto Top
Und bitte setze nicht einfach einen "Accept-Ranges"-Header, es sei denn du kannst hier schlüssig erklären, was er bewirkt und warum man ihn in deinem Script nicht verwenden kann face-wink
sebastian2608
sebastian2608 10.11.2017 um 22:37:53 Uhr
Goto Top
Ganz einfaches Problem: Hatte den Dateinamen über GET übergeben, und vergessen diesen URL-konform zu machen - Somit gab es Fehler...

@LordGurke - Die Header habe ich nur zum testen gesetzt face-wink

Grüße
Sebi face-smile