Ich habe einige fremde Namen in meine Datenbank eingefügt und ich erkannte, dass ich vom Standard Latein/Schwedisch zu UTF-8 wechseln musste. Ich habe es tatsächlich in utf8mb4_general_ci geändert. Es zeigt die Charaktere jetzt korrekt an, aber ich bin auf ein kleines Problem gestoßen. Beim Abrufen eines Codes aus einer Textdatei (die in utf-8 codiert ist), wird der Code korrekt aufgenommen (z. B. FO), aber nachdem er in der Datenbank gespeichert wurde, wird er nun als \ r \ nFO angezeigt. Ich bin mir nicht sicher, wo diese zusätzlichen Charaktere abgeholt werden, aber es ist nicht von der Datei, denke ich.Fehler seit dem Ändern meiner MySQL-Datenbank in UTF-8
Habe ich während der Konvertierung etwas falsch gemacht, muss ich etwas vor dem Speichern der Zeichenfolge tun, oder hat es etwas damit zu tun, wie ich es in der Datenbank speichern?
Ich weiß, es gibt viele Themen zu diesem Thema, einschließlich SO, aber es gibt so viele, und ich habe keine mit diesem spezifischen Problem gefunden.
Einige Bearbeitungen .... Ich habe "Alle Symbole anzeigen" in Notepad ++ eingeschaltet und die CR LF werden am Ende der Zeilen korrekt angezeigt.
der Code in die Datenbank zum Einfügen ist ...
$query = $db->prepare("INSERT INTO players
(Name, DetailsJSON)
VALUES (:Name, :NewDetails)");
$query->bindParam(':Name', $this->Name, PDO::PARAM_STR);
$query->bindParam(':NewDetails', $this->DetailsJSON, PDO::PARAM_STR);
$query->execute();
$this->ID = $db->lastInsertID();
zeigen Sie uns den Code, bitte (Einfügen von Teil) – strangeqargo
'\ r \ n' sieht aus wie eine schlecht entkommen Windows Wagenrücklauf/Zeilenvorschub –
Edited im Einsatz zeigen. – Farflame