2011-10-19 70 views
0

有没有办法配置mysql或php,以便在查询时,数据值会自动转义?我读过关于PDO的内容,例如Zend Framework有一些自动完成的数据库适配器 - 但在服务器端,没有任何配置可以避免必须在码?在查询中自动转义数据

感谢,

大卫

回答

1

是不是有可以做,以避免照顾其代码中的任何配置?

不是,没有。这一直是tried - 结果是每个人都讨厌的可怕混乱。

没有“魔术功能”来使查询安全 - 您传递给查询的每个参数都需要以不同的方式进行消毒(如字符串与整数)。有些东西(如动态表和列名称)根本无法进行消毒(甚至不使用数据库库的字符串转义方法),因此您需要将它们与现有表和列的列表进行比较。

使用PDO准备好的语句(或Zend Framework数据库函数,其中AFAIK包装PDO等)是最接近你尽可能少做的事情。

+0

感谢队友为您解释! – David