`
cuckoosnest
  • 浏览: 103748 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

2009年9月学习phpcms2008 sp2程序源码笔记

阅读更多
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 UTF8 正式版.zip

    1. **说明文档.txt** - 这可能是一个文本文件,包含了关于如何安装、配置和使用PHPCMS 2008 SP2的基本指导和注意事项。 2. **Phpcms2008 安装说明.html** - 这是一个HTML文件,详细介绍了PHPCMS 2008 SP2的安装步骤...

    PHPCMS 2008 SP2 正式版.zip

    PHPCMS 2008 SP2 升级内容: 1、 修正了编辑文章上传图片重复生成图片文件的问题 2、 修正了同一IP 24小时允许的最大上传附件数,超过时,上传图片直接返回错误的路径,uploadfile/ 3、 修正了include/global....

    PHPCMS资源网站源码软件源码下载站网站源码

    在"PHPCMS资源网站源码软件源码下载站网站源码"中,我们可以理解为这是提供PHPCMS源码的下载平台,用于搭建一个专门发布和分享各种软件源码的下载站。这种网站通常会包含以下关键知识点: 1. **网站框架**:PHPCMS...

    phpcms sp2 utf-8版 源码

    本资源提供的是 PHPcms SP2 UTF-8 版本的源码,适合对 PHPcms 感兴趣的学习者进行深入研究。 1. **PHPcms 的核心特性** - **多语言支持**:PHPcms 支持多种语言,包括 UTF-8 编码,便于构建多语言网站。 - **模板...

    PHPCMS资源网站源码软件源码下载站网站源码.rar

    首先,从标题和描述我们可以知道,这个压缩包包含的是PHPCMS的资源网站源码,主要用于创建一个可以供用户下载软件源码的平台。PHPCMS以其模块化设计、易用性和强大的功能著称,使得网站的搭建、管理和维护变得简单...

    PHPCMS2008开发文档,PHPCMS2008开发文档

    开发者可以从文档中了解到PHPCMS2008的模板语言和标签系统,学习如何设计符合自己需求的页面布局和样式。 数据库管理是内容管理系统不可或缺的部分。PHPCMS2008提供了丰富的数据库操作工具,包括数据导入导出、备份...

    phpcms2008内容管理系统源代码

    《phpcms2008内容管理系统源代码解析与应用指南》 phpcms2008是一款基于PHP语言和MySQL数据库的开源内容管理系统,它在中国的网站建设领域中具有广泛的影响力,尤其在构建大型门户网站方面表现出色。这款系统以其...

    phpcms2008帮助文档

    通常,PHPCMS2008的安装流程包括环境配置(如PHP、MySQL的版本要求)、上传源码、创建数据库、运行安装程序等步骤。安装过程中的安全设置,如修改默认管理员账号、设置强壮的密码等,也是不容忽视的重要环节。 文档...

    phpcms2008_gbk_091022

    `phpcms2008_gbk_091022`是一个基于PHP语言开发的网站管理系统,它在2008年9月10日发布了GBK编码的SP2正式版本。这个系统以其强大的功能、灵活的扩展性和易于操作的特性,在当时深受开发者和网站管理员的欢迎。本文...

    phpcms最新版源码

    phpcms最新版源码

    phpcms2008漏洞利用工具

    这很可能是一个用于测试和利用phpcms2008特定漏洞的exploit(利用程序)。通常,这样的工具会包含一系列自动化脚本,可以快速检测系统是否存在已知漏洞,并尝试进行攻击。使用者只需按照一定的步骤运行工具,就可能...

    PHPCMS资源网站源码软件源码下载站网站源码下载.zip

    PHPCMS资源网站源码软件源码下载站网站源码下载.zip

    phpcms2008帮助文档chm格式

    2. **安装步骤**:文档会详细指导用户如何下载phpcms2008源码,然后通过FTP工具上传至服务器。接下来,需要创建数据库并进行数据库导入,最后通过浏览器访问安装向导,完成站点信息、管理员账号等的设置。 3. **...

    phpcms2008模块制作教程

    本教程聚焦于“phpcms2008模块制作”,这是一份面向那些想要深入理解phpcms2008系统结构、进行二次开发的初学者的指南。下面,我们将详细探讨phpcms2008模块制作的相关知识点。 1. **模块概念**:在phpcms2008中,...

    济南好客易行分销平台源码 phpcms2008框架

    【标题】"济南好客易行分销平台源码 phpcms2008框架" ...在深入学习源码的过程中,开发者不仅可以掌握phpcms2008框架的使用,还能了解到多级分销的业务逻辑和实现方式,对于提升自身技能和解决实际问题有着重要的价值。

    phpcms2008 帮助手册

    **phpcms2008帮助手册** `phpcms2008`是一款基于PHP语言开发的开源内容管理系统,主要用于构建企业网站、新闻门户、电子商务平台等。本手册为CHM版,即“ Compiled HTML Help”格式,是Windows操作系统下常用的电子...

    Phpcms2008 产品介绍及其下载

    Phpcms2008是一款基于PHP语言和MySQL数据库开发的内容管理系统(CMS),它在2008年发布,主要用于构建动态网站。作为一款开源工具,Phpcms2008为开发者和网站管理员提供了丰富的功能,以方便快捷地创建、管理和维护...

    PHP和PHPCMS2008的手册

    而PHPCMS2008作为一款成熟的CMS系统,可以极大地提高网站开发的效率,减轻开发者的负担,使他们能更专注于业务逻辑和用户体验的优化。这两本手册的结合,无疑是PHP开发者和PHPCMS使用者的宝贵资源,值得仔细研读和...

    phpcms v9源码

    **phpcms v9 源码详解** **一、phpcms v9 简介** phpcms v9 是一款基于 PHP 和 MySQL 的开源内容管理系统,由国内知名的PHP开发团队开发。该系统以其强大的功能、易用性和高度的可扩展性在众多CMS中脱颖而出,广泛...

Global site tag (gtag.js) - Google Analytics