Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
3 changed files
with
220 additions
and
23 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,209 @@ | ||
<?php | ||
set_time_limit(0); | ||
date_default_timezone_set('Asia/Shanghai');//设置中国时区 | ||
$Message = ''; | ||
$Version = '3.3.0'; | ||
|
||
if($_SERVER['REQUEST_METHOD'] == 'POST'){ | ||
$Language = $_POST['Language']; | ||
$DBHost = $_POST['DBHost']; | ||
$DBName = $_POST['DBName']; | ||
$DBUser = $_POST['DBUser']; | ||
$DBPassword = $_POST['DBPassword']; | ||
//$WebsitePath = $_POST['WebsitePath']; | ||
$WebsitePath = $_SERVER['PHP_SELF'] ? $_SERVER['PHP_SELF'] : $_SERVER['SCRIPT_NAME']; | ||
if(preg_match('/(.*)\/update/i', $WebsitePath , $WebsitePathMatch)) | ||
{ | ||
$WebsitePath = $WebsitePathMatch[1]; | ||
}else{ | ||
$WebsitePath = ''; | ||
} | ||
//初始化数据库操作类 | ||
require('../includes/PDO.class.php'); | ||
$DB = new Db($DBHost, $DBName, $DBUser, $DBPassword); | ||
$OldVersion = $DB->single("SELECT ConfigValue `carbon_config` WHERE `ConfigName`='Version'"); | ||
//数据处理 | ||
$DB->query("UPDATE `carbon_config` SET `ConfigValue`='".$Version."' WHERE `ConfigName`='Version'"); | ||
$DB->query("UPDATE `carbon_config` SET `ConfigValue`='".$WebsitePath."' WHERE `ConfigName`='WebsitePath'"); | ||
$DB->query("UPDATE `carbon_config` SET `ConfigValue`='".$WebsitePath."/static/js/jquery.js' WHERE `ConfigName`='LoadJqueryUrl'"); | ||
|
||
//写入config文件 | ||
$ConfigPointer = fopen('../install/config.tpl','r'); | ||
$ConfigBuffer = fread($ConfigPointer, filesize(dirname(__FILE__).'/config.tpl')); | ||
$ConfigBuffer = str_replace("{{Language}}",$Language,$ConfigBuffer); | ||
$ConfigBuffer = str_replace("{{DBHost}}",$DBHost,$ConfigBuffer); | ||
$ConfigBuffer = str_replace("{{DBName}}",$DBName,$ConfigBuffer); | ||
$ConfigBuffer = str_replace("{{DBUser}}",$DBUser,$ConfigBuffer); | ||
$ConfigBuffer = str_replace("{{DBPassword}}",$DBPassword,$ConfigBuffer); | ||
fclose($ConfigPointer); | ||
$ConfigPHP = fopen('../config.php',"w+"); | ||
fwrite($ConfigPHP,$ConfigBuffer); | ||
fclose($ConfigPHP); | ||
|
||
//写入htaccess文件 | ||
$HtaccessPointer=fopen('../install/htaccess.tpl','r'); | ||
$HtaccessBuffer=fread($HtaccessPointer, filesize('../install/htaccess.tpl')); | ||
$HtaccessBuffer = str_replace("{{WebSitePath}}",$WebsitePath,$HtaccessBuffer); | ||
//Server Software Type | ||
if(isset($_SERVER['HTTP_X_REWRITE_URL'])){//IIS(ISAPI_Rewrite) | ||
$HtaccessBuffer = str_replace("{{RedirectionType}}","[QSA,NU,PT,L]",$HtaccessBuffer); | ||
}else{//Others | ||
$HtaccessBuffer = str_replace("{{RedirectionType}}","[L]",$HtaccessBuffer); | ||
} | ||
fclose($HtaccessPointer); | ||
$Htaccess = fopen("../.htaccess","w+"); | ||
fwrite($Htaccess, $HtaccessBuffer ); | ||
fclose($Htaccess); | ||
|
||
//rewrite文件配置 | ||
$Message = '升级成功,升级完成后请马上删除install和update文件夹。<br />Please delete the install folder and the update floder. '; | ||
//当前版本低于3.3.0,需要进行的升级到3.3.0的升级操作 | ||
if(VersionCompare('3.3.0' ,$OldVersion)){ | ||
$UserIDArray = $DB->query('SELECT UserName, ID FROM '.$Prefix.'users'); | ||
foreach ($UserIDArray as $UserInfo) { | ||
if(!is_file('../upload/avatar/small/' . $UserInfo['ID'] . '.png')){ | ||
echo $UserInfo['UserName'].'<br />'; | ||
if(extension_loaded('gd')){ | ||
$Avatar = new MDAvtars(mb_substr($UserInfo['UserName'], 0, 1, "UTF-8"), 256); | ||
$Avatar->Save('../upload/avatar/large/' . $UserInfo['ID'] . '.png', 256); | ||
$Avatar->Save('../upload/avatar/middle/' . $UserInfo['ID'] . '.png', 48); | ||
$Avatar->Save('../upload/avatar/small/' . $UserInfo['ID'] . '.png', 24); | ||
} | ||
} | ||
} | ||
} | ||
//3.3.0 | ||
//关闭数据库连接 | ||
$DB->CloseConnection(); | ||
//安全起见,修改为不可执行文件 | ||
if (file_exists('index.php')) { | ||
rename("index.php", "index.txt"); | ||
} | ||
if (file_exists('../install/index.php')) { | ||
rename("../install/index.php", "../install/index.txt"); | ||
} | ||
}else{ | ||
if (version_compare(PHP_VERSION, '5.3.0') < 0) { | ||
$Message = '你的PHP版本过低,可能会无法正常使用!<br />Your PHP version is too low, it may not work properly!'; | ||
} | ||
if (! extension_loaded('pdo_mysql')) { | ||
$Message = '你的PHP未编译pdo_mysql,本程序无法正常工作<br />Your PHP don’t support pdo_mysql extension, this program does not work! '; | ||
} | ||
} | ||
|
||
function VersionCompare($Version, $OldVersion) | ||
{ | ||
$VersionArray = array_map("intval", explode('.', $Version));; | ||
$OldVersionArray = array_map("intval", explode('.', $OldVersion)); | ||
$NeedToUpdate = false; | ||
foreach ($VersionArray as $Key => $Value) { | ||
if($VersionArray[$Key] > $OldVersionArray[$Key]){ | ||
$NeedToUpdate = true; | ||
break; | ||
} | ||
} | ||
return $NeedToUpdate; | ||
} | ||
?> | ||
|
||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> | ||
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="zh-CN" lang="zh-CN"> | ||
<head> | ||
<meta charset="UTF-8" /> | ||
<meta content="True" name="HandheldFriendly" /> | ||
<title>Update - Carbon Forum</title> | ||
<link href="../styles/default/theme/style.css" rel="stylesheet" type="text/css" /> | ||
</head> | ||
<body> | ||
<!-- content wrapper start --> | ||
<div class="wrapper"> | ||
<!-- main start --> | ||
<div class="main"> | ||
<!-- main-content start --> | ||
<div class="main-content"> | ||
<div class="title"> | ||
Carbon Forum » 升级 / Update | ||
</div> | ||
<div class="main-box"> | ||
<form action="?" method="post"> | ||
<table cellpadding="5" cellspacing="8" border="0" width="100%" class="fs14"> | ||
<tbody> | ||
<tr> | ||
<td width="auto" align="center" colspan="2"><span class="red"><?php echo $Message; ?></span></td> | ||
</tr> | ||
<?php if(!$Message) {?> | ||
<tr> | ||
<td width="280" align="right">安装语言 / Language</td> | ||
<td width="auto" align="left"> | ||
<select name="Language"> | ||
<option value="zh-cn">简体中文</option> | ||
<option value="en">English</option> | ||
<option value="pl">polski</option> | ||
</select> | ||
</td> | ||
</tr> | ||
<tr> | ||
<td width="280" align="right">数据库地址 / Database Host</td> | ||
<td width="auto" align="left"><input type="text" name="DBHost" class="sl w200" value="127.0.0.1" /></td> | ||
</tr> | ||
<tr> | ||
<td width="280" align="right">数据库名 / Database Name</td> | ||
<td width="auto" align="left"><input type="text" name="DBName" class="sl w200" value="" /></td> | ||
</tr> | ||
<tr> | ||
<td width="280" align="right">数据库登陆账号 / Database Account</td> | ||
<td width="auto" align="left"><input type="text" name="DBUser" class="sl w200" value="root" /></td> | ||
</tr> | ||
<tr> | ||
<td width="280" align="right">数据库密码 / Database Password</td> | ||
<td width="auto" align="left"><input type="password" name="DBPassword" class="sl w200" value="" /></td> | ||
</tr> | ||
<tr> | ||
<td width="280" align="right"></td> | ||
<td width="auto" align="left"><input type="submit" value="升 级 / Update" name="submit" class="textbtn" /></td> | ||
</tr> | ||
<?php } ?> | ||
</tbody> | ||
</table> | ||
</form> | ||
</div> | ||
</div> | ||
<!-- main-content end --> | ||
<div class="main-sider"> | ||
<div class="sider-box"> | ||
<div class="sider-box-title">升级说明</div> | ||
<div class="sider-box-content"> | ||
<p class="red"> | ||
请一定要先备份好你的数据库和upload文件夹!!!<br /> | ||
如果没有备份,请不要继续进行升级操作。 | ||
</p> | ||
<p class="red"> | ||
Please be sure to back up your database and upload folders! ! !<br /> | ||
If there is no backup, please do not proceed with the upgrade operation! ! ! | ||
</p> | ||
<p> | ||
如果出现“Access denied”错误说明填写不正确,请返回重新填写。 | ||
</p> | ||
<p> | ||
如果你使用的是性能极差的虚拟主机,你可以在本地电脑完成升级,再上传至服务器(注意本地电脑运行环境要与服务器一致)。 | ||
</p> | ||
</div> | ||
</div> | ||
</div> | ||
<div class="c"></div> | ||
</div> | ||
<!-- main end --> | ||
<div class="c"></div> | ||
|
||
<!-- footer start --> | ||
<div class="Copyright"> | ||
<p> | ||
Power By <a href="http://www.94cb.com" target="_blank">Carbon Forum <?php echo $Version; ?></a> © 2006-2015 | ||
</p> | ||
</div> | ||
<!-- footer end --> | ||
|
||
</div> | ||
<!-- content wrapper end --> | ||
</body> | ||
</html> |
This file was deleted.
Oops, something went wrong.