我正在尝试提出一个函数,我可以通过我的所有字符串来消毒.因此,从中输出的字符串对于数据库插入是安全的.但是那里有很多过滤功能我不知道应该使用/需要哪些功能.
请帮我填空:
function filterThis($string) {
$string = mysql_real_escape_string($string);
$string = htmlentities($string);
etc...
return $string;
}
Run Code Online (Sandbox Code Playgroud) 我有点困惑,PHP中有这么多功能,有些使用这个,有些使用它.有些人使用:htmlspecialchars(),htmlentities(),strip_tags()等
哪个是正确的,你们通常使用什么?
这是正确的(建议我更好一个,如果有的话):
$var = mysql_real_escape_string(htmlentities($_POST['username']));
Run Code Online (Sandbox Code Playgroud)
这行可以防止MySQL注入和XSS攻击??
顺便问一下,除了XSS攻击和MySQL注入之外还有其他我需要关注的事情吗?
编辑
总结:
如果我想将字符串插入数据库,我不需要使用htmlentities,只需使用mysql_real_escape_string.显示数据时,使用htmlentities(),是你的意思吗?
总结:
mysql_real_escape_string 插入数据库时使用htmlentities() 在将数据输出到网页时使用htmlspecialchars() 用的时候?strip_tags() 用的时候?addslashes() 用的时候?有人可以填写问号吗?