我创建了一个触发器,以避免在我的MySQL表中输入恶意代码。此表链接到某些在线表格和后续报告显示。
这是表结构:
CREATE TABLE `test` (
`name` varchar(100) NOT NULL,
`age` int(11) NOT NULL,
`address` varchar(100) NOT NULL
)
CREATE TRIGGER `tst` BEFORE INSERT ON `test`
FOR EACH ROW begin
if new.name like '%<%'
then
signal sqlstate '45000';
end if;
end
这是否会阻止表格字段中的代码注入/ XSS&#34; name&#34; ?
答案 0 :(得分:0)
是的。虽然这不是最好的方法......你使用
REPLACE(new.name,"<","<")
触发器中的。相反,你使用任何服务器端脚本来做这个...像php“htmlentities”