как кодировать специальный символ с помощью функции php - PullRequest
1 голос
/ 01 июля 2011

мой оригинальный текст 1 1/2"w x 1/2"h, но в базе данных он выглядит как 1 1/2â€w x 1/2â€h.

Я использую полоски ().

Но я все еще не могу преобразовать зашифрованную строку.

Спасибо всем

Я только что добавил в HTML.

<meta http-equiv="content-type" content="text/html; charset=utf-8" />

Ответы [ 2 ]

3 голосов
/ 01 июля 2011

Я не знаю, где вы читаете, вы должны использовать stripslashes(), чтобы избежать ввода или вывода базы данных, но эта информация неверна.Вы всегда должны использовать специальный механизм экранирования, предоставляемый вашей библиотекой базы данных.Например, если вы используете PDO , вы можете использовать bindValue () для вставки значений в ваш код SQL.

Как и в случае 1 1/2â€w x 1/2â€h, это выглядит какМногобайтовая строка UTF-8 неверно истолкована как некоторая однобайтовая кодировка (возможно, ISO-8859-1).Похоже, вы либо пытаетесь вписать данные UTF-8 в базу данных Latin1, либо при подключении к базе данных используете неверную кодировку.В первом случае лучшее решение - изменить кодировку вашей БД в соответствии с кодировкой вашего приложения (если ваша СУБД позволяет это делать).Во втором случае вы, вероятно, найдете решение на странице справки PHP для любой вашей библиотеки БД : найдите какой-либо метод для указания кодировки или кодировки соединения.

0 голосов
/ 01 июля 2011

Попробуйте сопоставление UTF-8 (utf8_general_ci) для вашей базы данных, таблиц и столбцов.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...