thinkphp过滤表单表达式的函数
thinkphp有一个函数filter_exp,用于过滤表单中的表达式。
问题是:它过滤什么样的表达式,为什么是$value值等于"or"或"exp"的?
如果不过滤,能否举一个有安全风险的例子?
// 过滤表单中的表达式<br />function filter_exp(&$value){<br /> if (in_array(strtolower($value),array('exp','or'))){<br /> $value .= ' ';<br /> }<br />}
Copy after login
------解决思路----------------------http://doc.thinkphp.cn/manual/query.html
可查看thinkphp表达式查询,以及具体用法
危害:可以查看php的sql注入章节。
------解决思路----------------------主要还是为了防止SQL注入的
eg:
UPDATE user SET password='MD5($pwd)' WHERE id=''
OR username='admin'建议去看看php有关SQL注入的相关知识