htmlspecialchars函数与mysql_real_escape_string函数
发布于:2022-01-17 09:50:54
#1 燃烧战车
使用htmlspecialchars函数还用得着mysql_real_escape_string函数防止注入吗
2010-10-29 15:38:53
#2 jake
两者作用不同:
htmlspecialchars是将HTML转换,避免XSS类攻击,但是用于防止SQL注入就不太足够了。
mysql_real_escape_string是防止注入攻击的。
http://php.net/manual/en/function.mysql-real-escape-string.phphttp://php.net/manual/en/function.htmlspecialchars.php
2010-10-29 15:53:10
#3 燃烧战车
回复 2 jake 过滤引号之类的特殊字符不就可以了吗?
htmlspecialchars不就可以过滤单引号吗
2010-10-29 16:00:17
#4 jake
回复 jake
过滤引号之类的特殊字符不就可以了吗? 不就可以过滤单引号吗 ...
燃烧战车 发表于 2010-10-29 16:00 
如果从这个角度而言的话,str_replace或者是正则替换也是可以代替上面两个函数的。这里说的不是它们能够做什么,而是它们本来是用来做什么的。
2010-10-29 16:05:37
#5 燃烧战车
回复 4 jake 谢谢杰克的解答,可是htmlspecialchars与mysql_real_escape_string一起用的话这是不是会重复?例如单引号的过滤,首先我对防注入的经验就是转义引号,还有什么技巧可以注入吗?
2010-10-29 16:12:51
#6 jake
不重复,可以直接试试就行。
2010-10-29 16:21:27
#7 燃烧战车
回复 6 jake 我明白了,谢谢你耐心的解答!{:2_31:}
2010-10-29 16:24:08