【发布时间】:2011-07-05 23:41:54
【问题描述】:
我遇到了一个问题,我认为我在 MySQL 中的插入语句弄乱了输入数据库的字符串。
我在 PHP 代码中有这样的插入语句:
$sql = 'insert into my_table ( numeric_id , string_value )
values ( '.$some_number.' , "'.$some_text.'" )';
当后来我从数据库中获取$some_text 时,它会弄乱字符串,例如
don\'t 而不是不要,并在输出中添加 \r\n 之类的内容。
知道为什么会发生这种情况以及我应该改变什么吗?
【问题讨论】:
-
最好的办法是同时显示用于插入和输出数据的代码,以及输出的具体内容。
-
顺便说一句,您的代码受到Bobby Tables attack 的影响。
-
您可能启用了魔术引号。
-
@CanSpice 恰恰相反,这是这部愚蠢漫画的后果。
-
大家好,我已经禁用了魔术引号。