对于提出这样一个菜鸟问题我感到愚蠢,我尝试搜索,但我找到的只是显示如何进行转义的来源,这不是我要问的。
我正在使用PDO向数据库添加内容。结果东西被逃脱了。问题是,当我将这些东西显示给用户时,它会完全显示在数据库中。换句话说,转义的单引号显示为左斜线加上单引号。
我可以在所有转义的字符序列上运行某种查找/替换,但我确信大多数都是“正确”的方法来执行此操作。一种保持安全(或提高安全性)的方法
答案 0 :(得分:5)
然后你做错了。 SQL转义仅用于正确插入数据库而不破坏SQL语法,值以非转义形式存储。只需要将值转义为转换到数据库,值永远不会被永久更改。特别是对于PDO,您根本不需要任何转义。
很可能你开启了魔法引号,这会导致双重逃避现实。请仔细阅读:http://php.net/magic_quotes
答案 1 :(得分:2)