Daniel: Zeichencodierung ändern

Beitrag lesen

problematische Seite

Hallo,

ich bin immer noch beim Relaunch der o.g. Seite, dabei möchte ich u.a. die Codierung der Seite und Datenbank ändern, von Latin1/ISO-8859-1 zu UTF8. Da sich einiges an der Datenstruktur ändert, lese ich die aktuelle Datenbank ein und schreibe die geänderten Daten in eine neue Datenbank. Die relevanten Zeilen:

$dsn_alt = 'mysql:host=' . DB_HOST . ';dbname=' . DB_NAME . ';charset=latin1';
$dsn_neu = 'mysql:host=' . DB_HOST . ';dbname=drarbeit;charset=utf8mb4';

$db_alt = new PDO($dsn_alt, DB_USER, DB_PASS, $opt);
$db_neu = new PDO($dsn_neu, DB_USER, DB_PASS, $opt);

$value = mb_convert_encoding($value, "UTF-8", "ISO-8859-1");

Leider werden nicht alle Zeichen korrekt umgewandelt und ich finde das Problem nicht. Ein Beispiel (Absatz "Beschreibung"):

Aktuelles Angebot: http://drarbeit.de/drarbeit/php/arch_get.php?angebot=nr14680

Nach Umwandlung: http://drarbeit.de/test.html

Ich vermute, dass viele Nutzer ihren Text einfach aus Word per copy&paste einfügen, dabei werden diese Aufzählungszeichen mitgenommen.

Hat jemand eine Idee, warum die nicht richtig umgewandelt werden bzw. wie ich das hinbekomme?

Viele Grüße Daniel