我应该使用php的htmlentities()和pdo来过滤输入和输出转义,以防止xss攻击吗?
答案 0 :(得分:4)
在HTML上下文中输出用户提供的内容时(即在您的网站上显示时),使用htmlentities
(或最好是htmlspecialchars
)。不要进入数据库的HTML转义值,因为那里没有XSS漏洞,您通常希望将原始数据存储在数据库中,并在以后根据需要将其转义。
答案 1 :(得分:0)
在将输入保存到数据库之前,您应该使用htmlentities或htmlspecialchars,因为文本只保存到数据库一次[直到前端有任何编辑选项]但是多次查看,因此您可以节省CPU :)