从MYSQL中删除一堆转义引号

时间:2010-08-04 15:53:46

标签: php mysql escaping stripslashes

我有一个奇怪的 - 我正在将一些数据从一个CMS移植到另一个CMS。两者都在LAMP上运行。

在旧的CMS中,数据已存储,数据库中包含斜杠。

示例:

Hi. Thanks for looking. It\'s \"awesome\".

在旧CMS输出时正确显示:

Hi. Thanks for looking. It's "awesome".

但是在新的CMS中,他们将相同的文本存储为以下内容,并在出现时处理引号:

Hi. Thanks for looking. It's "awesome".

我已经在mysql上直接尝试了replace(),但这只是逃避了引用,它只删除了所有的引号。然后我试着用php将所有数据拉出来,并把它放回去,没有做任何希望斜线会逃脱数据的东西,我会很好,但不是这样的运气 - 这似乎适用于两个中的一个行,但查询被破坏。

有什么想法吗?自从我玩添加/ striplashes等以来已经有一段时间了。

由于

2 个答案:

答案 0 :(得分:1)

在PHP中你必须成功

$data = stripslashes($data);
$data = mysql_real_escape_string($data);

答案 1 :(得分:0)

如果您使用PHP导入您想要执行的数据 -

str_replace("'", "''")

每个条目。

这就是MYSQL escapes strings

的方式