thinkphp过滤表单表达式的函数
thinkphp有一个函数filter_exp,用于过滤表单中的表达式。
问题是:它过滤什么样的表达式,为什么是$value值等于”or”或”exp”的?
如果不过滤,能否举一个有安全风险的例子?
// 过滤表单中<a>本2文来*源gao($daima.com搞@代@#码(网</a><strong>搞gaodaima代码</strong>的表达式<br />function filter_exp(&$value){<br /> if (in_array(strtolower($value),array('exp','or'))){<br /> $value .= ' ';<br /> }<br />}
——解决思路———————-
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注入的相关知识