csv Datei für Outlook Import - Umlautproblem

hans jörg

Erfahrenes Mitglied
Abend,

ich habe folgendes Problem:
Ich generiere eine CSV Datei mit php um mittels dieser, Adressen in Outlook importieren zu können. Ich habe aber leider dass Problem, dass Outlook die Umlaute nicht übernimmt egal mit welchem Zeichensatz ich die Datei versehe (mittels "mb_convert_encoding()").

bitte um Hilfe - Danke!
 
Hi,

wo kommen die Daten denn her (und in welcher Kodierung)? Wie sehen die Umlaute in der CSV-Datei aus, wenn Du die mal mit 'nem Editor (einem, der auch unterschiedliche Kodierungen speichern kann) öffnest?

LG
 
Die Daten kommen aus einer Mysql Datenbank mit folgender Einstellung: CHARSET=utf8 COLLATE=utf8_unicode_ci
- werden mit php ausgelesen
- in einem String gespeichert
- dieser wurde in zahlreichen Versuchen mit mb_convert_encoding() in alle mir Bekannten Zeichesätze umgewandelt
- und mit fwrite() wurde die .csv datei generiert

im Texteditor und im Dreamweaver werden die Umlaute korrekt angezeigt.
 
Hi,

im Texteditor und im Dreamweaver werden die Umlaute korrekt angezeigt.

Und in welcher Kodierung öffnet der Editor die? Kann Dein Editor sowas, wie "Reopen Using Encoding..."?

Wurde denn beim Schreiben in die DB auch UTF-8 verwendet? Die Einstellungen sind meines Wissens nach nur 'DEFAULT'. D.h. wenn man per PHP-Script vor dem Schreiben ein SET NAMES 'latin1' gemacht hat...

LG
 
Hi,

und wenn Du nun den Dreamweaver oder Editor das Dokument in die Kodierung umwandeln lässt, die Outlook braucht?
Kannst ja mal eine Datei mit Beispieldaten anhängen (ohne Umkodierungsversuche), weil, ohne zu wissen, wie die Daten denn nun wirklich in der DB stehen, auf was die DB-Verbindung beim Lesen steht, usw,usw. kann nicht viel machen...

LG
 
@kuddeldaddeldu vielen Dank für deine Bemühungen.

Für suchende die mal das selbe Problem haben:
Ich hab das Problem wie folgt "gelöst"

Outlook erstellt beim Export in eine csv Datei für Sonderzeichen eigne mir unbekannte Zeichen. Ich hab die für meine Anwendung gängigsten in einen Array gespeichert und ändere diese dann beim erstellen der csv datei.
Ausschnitt aus meiner Klasse:
PHP:
	public $specialChars = array
	(
		0=>array("ß","á"),
		1=>array("ü",""),
		2=>array("ä","„"),
		4=>array("ö","”"),
		5=>array("Ü","š"),
		6=>array("Ä","Ž"),
		7=>array("Ö","™")
	);
	private function convertSpecialChars($string)
	{
		for($i = 0; $i < count($this->specialChars); $i++)
		{
			$string = str_replace($this->specialChars[$i][0], $this->specialChars[$i][1], $string);
		}
		return $string;
	}
- ist siche rnicht die schönste Lösung, für meine Aufgabe reicht sie aber.
 
Zurück