创力系统首页运行分析

近来在使用创力的CMS系统(V4.2)构建一个网站,发现要改的东东挺多,就花了点时间研究了一下网站源代码,公示如下,希望对各位看官有用!

首页Index.asp文件运行分析如下:

 

 

 

<!--#include file="Conn.asp"-->
<!--该文件中完成:
    1、设置页面缓冲(response.buffer=true)
 2、创建对象实例DB和CL(对应的类定义在inc/Cl_ClsSysTem.asp文件中)。
    1)、对象DB为Cls_DataBase的一个实例,仅用来完成指定数据库的连接
      (通过给ConnValue赋值-连接字符串,调用方法OpenConnection来完成)。
    2)、对象CL为Cls_CMSSysTem的一个实例,创建CL对象时将触发Cl_ClsSysTem.asp文件中
        Cls_CMSSysTem类的初始化过程,该过程完成网站运行时相关参数设置。其中主要设置
        的一个变量为CacheName,该变量将作为缓存技术实现中的各缓存变量的基本构造变量。
    3)、另两个重要的对象Template在包含Cl_ClsTempLate.asp文件时创建。
                        PageData在包含Cl_ClsPage.asp文件时创建。
 3、定义网站各种基本常量(其中SysTemVersion的值
                          决定是否包含商城、影视模块功能,
        其值0为 "普及版"或"免费版",
        1为 "个人版",2为"标准版",
        3为"专业版",4为"高级版",大于10为"高级专用版"。
    4、设置数据库连接字符串-->
<!--#include file="Inc/Cl_Const.asp"-->
<!--Cl_Const.asp中包含有Cl_ClsSysTem.asp、Cl_ClsTempLate.asp、Cl_ClsPage.asp文件
    1、Cl_ClsSysTem.asp文件为系统中最重要的类定义文件,定义有Cls_CMSSysTem和Cls_DataBase
    两个类。包含该文件时,同时执行了一个常量定义操作(ClCMS_Version常量,为CMS版本信息)。
 2、Cl_ClsTempLate.asp文件中定义有Cls_Template类。并在该文件被包含时执行文件中的对象
    实例化命令创建对象Template。并触发类初始化事件,该事件中主要完成VBscript中正则表达式
    对象的实例化创建,对象名为regEx。
 3、Cl_ClsPage.asp中定义有类Cls_PageData,包含该文件时将实例化该类,生成PageData对象。
    Cl_Const.asp文件除包含以上三个重要的文件外,还将完成文章ID、栏目ID等变量初始化工作。
同时,通过调用Cl.Get_WebSetting过程(CL为Cl_ClsSysTem.asp文件中Cls_CMSSysTem的一个实例)。
该过程 将读取数据库中CL_setup表中的字段信息,该信息包括网站的基本设置,如版本、上传文件
夹等。读出的信息保存在Webinfo数组变量中。
    同时,在该过程中通过调用Load_Language、Load_ChannelList、Load_ClassList、Load_SpecialList、
Load_UserGroupList过程(均为Cl_ClsSysTem.asp文件定义的类方法),构造相应的XMLDOM对象以存储从
XML文件或数据库中读取出来的信息。这些信息包括频道、栏目、专题设置等,将以Application全局变量的形式保存在缓存中,供后续使用。-->
<!--#include file="Inc/Cl_Function_Public.asp"-->
<!--#include file="Inc/Cl_Function_Article.asp"-->
<!--#include file="Inc/Cl_Function_Soft.asp"-->
<!--#include file="Inc/Cl_Function_Photo.asp"-->
<!--#include file="Inc/Cl_Function_Movie.asp"-->
<!--#include file="Inc/Cl_Function_Product.asp"-->
<!--以上几个文件中包含有相应类型频道的专用标签对应的函数或过程定义,如/Cl_Function_Article.asp
    中包含有showpicarticle、showarticle等标签的定义。-->
<%
Dim ChannelID
ChannelID=0
Call Cl.Get_ChannelSetting(ChannelID)
Rem Get_ChannelSetting方法中将通过调用Load_ChannelSetting方法创建一个Channel对
Rem 象,该对象为此前包含文件时创建的xmldom对象(以Application公共变量的形式存在
Rem 于缓存中)的一个子节点对象。之后将这一对象相关节点中数据(频道基本设置值)读
Rem 取出来放在各变量中。
if Cl.IsCreateHtml=1 Then
 Rem 定时生成首页(本部分暂不分析了)
 Dim CurrentHour,IndexFileUrlStr
 CurrentHour  = Hour(Now())
 IndexFileUrlStr = Cl.WebDir & Cl.HtmlDir & "Index."&Cl.CreateFileExt
 If InStr(","&Cl.Web_Info(17)&",",","&CurrentHour&",")>0 Then
  Cl.Name = "CreateIndex"
  If InStr(","&Cl.value&",",","&ChannelID&"_"&CurrentHour&",")=0 Then
  PageData.Web_Index
  TempStr=Template.ReplaceAllFlag(TempStr)
  Cl.MakeHtml TempStr,IndexFileUrlStr
  Cl.Name = "CreateIndex"
  Cl.Value= Cl.Value & ","&ChannelID&"_" & CurrentHour
  End If
 End If
 Response.redirect(IndexFileUrlStr)
End If
PageData.Web_Index
Rem 在Web_Index方法中通过调用Template.Load,读取数据库Cl_Css表中的CSS定义和Cl_Template表
Rem 中的模版代码,最终生成的TempStr中为包含有标签的首页html代码。

Response.write Template.ReplaceAllFlag(TempStr)
Rem ReplaceAllFlag方法将包含有标签的首页html代码中的标签替换成浏览器能处理的变量值及
Rem Cl_Function_Public.asp、Cl_Function_Article.asp、Cl_Function_Soft.asp、Cl_Function_Photo.asp
Rem 、Cl_Function_Movie.asp、Cl_Function_Product.asp中定义的函数。

CloseAllObj
%>

创力网站管理系统》英文全名《CreateLive CMS》以下简称“《Cl CMS》”:<br>是北京今日学易科技有限公司基于ASP技术开发的网站管理系统,是一个经过完善设计并适用于各种服务器环境的易用、安全、高效、快速、优秀的网站解决方案。《Cl CMS》后台管理方便、易懂、易用、人性化,对操作人员技术要求低,没有建站知识的操作人员都可轻松进行管理。《Cl CMS》继续ASP开源之路,稳定的核心程序,对于有网站设计知识和程序爱好者可以随心所欲进行修改,方便建立具有自已特色的站点。因此《Cl CMS》能适合政府、机关、团队、学校、企业、个人等建立网站和网络工程的需求。<br><br>《Cl CMS》自v1.0发布以来,以安全、快速见称。历经v2.0、v3.0,再凭着丰富开发经验,和不断创新的精神,经过一年的努力,打造了全新的《Cl CMS v4.0》。《Cl CMS v4.0》集成了所有《Cl CMS》旧版本的优点。而且功能不断增强。《Cl CMS v4.0》部分采用层和AJAX技术,使易用性、人性化方面提到很大提升。<br><br>运行速度与效率:<br>代码进行全面重整及优化,清除冗余及垃圾代码,清除大部分缓存,部分采用XML缓存,运行速度更快、郊率更高。<br><br>全静态HTML文件生成:<br>可将站点首页、频道首页、各栏目、以及每个内容页都生成静态HTML文件,大大提高浏览速度及搜索量。<br>HTML生成各频道有14种生成文件存放结构选择,5生成文件命名形式选择,可随意定生成的扩展名,一切更可能的根据您的喜好DIY。<br>同时将各频道导航、栏目导航、广告等实行JS生成,并调用,更改后并自动刷新JS,不必再全部重新生成HTML。<br><br>无限频道复制功能:<br>可无限复制文章、下载、图片、影视等模版,复制出来的频道,完全独立设置,独立模版。<br><br>各频道完全独立的强大JS功能:<br>强大的Js设置,采用标签式管理,可自定义显示内容及HTML代码,让您非常容易的做出自己个性的Js。<br>同时,Js每天会自动刷新,让您免去了每次都要进后台点刷新Js的烦恼。<br>再配合无限频道复制,做一个自己个性的大站已不是梦想。<br><br>系统安全:<br>CLCMS以安全为基础,密码采用MD5加密,保证用户资料安全,程序代码中设计周密,可自动屏蔽恶意攻击代码,更集成防SQL注入程序。从而可全面防止各种SQL注入攻击手段,并进行记录在案,保证了系统的安全和稳定运行。更详细的管理事件记录,管理员每一步后台操作都记录在案。同时官方不断的更新,安全无后顾之忧!<br><br>模板化体系:<br>界面和程序分离,所有模块均通过标签调用,集成类同Macromedia Dreamweaver<br>一样简单的可视模板编辑方式,修改模板容易、快捷。<br><br>数据管理:<br>提供强大的数据备份和恢复功能。可以在线备份、恢复、压缩数据库。<br>查看系统空间占用情况、系统初始化、查看服务器信息及到在线直接执行SQL语句。 <br><br>CreateLive CMS v4.2 What's New<br>1,修正跨频道移动后,连接地址不变<br>2,修正{$ChannelDir}等标签不随频道变换<br>3,修正点击数JS调用不显示<br>4,修正统计调用频道调用标签错误问题<br>5,改进统计调用,防止调用配置丢失<br>6,修正SQL版消费记录查询错误<br>7,修正SQL版自定义字段错误<br>8,修正发送邮件内容为空<br>9,使用纯真QQWry IP数据库<br>10,修复用户后台退稿错误<br>11,修正采用年月方式生成HTML后栏目连接错误<br>12,改进点击数调用方式<br>13,改进JS代码调用<br> a.单独设立一个JS调用管理模块<br> b.新增JS分类功能,避免JS过多时难以查找<br> c.新增动态JS设置,可设置刷新时间(针对某些JS需要定期更新问题)<br>14,提供财付通在线支付接口<br>15,修正几处SQL注入注入漏洞<br> a.User_Comment.asp<br> b.User_ConsumeLog.asp<br> c.Cl_ClsCount.asp<br>16,修正频道选择模版后不记忆问题<br>17,增加FlashGet/讯雷下载联盟<br>18,修正了采集不能倒序采集的问题<br>19,提供充值卡及转账功能<br><br><br>CreateLive CMS v4.1 What's New<br>1、修复JS调用代码图片路径错误<br>2,修复需要权限的文章生成HTML后内容无法调用问题<br>3,修正文章上一篇及下一篇相同问题<br>4,修正文章生成HTML后,扣点连接错误问题<br>5,修正留言回复用户无法查看问题<br>6,修正游客留言经管理员编辑后留言用户为管理员问题<br>7,修正文章及留言正文回车不换行问题<br>8,修复影视频道不能播放FLASH<br>9,修正每日更新数据不自动更新问题<br>10,改进了模版缓存,减少模版缓存占用<br>11,改进模版选择,方便每个频道、栏目及内容页设为不同模版<br>12,修复后台添加的用户提示密码错误问题<br>13,修复UBB回车不换行问题<br>14,修复部分UBB不识别问题<br>15,修正友情连接无LOGO时显示图片路径问题<br>16,增加栏目连接调用标签{$GetClassLinkUrl(ClassID)}<br>17,修复同时调用多个【Cl_Loop】标签出错问题<br>18,修正栏目批量设置出现JS错误<br>19,修复批量添加图片错误问题<br>20,修复用户后台关闭左边管理菜单错误问题<br>21,主类文件及个别文件加入了对明经插件的支持<br>22,统计调用采用动态JS方式,并结合在线及访问量。后台可添加、修改调用样式。<br>23,修复自定义页不支持自定义标签问题<br>24,发表评论增加验证码
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值