Maurice: Problem mit Exifdaten auslesen

Hallo Leute,

ich habe ein Problem das Plötzlich auf meiner Seite entstanden ist. Ich habe Folgenden Code:

$meta = exif_read_data($Shop->position(), 'EXIF');
		
		$metadata = explode('_', str_replace('ASCII', '', $meta['UserComment']));
		
			$metadata['rider'] 		= '&nbsp;&nbsp;&nbsp;'.$metadata[1].'<br>';
			$metadata['horse'] 		= '&nbsp;&nbsp;&nbsp;'.$metadata[0].'<br>';

Aus einer Bilddatei wird die Kommentar Zeile ausgelesen, geteilt und dementsprechend auf dem Bildschirm angezeigt.

Beispiel für eine Kommentarzeile: "Muster 22_Muster M&uuml;ller" Ergebniss: rider: Muster Müller, horse: Muster 22

Der Code hat immer funktioniert. Als ich dann weitere Bilder hochgeladen hatte entstand plötzlich der Fehler das die Umlaute bei der Ausgabe falsch dargestellt werden. Und zwar: Ergebniss jetzt: rider: Muster M&uuml;ller, horse: Muster 22

PHP Header wird als UTF-8 übergeben, in der php.ini habe ich den default_charset auf utf-8 gesetzt. Eine httpd.conf Datei kann ich nicht finden um darin AddDefaultCharset UTF-8 einzusetzen. Ich habe auch bereits versucht einen String zu erzwingen mit strval() und (string).

Zuzusagen kann ich auch noch das ich die Variablen $metadata['rider'] auch nicht weiter verwerten kann wie z.b. mit str_replace oder dergleichen. Diese versuche ändern nichts im String und die Ausgabe bleibt die Selbe.

Nachdem ich mich jetzt schon ewig spiele hoffe ich ihr könnt mir helfen.

Liebe Grüße Maurice

  1. Hi there,

    Der Code hat immer funktioniert. Als ich dann weitere Bilder hochgeladen hatte entstand plötzlich der Fehler das die Umlaute bei der Ausgabe falsch dargestellt werden. Und zwar: Ergebniss jetzt: rider: Muster M&uuml;ller, horse: Muster 22

    Ohne jetzt Dein Problem konkret lösen zu können, aber vielleicht liegt der Fehler schon beim Schreiben der Exif-Daten? Die kommen ja auch von irgendeinem Programm und offensichtlich nicht aus der Kamera - schau Dir die Exif-Daten einmal mit einem Bildbearbeitungsprogramm an und wie sie da drin' stehen...

    1. Tach,

      Ohne jetzt Dein Problem konkret lösen zu können, aber vielleicht liegt der Fehler schon beim Schreiben der Exif-Daten?

      das ist vermutlich korrekt; so weit ich mich entsinne ist keine Angabe der Zeichenkodierung bei EXIF vorgesehen, man kann also nur hinterher raten, ob das ganze UTF-8, ISO oder anders kodiert ist.

      mfg
      Woodfighter

      1. Hallo,

        so weit ich mich entsinne ist keine Angabe der Zeichenkodierung bei EXIF vorgesehen, man kann also nur hinterher raten, ob das ganze UTF-8, ISO oder anders kodiert ist.

        das passt auch zu meinem Halbwissen. Und wenn irgendeine däml... ähm, suboptimal realisierte Software sogar Umlaute in HTML-Umschreibung &auml; in die EXIF-Daten reinschreibt, hat man sowieso verloren. Und genau danach sieht das für mich aus.

        So long,
         Martin