我正在建立一个测验网站,我存储了一些变量
(每个问题后$_SESSION
s中的回答时间,用户选择的答案选项等等 - 我只有在用户完成测验后才将这些统计数据放入数据库中。
我已实施了一些if
来检查这些$_SESSION
变量是否为数字(is_numeric()
)。我也验证了长度(strlen()
)等等。
real_escape_string()
存储它们之前就足够了
在MySQL?答案 0 :(得分:9)
不,因为你自己设置它们。
除非你直接从用户输入中推断出它们,否则适用于每一位用户输入的完全相同的规则都适用。
$_SESSION
变量没有什么特别之处。当您从用户收到用户输入时,无论是将其存储在数据库,会话等中,都需要清理用户输入。
像JPod建议的那样 - 在执行SQL查询时 - 始终使用准备好的查询来缓解SQL注入。