PHPCMS_整站代码分析讲解

PHPCMS_整站代码分析讲解

ID:44416703

大小:492.51 KB

页数:38页

时间:2019-10-21

PHPCMS_整站代码分析讲解_第1页
PHPCMS_整站代码分析讲解_第2页
PHPCMS_整站代码分析讲解_第3页
PHPCMS_整站代码分析讲解_第4页
PHPCMS_整站代码分析讲解_第5页
资源描述:

《PHPCMS_整站代码分析讲解》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、PHPCMS整站代码分析讲解l[zt]PHP编程2008-11-2922:40阅读23评论0字号:左i小转口:phpchina作者:逆雪寒一、include/common.inc.php

2、UEST,$HTTP_ENV_VARS,$HTTP_POST_VARS,$HTTP_GET_VARS,$http_post_files,$http_cookie_vars);/**把$HTTP_ENV_VARS$HTTP_POST_VARS全局变最设置为NULL因为php4.1.0以上默认以$_POST來替代。unset后防止程序运行在低版本会出现安全等问题。比如变量注入*/set_magic_quotes_runtime(0);〃地球人都知道。关了字符窜入库自动转意比如mynameison*x转成mynam

3、eison'x为了最大的程序性能所以我们关掉吧〜哈哈define('IN_PHPCMS,,TRUE);/**程序入口标记。为什么需要这个东西呢。就好比你进一个小区,保安大哥哥肯定要你签字或是挂个鸟牌证明你是从正门进来的。防止你翻墙进入去偷东西搞破坏。这个入口标记也有这个功能。在这里定义了一个常量IN.PHPCMS为TRUE,然后我在其他程序文件里面检查这个标记。如果不存在或不为真,那么就基本可以肯定你这个家伙是个小偷来的。人可能翻墙进入。但程序怎么翻墙呢。只要在php.ini文件里而激活allow_url_

4、fopen选项,include()就可以包含URL地址了。你想下如果你有个放密码的PHP文件。如果给人家include了以后。你怕不怕。*/dcfine(PHPCMS_ROOT;str_replace(H\M,T,substr(dimame(_HLE_),0,-8)));/**为了程序产品的跨平台。自动获取程序的安装目录路径淀义为PHPCMS_ROOT常量。方便以后程序使用。建议人家都这样做哦*/requirePHPCMS_ROOT.7inckide/global.func.phpr;/**包含全局函数gl

5、obal.func.php文件。里面放了些程序全局都冇需要用的函数.大家看到了吧。常量PHPCMS_ROOT已经发挥作用。这样程序给人家发布到了二级目录下。也不需要人家手动改整站根目录路径了。自己好好理解下。。。。。*/$search_arr=array(M/union/iu,7select/i",'7update/i",7outfile/i",'7or/i");/**("7union/i")这个是正则的写法?不懂正则的自己白度找教程来学。这里不详细说了*/$replace_arr=array('unions

6、elect'/updateoutfileor');/**看这个意思很明了。union:连接两条SQL语句。outfile:主要用來导岀数据库资料到其他介质上。干啥字要定义这两个变量呢?在global.func.php文件(前面已经加载)里而有个函数strip_sql()各位可以看下。functionstrip_sql($string){global$search_arr,$replace_arr;returnis_array($string)?array_map('strip_sqr,$string):pre

7、g_replace($search_arr,$replace_arr,Sstring);}函数里面定义了这两个变量为global全局变量。那么函数里就可以克接使用了。先讲解下这个函数吧。顾名思义这个函数是过滤字符窜里而的SQL语句使得关键的SQL语句单词失效。主要过滤那些SQL语句呢。主要是这几个关键字:unionselectupdateoutfileor等。因为这几个SQL字是极度容易在$_6£丁传输中给截注.这个两数写得实在精妙。is_array來判断Sstring是否为数纽。如果是就array_map(

8、)函数来递归过滤Sstring数组里面的每一个单元.每个单元是一个字符窜吧?当递归调用strip_sql()以后is_airay()判断Sstring肯定为假了,因为Sstring已经不是数组而是字符窜。所以执行preg_replace()函数。这个函数很好理解了。就是替换了。*/$_POST=s(rip_sql($_POST);$_GET=strip_sql($_GET);$_COOKIE=str

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。