我使用PHP构建了一个包括表单的Web应用程序,并将用户中的数据注册到我的MySQL数据库中。
在注册之前,我使用过滤器来清理一些输入。例如,名称字段仅接受普通字母,或者年龄字段仅接受整数。
当我显示数据时,我必须对其进行转义以防XSS,但是在这种情况下,包含年龄的数据是否危险?根据数据库,它可以是整数,为什么还要对其进行转义?
对于名称数据,根据数据库,其类型为CHAR,因此可能很危险。我过滤了现在安全吗?还是我必须想象最坏的情况? (我的数据库可能已损坏?)
如果在我的两个示例中必须转义,为什么我必须过滤输入?