<?php
/**
* [Discuz!] (C)2001-2099 Comsenz Inc.
* This is NOT a freeware, use is subject to license terms
*
* $Id: tools.php 2015-03-12 18:00:43Z Tuesday $
*/
/**
* 默认密码: admin, 请不要手工编辑密码 [21232f297a57a5a743894a0e4a801fc3]。
*/
define('TPASSWORD', '21232f297a57a5a743894a0e4a801fc3'); // 密码解密md5一层
/*************************************以下部分为tools工具箱的核心代码,请不要随意修改 Tuesday **************************************/
define('PHPS_CHARSET', 'UTF-8');
error_reporting(0);
date_default_timezone_set('UTC');
define('TMAGIC_QUOTES_GPC', function_exists('get_magic_quotes_gpc') && get_magic_quotes_gpc());
define('TOOLS_ROOT', rtrim(dirname(__FILE__),'/\\').DIRECTORY_SEPARATOR);
$data = file_get_contents(TOOLS_ROOT.'source/discuz_version.php');
preg_match("/define\('DISCUZ_VERSION.*'([^\']*)'\)/isU", $data, $reg);
!$reg[1] && $reg[1] = 'X3.2';
define('DISCUZ_VERSION', $reg[1]);
define('DISCUZ_DOWN_VERSION', str_ireplace('x','',DISCUZ_VERSION));
define('TOOLS_DISCUZ_VERSION', 'Discuz! '.DISCUZ_VERSION);
define('TOOLS_VERSION', 'Tools '.DISCUZ_VERSION);
$tools_versions = TOOLS_VERSION;
$tools_discuz_version = TOOLS_DISCUZ_VERSION;
if(!TMAGIC_QUOTES_GPC) {
$_GET = taddslashes($_GET);
$_POST = taddslashes($_POST);
$_COOKIE = taddslashes($_COOKIE);
}
if (isset($_GET['GLOBALS']) || isset($_POST['GLOBALS']) || isset($_COOKIE['GLOBALS']) || isset($_FILES['GLOBALS'])) {
show_msg('您当前的访问请求当中含有非法字符,已经被系统拒绝');
}
if($_SERVER['REQUEST_METHOD'] == 'POST' && !empty($_POST)) {
$_GET = array_merge($_GET, $_POST);
}
$actionarray = array('index', 'setadmin', 'closesite', 'closeplugin', 'repairdb', 'reinstall' , 'restoredb', 'updatecache', 'login', 'logout','editpass','serverinfo','happy');
$_GET['action'] = htmlspecialchars($_GET['action']);
$action = in_array($_GET['action'], $actionarray) ? $_GET['action'] : 'index';
$t = new T();
$t->init();
$config = $t->config;
!$config['charset'] && $config['charset'] = PHPS_CHARSET;
define('PHP_CHARSET',$config['charset']);
define('DBNAME', $config['db']['1']['dbname']);
header('Content-type: text/html; charset=utf-8');
if(!is_login()) {
login_page();
exit;
}
define('DB_PRE',$t->dbconfig['tablepre']);
# Tuesday 新增加功能.
switch($action){
case 'serverinfo':
include_once(TOOLS_ROOT.'source/class/class_core.php');
include_once(TOOLS_ROOT.'source/function/function_core.php');
header('Content-type: text/html; charset=utf-8');
$discuz = & discuz_core::instance();
$discuz->init();
$_axtime = microtime(true);
set_time_limit(0);
$fileint = $dirint = 0;
function getBytes($folder = './'){
global $fileint,$dirint;
$totalSize=0;
$handle = @opendir($folder) or die("Cannot open " . $folder);
$dirint ++;
while($file = readdir($handle)){
if($file !== "." && $file !== ".."){
if(is_dir($folder.$file.'/')){
$totalSize += getBytes($folder.$file.'/');
}
if(is_file($folder.$file)){
$totalSize += filesize($folder.$file);
$fileint ++;
}
}
}
closedir($handle);
return $totalSize;
}
$formhash = thash();
$filesize = fun_size(getBytes());
$timezone = date_default_timezone_get();
$datetime = date('Y-m-d H:i:s', time());
$sapiname = php_sapi_name();
$tools_discuz_version =TOOLS_DISCUZ_VERSION;
$dbver = DB::fetch_first("SELECT VERSION() AS ver");
!$dbver['ver'] && $dbver['ver'] = 'empty';
$phpver = 'php/'. phpversion();
if(strpos($sapiname,'apache') !== false)
$sapiname = apache_get_version();
if(is_file('./data/install.lock') && $t = filemtime('./data/install.lock')){
$installtime = date('Y-m-d H:i:s',$t);
$runtime = round((time() - $t) / (3600*24));
}
$databases = DBNAME;
$sql = "SHOW TABLE STATUS FROM `{$databases}`";
$query = DB::query($sql);
$indexcount = $tabcount = $tabsize = 0;
while($row = DB::fetch($query)){
$l = fun_size($row['Data_length']);
$inl = fun_size($row['Index_length']);
$dbsection .= "<option value=\"\">{$row['Name']} - [容量: $l; 索引容量:$inl] </option>";
$tabsize += $row['Data_length'];
$indexcount += $row['Index_length'];
$tabcount += 1;
}
$allcount = fun_size($tabsize+$indexcount);
$tabsize = fun_size($tabsize);
$indexcount =fun_size($indexcount);
$xtime = sprintf('%0.2f', (microtime(true) - $_axtime));
// TODO: 首页显示层.
show_header();
print<<<END
<style type="text/css">
ul.info_list li{height: 24px; line-height: 24px;}
h5{padding: 0;}
</style>
<p>欢迎使用 Tools 之 Discuz! 急诊箱功能!我们致力于为您解决 Discuz! 站点的紧急故障,欢迎各位站长朋友们使用。</p>
<h5>Discuz 版本:</h5>
<ul>
<li>{$tools_discuz_version}</li>
</ul>
<h5>服务器信息:</h5>
<ul class="info_list">
<li>服务器时间: {$datetime} ({$timezone})</li>
<li>服务器API: $sapiname</li>
<li>PHP版本号: $phpver</li>
<li>Mysql版本号: MYSQL {$dbver['ver']}</li>
<li>首次运行时间: {$installtime} 总共 {$runtime} 天</li>
</ul>
<h5>文件信息:</h5>
<ul class="info_list">
<li>站点目录总容量: $filesize</li>
<li>站点文件数量: $fileint 个</li>
<li>站点目录数量: $dirint 个</li>
</ul>
<h5>数据库信息:</h5>
<ul class="info_list">
<li>数据库名: $databases</li>
<li>数据表总数: $tabcount</li>
<li>数据表总容量: $tabsize</li>
<li>数据表索引容量: $indexcount</li>
<li>数据表实际占用容量: $allcount</li>
<li>数据表详细情况列表:<select>
$dbsection</select></li>
</ul>
<h5>性能相关</h5>
<ul class="info_list">
<li>运行时间: $xtime 秒 (小于2秒才算性价比))</li>
</ul>
END;
show_footer();
break;
case 'editpass':
if($_POST['act'] == 'delepluges'){
$pname = trim($_POST['pluname']);
if(!$pname){
show_msg('请输入插件名字或者插件ID');
}
$tem = explode(' ', $pname);
$wherestr = '';
if($tem[0]){
$names = $tem[0];
$wherestr .= "AND `name`='$names' ";
}
if($tem[1]){
$names = $tem[1];
$wherestr .= "AND `version`='$names'";
}
if(is_numeric($pname)){
$pname += 0;
$wherestr = "AND `pluginid`='$pname'";
}
if(strpos($pname, '/') === (strlen($pname)-1)){
$names = $pname;
$wherestr = "AND `directory`='$names'";
}
$t->connect_db();
$sql = "SELECT * FROM ".DB_PRE."common_plugin WHERE 1 {$wherestr} LIMIT 1";
$pludata = mysql_fetch_array(mysql_query($sql,$t->db), MYSQL_ASSOC);
if(!$pludata){
show_msg('未找到插件: '.htmlspecialchars($tem[0]).' 版本号:'.htmlspecialchars($tem[1]) );
}
$is_check = unserialize($pludata['modules']);
if($is_check['system']){
show_msg('系统插件, 请不要删除之!');
}
$pid = $pludata['pluginid']+0;
$pludata['directory'] = strtr($pludata['directory'], array('.'=>''));
$dirs = './source/plugin/'.$pludata['directory'];
if(!is_dir($dirs)){
show_msg('插件目录不存在:'.$dirs.' 请手工创建目录后, 再删除插件');
}
没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
Discuz模板 地方门户GBK4.0 整站带演示数据+模板 提示:安装显示乱码不用管正常安装就行 安装完就好了,本源码非常好 唯一不足是完美契合的是3.2版dz 如用测试数据库可以自行用工具设置密码 安装使用教程: 1.整站安装是建立新站的会员,直接放到主机内运行http://您的域名/install安装即可,然后到后台的工具-数据库-恢复数据库,恢复一下数据库即可,然后再去后台的系统配置里面配置一下站点名称,域名等等,超级简单吧! 2.模板的话,先把template文件夹覆盖到你的已经安装好的discuz站点上,然后再用diy导入功能把diy文件夹里面的xml文件导入到对应的页面即可;
资源推荐
资源详情
资源评论
收起资源包目录
Discuz模板 地方门户GBK4.0 整站带演示数据+模板 (2000个子文件)
【点击查最新更新】.bat 25B
【点击查最新更新】.bat 25B
style_2_module.css 138KB
module.css 116KB
common.css 92KB
style_1_module.css 91KB
style_2_common.css 78KB
style_1_common.css 68KB
style_2_forum_viewthread.css 59KB
extend_module.css 52KB
extend_module.css 52KB
style_2_forum_forumdisplay.css 41KB
admincp.css 32KB
page.css 26KB
style_2_home_space.css 26KB
style_1_forum_forumdisplay.css 19KB
style.css 18KB
public.css 17KB
style_2_portal_view.css 15KB
chanpin.css 14KB
css_diy.css 12KB
tipbox.css 11KB
style_2_home_spacecp.css 11KB
taxincome.css 11KB
style_2_portal_index.css 11KB
style_2_css_diy.css 11KB
style_1_css_diy.css 11KB
discuzindex.css 11KB
extend_common.css 11KB
extend_common.css 11KB
admincp.css 10KB
result.css 10KB
index.css 10KB
zuhejsq.css 10KB
style_2_forum_index.css 9KB
style.css 9KB
public.css 9KB
style.css 8KB
qqgroup.css 8KB
style_2_portal_list.css 7KB
style_2_forum_post.css 7KB
editor.css 6KB
jisuanqi.css 6KB
list.css 6KB
home.css 6KB
style_2_editor.css 5KB
style_1_editor.css 5KB
switch_city.css 5KB
style_2_forum_guide.css 5KB
style.css 5KB
style_2_portal_portalcp.css 4KB
style.css 4KB
style.css 4KB
css_space.css 4KB
style.css 4KB
style_1_forum_index.css 4KB
style.css 4KB
forum_moderator.css 4KB
style.css 3KB
style.css 3KB
style.css 3KB
style.css 3KB
style_2_css_space.css 3KB
style_1_css_space.css 3KB
style.css 3KB
style_2_forum_moderator.css 3KB
style_1_forum_moderator.css 3KB
style.css 3KB
base.css 2KB
widthauto.css 2KB
extend_module.css 2KB
forum_calendar.css 1KB
style_2_widthauto.css 1KB
style_1_widthauto.css 1KB
cloud.css 1KB
wysiwyg.css 1KB
rss.css 1KB
style_2_wysiwyg.css 1KB
style.css 1KB
style_1_wysiwyg.css 1KB
style_1_forum_calendar.css 1KB
style_2_forum_calendar.css 1KB
style_1_rss.css 1KB
style_2_rss.css 1KB
style.css 1KB
style.css 876B
style.css 849B
style.css 761B
style.css 753B
style.css 679B
style.css 655B
style.css 562B
style.css 516B
style.css 480B
apply.css 475B
extend_module.css 210B
extend_module.css 192B
extend_common.css 68B
style.css 53B
extstyle_none.css 1B
共 2000 条
- 1
- 2
- 3
- 4
- 5
- 6
- 20
资源评论
执刀人的工具库
- 粉丝: 1466
- 资源: 1639
下载权益
C知道特权
VIP文章
课程特权
开通VIP
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 基于MATLAB GUI的条形码精准识别技术解析与实现,条形码识别 matlab条形码识别 基于matlab gui的条形码识别 ,核心关键词:条形码识别; MATLAB; 基于MATLAB GUI的
- FPGA Verilog编程:包含Altera和Xilinx工程代码及仿真激励文件testbench的资料包,FPGA verilog can mcp2515 altera xilinx工程 代码 程
- 基于PSCAD仿真软件的直流输电模型研究:三端直流输电系统分析与探讨,直流输电模型基于pscad仿真软件的3端直流输电模型 ,关键词:直流输电模型;pscad仿真软件;3端直流输电模型;,基于PS
- 西门840dsl系统图4清单单套详细解析与配置指南,西门840dsl系统按照图4清单单套 ,核心关键词:西门840dsl系统;图4清单;单套;安装 ,西门子840D SL系统图四清单单套使用说明
- IEEE 39节点新英格兰系统仿真研究:基于Matlab Simulink的电压潮流稳定分析,IEEE39节点 新英格兰39节点系统仿真 Matlab simulink质量过硬,非诚勿扰 该模型为自
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功