Frage

so ich habe mysql_real_escape_string unter Verwendung von Daten in der Datenbank einfügen ... aber dann, wenn ich, dass sie alle Apostrophe mit dem Symbol ersetzt â € ™

so statt Anzeige es ist, ist es die Anzeige itâ € ™ s .......

ist es eine Möglichkeit, jene â € ™ s in Apostrophe zurückzuverwandeln, wenn ich wieder aus der Datenbank gelesen?

War es hilfreich?

Lösung

Dies ist einige Zeichencodierung Problem in gewisser Weise.

Weil in UTF-8, (U + 2019) mit 0xE28099 kodiert. Und das stellt die Zeichen â (0xE2), (0x80) und (0x99) in Windows- 1252 .

So scheint es, dass Sie gerade zu vergessen Ihre Ausgabezeichen angeben richtig kodiert so dass der Browser statt Kodierung Windows-1252 seine Standardzeichen verwendet.

Andere Tipps

mysql_set_charset auf UTF-8 in der PHP.

Stellen Sie sicher, Ihre Datenbank und Anwendung ist die gleiche Zeichenkodierung verwendet wird.

In binär, ' ist identisch im Wert ’, so dass Sie die Codierung, um sicherzustellen, müssen festgelegt ist das gleiche.

In Ihrer PHP-Anwendung, können Sie dies mit den folgenden zwei Zeilen angegeben werden.

define(‘DB_CHARSET’, ‘utf8′);
define(‘DB_COLLATE’, ”);

Dies stellt die Anwendung auf die Verwendung von UTF-8-Zeichensatz, mit dem Sie Ihre Matches Datenbank des Sortierungs gewährleisten müssen, dann ist Ihr Problem weggeht.

Sie können programmatisch den Datenbank-Zeichensatz mit der mysql_set_charset Funktion ändern.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top