2010-07-01 3 views
0

Я конвертирую свой php-массив в json, используя json_encode, Чем я записываю эти данные json в мою базу данных. Пока json_encode кодирует мои данные, он также преобразует строки в utf8, это изменяет специальные символы на что-то вроде '/ u011f 'или'/u0131 '. Но когда я записываю эти преобразованные данные в базу данных mysql, обратные косые черты исчезают в поле, поэтому, когда я возвращаю эти данные, html не может корректно отображать символы.Задача Json-Mysql Charset

Что делать, чтобы поддерживать обратную косую черту.

+0

Убедитесь, что вы всегда используете mysql_real_escape_string или pdo/mysqli подготовленные операторы. Это действительно важно, чтобы избежать атак SQL-инъекций, а также других проблем. – JAL

ответ

1

Используйте mysql_real_escape_string() для вывода строковых данных перед отправкой базы данных, чтобы mysql не обрабатывал обратную косую черту в качестве escape-символа.

2

Используйте mysql_real_escape_string, чтобы избежать строки перед ее вставкой в ​​базу данных.

escapedJSON = mysql_real_escape_string(jsonEncodedString);