1.
inlcude/global.func.php
中的
filter_xss() 方法,扩充[
b]strip_tags()[/b]方法,把不允许的attribute都删除。常用于前台评论、留言板等用户可以提交文本数据的地方,把非法的html标签和javascript属性清除。
function filter_xss($string, $allowedtags = '', $disabledattributes = array('onabort', 'onactivate', 'onafterprint', 'onafterupdate', 'onbeforeactivate', 'onbeforecopy', 'onbeforecut', 'onbeforedeactivate', 'onbeforeeditfocus', 'onbeforepaste', 'onbeforeprint', 'onbeforeunload', 'onbeforeupdate', 'onblur', 'onbounce', 'oncellchange', 'onchange', 'onclick', 'oncontextmenu', 'oncontrolselect', 'oncopy', 'oncut', 'ondataavaible', 'ondatasetchanged', 'ondatasetcomplete', 'ondblclick', 'ondeactivate', 'ondrag', 'ondragdrop', 'ondragend', 'ondragenter', 'ondragleave', 'ondragover', 'ondragstart', 'ondrop', 'onerror', 'onerrorupdate', 'onfilterupdate', 'onfinish', 'onfocus', 'onfocusin', 'onfocusout', 'onhelp', 'onkeydown', 'onkeypress', 'onkeyup', 'onlayoutcomplete', 'onload', 'onlosecapture', 'onmousedown', 'onmouseenter', 'onmouseleave', 'onmousemove', 'onmoveout', 'onmouseover', 'onmouseup', 'onmousewheel', 'onmove', 'onmoveend', 'onmovestart', 'onpaste', 'onpropertychange', 'onreadystatechange', 'onreset', 'onresize', 'onresizeend', 'onresizestart', 'onrowexit', 'onrowsdelete', 'onrowsinserted', 'onscroll', 'onselect', 'onselectionchange', 'onselectstart', 'onstart', 'onstop', 'onsubmit', 'onunload'))
{
if(is_array($string))
{
foreach($string as $key => $val) $string[$key] = filter_xss($val, ALLOWED_HTMLTAGS);
}
else
{
$string = preg_replace('/\s('.implode('|', $disabledattributes).').*?([\s\>])/', '\\2', preg_replace('/<(.*?)>/ie', "'<'.preg_replace(array('/javascript:[^\"\']*/i', '/(".implode('|', $disabledattributes).")[ \\t\\n]*=[ \\t\\n]*[\"\'][^\"\']*[\"\']/i', '/\s+/'), array('', '', ' '), stripslashes('\\1')) . '>'", strip_tags($string, $allowedtags)));
}
return $string;
}
代码中的 ALLOWED_HTMLTAGS 是不是改成 $allowedtags 更好?
2.
include/db_mysql.class.php
function escape($string)
{
if(!is_array($string)) return str_replace(array('\n', '\r'), array(chr(10), chr(13)), mysql_real_escape_string(preg_replace($this->search, $this->replace, $string), $this->connid));
foreach($string as $key=>$val) $string[$key] = $this->escape($val);
return $string;
}
此方法对需要进行数据库操作的数组和字符串有用!
分享到:
相关推荐
PHPCMS 2008 SP2 升级内容: 1、 修正了编辑文章上传图片重复生成图片文件的问题 2、 修正了同一IP 24小时允许的最大上传附件数,超过时,上传图片直接返回错误的路径,uploadfile/ 3、 修正了include/global....
PHPCMS资源网站源码软件源码下载站网站源码
PHPCMS 2008 SP2 正式版,本次提供的是UTF8版本,如需要GBK版本和阅读该版本的升级特性,请点这里:http://www.veryhuo.com/down/html/8355.html
phpcms2008标签调用方法、各种调用
学习phpcms时遇到各种问题,把总结的经验都分享给大家,都一起进步吧。分享才能进步...
PHPCMS2008开发文档,PHPCMS2008开发文档,PHPCMS2008开发文档,PHPCMS2008开发文档
phpcms最新版源码
phpcms2008漏洞利用工具 phpcms2008漏洞利用工具
我认为是中国phpcms2008最领先的网站管理系统,可快速做大型门户网站! 只要解压,里边的东西放入根目录下边即可 用户名:admin 密码:admin
济南好客易行分销平台源码 phpcms2008框架
phpcms2008 帮助手册 CHM版
学习phpcms必备 有兴趣的朋友研究下吧
phpcms v9源码,可二次开次,官方版本
phpcms内容管理系统(PhpCms)是国内最最流行的CMS解决方案之一,居于现时最流行的LAMP架构开发,具有很强的可扩展性,并且完全开放源代码。这是phpcms2008 用户手册
Phpcms2008采用MVC设计模式实现了程序与模板分离,不仅继续支持{tag_焦点新闻}格式的中文标签,还支持万能自由标签,轻松调用Phpcms之外的数据库信息,比如论坛、博客、商城。碎片功能融合了2007版里的自由调用和...
两本关于PHP和PHPCMS2008的手册。
PHPCMS V9 整站源码包是其官方网站新推出的UTF-8的源码包,希望对大家有用。
phpcms2008sp2正式版 网站管理系统 php源码
PHPCms2008数据库设计结构文档详解
全面介绍phpcms2008安装和使用方法,让读者进一步的认识phpcms2008