【发布时间】:2013-04-25 06:53:05
【问题描述】:
首先,我知道人们想要使用存储过程,以便他们重用查询并处理转义。但是,我读过很多开发人员说mysqli_real_escape_string 不能 100% 防止 SQL 注入。有人可以举个例子吗?
根据我对该主题的有限知识,我会说mysqli_real_escape_string总是适用于字符串,但对于数值,除非您检查数字是 int、float、双倍等。
编辑:我忘了添加一些关键的东西:假设字符集是 UTF8 并且 mysqli_set_charset 已被相应地调用。我见过的唯一注入依赖于少数字符集(都不是 UTF8)。
【问题讨论】:
-
链接的答案对我来说太浮华了。