关于数据存储/ MYSQL的问题

时间:2013-11-07 04:14:23

标签: php pdo sql-injection bbcode

1。过滤器
我使用PDO并想知道它是否仍然是必要的潜在转义字符,如('或''=')
已经阅读了很多,有些人说PDO足以阻止SQL注入

2。 BB代码
在文本字段中,htmlspecialchars是不显示html格式的最佳选择吗?

由于

2 个答案:

答案 0 :(得分:1)

  1. 仅PDO是不够的。准备好的语句或转义是正确的方法,它们可以访问您使用的方法。请参阅this question
  2. BBCode不是HTML。如果您使用的是BBCode,则不需要htmlspecialchars

答案 1 :(得分:0)

  

如果仍然必要的潜在转义字符,如('或''=')

事实上,对于'or'=等“危险”字符的转义,永远不会

  

PDO足以阻止SQL注入

PDO本身不做任何保护。它是准备好的声明,它使用占位符作为查询中保证安全的每个动态数据。

对于PDO提供的预准备陈述未涵盖的案例,请使用safeMysql或手动设置查询部分并将其列入白名单。