php.de

Zurück   php.de > Webentwicklung > PHP-Fortgeschrittene

PHP-Fortgeschrittene Arbeiten mit PHP ohne Einschränkungen

Antwort
 
LinkBack Themen-Optionen Bewertung: Bewertung: 2 Stimmen, 5,00 durchschnittlich.
Alt 08.06.2011, 23:48  
Benutzer
 
Registriert seit: 26.09.2006
Beiträge: 31
Floezen
Standard [Erledigt] Bild erst nach 2. Download lesbar...

Hallo,

Ich nutze folgendes Skript für den Download von JPEG-Bilddateien (und anderen Dateien):


PHP-Code:
header("Expires: 0");
header("Cache-Control: must-revalidate, post-check=0, pre-check=0");
header("Cache-Control: private",false); // required for certain browsers 
header("Content-type: ".$mime_type.";");
header("Content-Disposition: attachment; filename=$output_filename");
header("Content-Transfer-Encoding: binary");
header("Content-Length: ".filesize($file).";"); 

readfile($file); 
Nun funktioniert das Skript schon (fast) ganz gut. Nur beim Download der JPEGs gibt es ein Problem.
Prinzipiell sind die JPEGs erst nach einem 2. Download mit Programmen wie Vorschau (MacOS X), Safari, Firefox, Chrom lesbar.
Richtige Graphikprogramme scheinen aber kein Problem mit den "defekten" Dateien zu haben.

Beim Vergleich des 1. und 2. Download konnte ich aber feststellen, dass die fehlerhafte Datei scheinbar nicht vollständige Exif-Informationen enthält:

1. Download:
Code:
---- ExifTool ----
ExifTool-Version                : 8.28
Fehler                          : File format error
---- System ----
Dateiname                       : bild.jpg
Verzeichnis                     : /Users/me/Desktop
Dateigröße                      : 2.4 MB
Datum/Uhrzeit der Dateiänderung : 2011:06:08 22:58:53+02:00
Dateiberechtigungen             : rw-r--r--
***ende***
2. Download
Code:
---- ExifTool ----
ExifTool-Version                : 8.28
Warnung                         : IFD1 pointer references previous InteropIFD directory
---- System ----
Dateiname                       : bild.jpg
Verzeichnis                     : /Users/me/Desktop
Dateigröße                      : 2.4 MB
Datum/Uhrzeit der Dateiänderung : 2011:06:08 22:59:06+02:00
Dateiberechtigungen             : rw-r--r--
---- File ----
Dateityp                        : JPEG
MIME-Typ                        : image/jpeg
Exif Byte-Reihenfolge           : Big-endian (Motorola, MM)
***u.s.w.***
Den 2. Download kann ich auch mit einem anderen Browser starten. Die Datei ist auch dann lesbar.
Es scheint, als ob die Datei beim ersten Ansatz vor dem Download von Server unvollständig gelesen wird, danach aber im Cache ordentlich zur Verfügung steht... Aber das ist nur eine Idee.

Hat jemand eine Idee, wie ich das Problem lösen kann?

Danke
Flözen
Floezen ist offline   Mit Zitat antworten
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 09.06.2011, 00:02  
Benutzer
 
Registriert seit: 26.09.2006
Beiträge: 31
Floezen
Standard

OK. Die Frage kann gelöscht werden.
In einigen Fällen gibt es einen kleinen Datenbankfehler, der als Notice ausgegeben wird und auf dem Testserver (wo Notice Meldungen ausgegeben werden...) landen diese in der Bilddatei...
Floezen ist offline   Mit Zitat antworten
Antwort


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Bild in Bild überblenden mentalman JavaScript, Ajax und mehr 14 23.05.2011 19:20
imagecreatefromjpeg() "Allowed memory size exhausted" peter silie PHP Tipps 2010 17 04.05.2011 14:25
[Erledigt] Bild ausgeben solange das Script läuft favo PHP-Fortgeschrittene 6 17.09.2010 13:34
[Erledigt] Bild erstellen, speichern und gespeichertes Bild anzeigen Garog PHP Tipps 2009 26 11.07.2010 18:01
Download Button nur anzeigen wenn Bild grösser als.... ist smp2000 PHP Tipps 2010 10 28.05.2010 20:22
JPEG bild als download hilfe was mache ich falsch ??? pitti752002 PHP Tipps 2009 8 16.12.2009 08:16
Bildeffekte berechnen (Bild in den Hintergrund anschregen) Frank PHP-Fortgeschrittene 2 28.11.2009 02:20
Bild in enuem Fenster öffnen? K3HLIM JavaScript, Ajax und mehr 6 10.04.2009 20:43
download bild variabel mqs PHP Tipps 2009 3 09.03.2009 18:56
Transparentes Bild über Bild legen *update gelöst* Broadcast PHP-Fortgeschrittene 11 04.02.2008 15:27
PHP Bild Upload verweigert FTP Download Schreibrechte fehlen PHP Tipps 2005-2 2 28.09.2005 13:50
[Erledigt] Bild aus Datei in Bild einfügen PHP Tipps 2005-2 1 07.08.2005 23:36
[PHP«Image] Bild in ein anderes Bild einsetzen PHP Tipps 2005-2 4 07.08.2005 19:39
Bild größe hat prob mit umbenennung. JEGO PHP Tipps 2004 1 08.07.2004 16:30

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
exiftool \file format error\, mit php exif -daten in bild eintragen, php doqnload datei nicht mehr lesbar, bild format fehlerhaft nach download, bilddatei nicht lesbar php, exiftool pointer references previous gps directory, exiftool warning: ifd1 pointer references previous interopifd directory, ifd1 pointer references previous gps directory, php header nach download nicht lesbar, php datei nach download nicht lesbar, ifd1 pointer, php readfile exif, exiftool error \ifd1 pointer references\

Alle Zeitangaben in WEZ +2. Es ist jetzt 00:55 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum