Discuz common.inc.php 部分解释-不断更新
2010-11-24 16:45
363 查看
//设置禁止所有错误报告
error_reporting(0);
//禁止使用溢出字符转义
set_magic_quotes_runtime(0);
//获取时间
$mtime = explode(' ', microtime());
//构造创建时间
$discuz_starttime = $mtime[1] + $mtime[0];
//
define('SYS_DEBUG', FALSE);
define('IN_DISCUZ', TRUE);
define('DISCUZ_ROOT', substr(dirname(__FILE__), 0, -7));
define('MAGIC_QUOTES_GPC', get_magic_quotes_gpc());
//!defined('CURSCRIPT') && define('CURSCRIPT', '');
//如果php的版本少于4.1 进行赋值处理
if(PHP_VERSION < '4.1.0') {
$_GET = &$HTTP_GET_VARS;
$_POST = &$HTTP_POST_VARS;
$_COOKIE = &$HTTP_COOKIE_VARS;
$_SERVER = &$HTTP_SERVER_VARS;
$_ENV = &$HTTP_ENV_VARS;
$_FILES = &$HTTP_POST_FILES;
}
if (isset($_REQUEST['GLOBALS']) OR isset($_FILES['GLOBALS'])) {
exit('Request tainting attempted.');
}
//引入基础函数
require_once DISCUZ_ROOT.'./include/global.func.php';
//判断访问的是spider吗? 如果是,插入记录,IS_ROBOT = true
getrobot();
if(defined('NOROBOT') && IS_ROBOT) {
exit(header("HTTP/1.1 403 Forbidden"));
}
//动态获取所有参数数据
foreach(array('_COOKIE', '_POST', '_GET') as $_request) {
foreach($$_request as $_key => $_value) {
$_key{0} != '_' && $$_key = daddslashes($_value);
}
}
//将收录 的 File请求,如果是数组,将变成key-value数组
if (!MAGIC_QUOTES_GPC && $_FILES) {
$_FILES = daddslashes($_FILES);
}
//初始化$charset等参数为''
$charset = $dbs = $dbcharset = $forumfounders = $metakeywords = $extrahead = $seodescription = $mnid = '';
//初始化$plugins等参数为数组
$plugins = $admincp = $scriptlang = $forum = $thread = $language = $jsmenu = $actioncode = $modactioncode = $pluginclasses = $hooks = $lang = array();
$_DCOOKIE = $_DSESSION = $_DCACHE = $_DPLUGIN = $advlist = array();
//读取所有基本配置
require_once DISCUZ_ROOT.'./config.inc.php';
if($urlxssdefend && !empty($_SERVER['REQUEST_URI'])) {
// 解utf8码uri路径
$temp = urldecode($_SERVER['REQUEST_URI']);
if(strpos($temp, '<') !== false || strpos($temp, '"') !== false)
exit('Request Bad url');
}
//接收论坛的cookies_$_DCOOKIE数组处理
$prelength = strlen($cookiepre);
foreach($_COOKIE as $key => $val) {
if(substr($key, 0, $prelength) == $cookiepre) {
$_DCOOKIE[(substr($key, $prelength))] = MAGIC_QUOTES_GPC ? $val : daddslashes($val);
}
}
//清除以下 所有的变量 cookies别名的前序 , 请求 ,
unset($prelength, $_request, $_key, $_value);
error_reporting(0);
//禁止使用溢出字符转义
set_magic_quotes_runtime(0);
//获取时间
$mtime = explode(' ', microtime());
//构造创建时间
$discuz_starttime = $mtime[1] + $mtime[0];
//
define('SYS_DEBUG', FALSE);
define('IN_DISCUZ', TRUE);
define('DISCUZ_ROOT', substr(dirname(__FILE__), 0, -7));
define('MAGIC_QUOTES_GPC', get_magic_quotes_gpc());
//!defined('CURSCRIPT') && define('CURSCRIPT', '');
//如果php的版本少于4.1 进行赋值处理
if(PHP_VERSION < '4.1.0') {
$_GET = &$HTTP_GET_VARS;
$_POST = &$HTTP_POST_VARS;
$_COOKIE = &$HTTP_COOKIE_VARS;
$_SERVER = &$HTTP_SERVER_VARS;
$_ENV = &$HTTP_ENV_VARS;
$_FILES = &$HTTP_POST_FILES;
}
if (isset($_REQUEST['GLOBALS']) OR isset($_FILES['GLOBALS'])) {
exit('Request tainting attempted.');
}
//引入基础函数
require_once DISCUZ_ROOT.'./include/global.func.php';
//判断访问的是spider吗? 如果是,插入记录,IS_ROBOT = true
getrobot();
if(defined('NOROBOT') && IS_ROBOT) {
exit(header("HTTP/1.1 403 Forbidden"));
}
//动态获取所有参数数据
foreach(array('_COOKIE', '_POST', '_GET') as $_request) {
foreach($$_request as $_key => $_value) {
$_key{0} != '_' && $$_key = daddslashes($_value);
}
}
//将收录 的 File请求,如果是数组,将变成key-value数组
if (!MAGIC_QUOTES_GPC && $_FILES) {
$_FILES = daddslashes($_FILES);
}
//初始化$charset等参数为''
$charset = $dbs = $dbcharset = $forumfounders = $metakeywords = $extrahead = $seodescription = $mnid = '';
//初始化$plugins等参数为数组
$plugins = $admincp = $scriptlang = $forum = $thread = $language = $jsmenu = $actioncode = $modactioncode = $pluginclasses = $hooks = $lang = array();
$_DCOOKIE = $_DSESSION = $_DCACHE = $_DPLUGIN = $advlist = array();
//读取所有基本配置
require_once DISCUZ_ROOT.'./config.inc.php';
if($urlxssdefend && !empty($_SERVER['REQUEST_URI'])) {
// 解utf8码uri路径
$temp = urldecode($_SERVER['REQUEST_URI']);
if(strpos($temp, '<') !== false || strpos($temp, '"') !== false)
exit('Request Bad url');
}
//接收论坛的cookies_$_DCOOKIE数组处理
$prelength = strlen($cookiepre);
foreach($_COOKIE as $key => $val) {
if(substr($key, 0, $prelength) == $cookiepre) {
$_DCOOKIE[(substr($key, $prelength))] = MAGIC_QUOTES_GPC ? $val : daddslashes($val);
}
}
//清除以下 所有的变量 cookies别名的前序 , 请求 ,
unset($prelength, $_request, $_key, $_value);
相关文章推荐
- DISCUZ在win2003环境下 Unable to access ./include/common.inc.php in... 的问题终极解决方案
- DISCUZ在win2003环境下 Unable to access ./include/common.inc.php in... 的问题终极解决方案
- PHP部分---字符串处理(文中例子不断更新);
- Discuz security.inc.php 代码解释
- 织梦dedecms 一更新网站以后common.inc.php文件权限自动变为777的问题
- 史上第一强:Discuz!源代码分析系列(1)--./include/common.inc.php(转载)
- Discuz之轻松理解下common.inc.php
- Discuz!7.2 common.inc.php 学习
- (转)史上第一强:Discuz!源代码分析系列(1)--common.inc.php
- (转)史上第一强:Discuz!源代码分析系列(2)--common.inc.php
- Discuz!源代码分析系列(1)-./include/common.inc.php
- Discuz!源代码阅读笔记之common.inc.php文件【1】
- 第一天,仔细学习了下:common.inc.php(Discuz6.1.0核心文件)01
- discuz代码分析一 从common.inc.php开始
- 第二天,仔细学习了下:common.inc.php(Discuz6.1.0核心文件)02
- phpmyadmin安装时提示:Warning: require_once(./libraries/common.inc.php)错误解决办法
- php表单各项功能汇总....不断更新.....
- 各公司技术面试题汇总(Java,.NET,C,C++,SQL,PHP)不断更新中……
- PHPCMS2008源码浅析-common.inc.php PHPCMS20008二次开发
- Discuz!5的PHP代码高亮显示插件(黑暗中的舞者更新)