1

每次我将章程“'”放入数据库时​​,我都会在mysql数据库中保存html代码,它会更改为“/”。

示例:类似的东西

<p>That's my name</p>

保存后是这样的:

<p>That\'s my name</p>

我能做些什么?谢谢大家

4

3 回答 3

4
  • 使用参数化查询来转义进入数据库的数据
  • 不使用其他任何东西来转义进入数据库的数据(否则您将使用此问题进行双重转义)
    • 不使用mysql_real_escape_string
    • 不使用addslashes
    • ETC
  • 不要逃避来自数据库的数据(因为这会导致这个问题)
  • 确保魔术引号被禁用(因为打开它们会逃避数据进出数据库并导致此问题)。
于 2013-08-23T09:54:54.597 回答
2

您在代码中使用了诸如转义函数之类的 addlashes。

addslashes()— 带斜杠的引号字符串 - http://php.net/manual/en/function.addslashes.php

stripslashes()— 取消引用带引号的字符串 - http://php.net/manual/en/function.stripslashes.php

于 2013-08-23T10:07:35.800 回答
0

使用stripslashes从 HTML 数据中删除 '\'。实际上 (') 用于在 MySql 中定义字符串,因此它转义它(通过将 \ 放在前面)以避免任何无意的使用。

于 2013-08-23T10:03:45.443 回答