沃梦达 / IT编程 / 前端开发 / 正文

php – 我应该使用htmlspecialchars或mysql_real_escape_string还是两者

参见英文答案 Do htmlspecialchars and mysql_real_escape_string keep my PHP code safe from injection? 6个我让用户输入一些信息(姓名,出生日期等).然后我必须将这些值插入...

参见英文答案 > Do htmlspecialchars and mysql_real_escape_string keep my PHP code safe from injection?                                    6个
我让用户输入一些信息(姓名,出生日期等).然后我必须将这些值插入数据库.我应该使用mysql_real_escape_string()来防止mysql注入和htmlspecialchars()处理html标签,它们都需要还是其中之一呢?

如果我只使用其中一个,那么哪一个?
如果我应该同时使用两者,那么首先是哪一个,哪一个是最后一个?

解决方法:

Should I use mysql_real_escape_string to prevent the mysql injection

No. Use prepared statements and parameterized queries.这将要求您停止使用过时的mysql_ *库,以支持更现代的东西(如PDO).

and htmlspecialchars to handle the html tags both or one of them can do the work?

使用htmlspecialchars到protect against XSS attacks when,将数据插入到HTML文档中.数据库不是HTML文档. (您可能稍后将数据从数据库中取出以将其放入HTML文档中,这是使用htmlspecialchars的时间).

本文标题为:php – 我应该使用htmlspecialchars或mysql_real_escape_string还是两者