Einzelnen Beitrag anzeigen

Benutzerbild von Matze
Matze
(Co-Admin)

Registriert seit: 7. Jul 2003
Ort: Schwabenländle
14.929 Beiträge
 
Turbo Delphi für Win32
 
#1

[php] Exif-Informationen werden fehlerhaft ausgelesen

  Alt 16. Apr 2007, 19:42
Hi,

da ich bei meinem PHP-Fotoalbum die Bilder aus den Verzeichnissen auslese und erst dynamisch beim Klick auf ein Thumbnail ein entsprechender Datenbankeintrag erstellt wird, möchte ich eine Bildbeschreibung und den Name des Fotografen in den Exif-Infos der JPG-Dateien ablegen. Das klappt soweit auch ganz gut, nur mit dem Auslesen habe ich Probleme.

Die Exif-Infos ermittel ich mit exif_read_data().

Die Ausgabe sieht wie folgt aus (ich kopiere mal alles hier hinein, da ich nicht weiß, ob das als Anhang auch so dargestellt werden würde):

Code:
Array
(
    [FILE] => Array
        (
            [FileName] => PICT1828.JPG
            [FileDateTime] => 1176740706
            [FileSize] => 173759
            [FileType] => 2
            [MimeType] => image/jpeg
            [SectionsFound] => ANY_TAG, IFD0, THUMBNAIL, EXIF, WINXP
        )

    [COMPUTED] => Array
        (
            [html] => width="800" height="600"
            [Height] => 600
            [Width] => 800
            [IsColor] => 1
            [ByteOrderMotorola] => 0
            [ApertureFNumber] => f/2.8
            [UserComment] =>
            [UserCommentEncoding] => ASCII
            [Thumbnail.FileType] => 2
            [Thumbnail.MimeType] => image/jpeg
        )

    [IFD0] => Array
        (
            [Make] => Konica Minolta Camera, Inc.
            [Model] => DiMAGE A2
            [Orientation] => 1
            [XResolution] => 72/1
            [YResolution] => 72/1
            [ResolutionUnit] => 2
            [Software] => DiMAGE A2 Ver.1.00 
            [DateTime] => 2007:04:14 06:43:33
            [YCbCrPositioning] => 1
            [Exif_IFD_Pointer] => 680
            [SubjectLocation] => Array
                (
                    [0] => 1368
                    [1] => 1272
                    [2] => 320
                    [3] => 384
                )

[color=#ff0000]           [Title] => D�a�m�p�f�l�o�k���
            [Comments] => L�o�k� �b�l�a�b�l�a�.�.�.���
            [Author] => M�a�t�t�h�i�a�s� �H�i�e�l�s�c�h�e�r���
            [Subject] => N�e�u�s�c�h�w�a�n�s�t�e�i�n���[/color]
            [CustomRendered] => 0
            [ExposureMode] => 2
            [WhiteBalance] => 0
            [DigitalZoomRatio] => 0/1
            [FocalLengthIn35mmFilm] => 33
            [SceneCaptureType] => 0
            [GainControl] => 0
            [Contrast] => 0
            [Saturation] => 0
            [Sharpness] => 0
            [SubjectDistanceRange] => 3
            [UndefinedTag:0xC4A5] => PrintIM�0250��������������.����������   ��'�� ��'��—��'��°��'����'��^��'���‹��'��Ë��'��å��'
        )

    [THUMBNAIL] => Array
        (
            [Compression] => 6
            [Orientation] => 1
            [XResolution] => 72/1
            [YResolution] => 72/1
            [ResolutionUnit] => 2
            [JPEGInterchangeFormat] => 38450
            [JPEGInterchangeFormatLength] => 3777
            [YCbCrPositioning] => 1
        )

    [EXIF] => Array
        (
            [ExposureTime] => 1/25
            [FNumber] => 28/10
            [ExposureProgram] => 2
            [ISOSpeedRatings] => 64
            [ExifVersion] => 0221
            [DateTimeOriginal] => 2007:04:14 06:43:33
            [DateTimeDigitized] => 2007:04:14 06:43:33
            [ComponentsConfiguration] => �
            [BrightnessValue] => 33/10
            [ExposureBiasValue] => 0/10
            [MaxApertureValue] => 300/100
            [MeteringMode] => 5
            [LightSource] => 0
            [Flash] => 16
            [FocalLength] => 2192/256
            [MakerNote] => � ������MLT0������p����`���Œ����@��eŒ�


[i][b]... GANZ VIEL SOLCHES ZEUGS ^^ ...[/b][/i]


g}“{bL6z¾†®®®®�������

            [UserComment] => ASCII�����������������������������������������������������������
            [FlashPixVersion] => 0100
            [ColorSpace] => 1
            [ExifImageWidth] => 800
            [ExifImageLength] => 600
        )

    [WINXP] => Array
        (
            [Title] => Dampflok
            [Comments] => Lok blabla...
            [Author] => Matthias Hielscher
            [Subject] => Neuschwanstein
        )

)
Auf php.net steht, dass da Dinge der XP-Section UTF-8 kodiert seien, doch mir geht's um das rot Dargestellte. Das meiste wird richtig ausgelesen, nur die 4 Werte, die ich benötige sind so verkorkst. Ich möchte aber nicht meine ganze Webseite UTF-8 kodieren, denn wie ich mich kenne wird dann gar nichts mehr korrekt dargestellt. *g*

Was kann ich da machen? Gibt's da evtl. eine UTF8toISO() Funktion oder ähnliches?
Das komische ist, dass diese Werte lesbar sind, nur zwischen jedem Buchstaben ist so ein Sonderzeichen. Die XP-Section möchte ich übrigens nicht nutzen.

Gruße,
Matze
  Mit Zitat antworten Zitat