【问题标题】:Json - Mysql Charset ProblemJson - Mysql 字符集问题
【发布时间】:2011-03-10 18:10:07
【问题描述】:

我使用 json_encode 将我的 php 数组转换为 json,然后我将此 json 数据记录到我的数据库中。当 json_encode 对我的数据进行编码时,它还将字符串转换为 utf8,这会将特殊字符更改为类似 '/u011f' 或 '/ u0131' 。但是当我将此转换后的数据写入mysql数据库时,反斜杠在字段中消失了,所以当我取回这些数据时,html无法正确呈现字符。

我应该怎么做才能保留反斜杠。

【问题讨论】:

  • 确保你总是使用 mysql_real_escape_string 或 pdo/mysqli 准备好的语句,实际上。这对于避免 SQL 注入攻击以及其他问题非常重要。

标签: php mysql json utf-8


【解决方案1】:

在发送数据库之前使用mysql_real_escape_string()转义字符串数据,这样mysql就不会将反斜杠视为转义字符。

【讨论】:

    【解决方案2】:

    在将字符串插入数据库之前,使用 mysql_real_escape_string 对字符串进行转义。

    escapedJSON = mysql_real_escape_string(jsonEncodedString);
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-11-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-04-05
      • 2014-03-24
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多