📄 d6rctofinal.php
字号:
unset($qihoo['validity']);
$db->query("REPLACE INTO {$tablepre}settings (variable, value) VALUES ('qihoo', '".addslashes(serialize($qihoo))."')");
$db->query("DELETE FROM {$tablepre}settings WHERE variable IN ($qihoo_items)");
$query = $db->query("SELECT value FROM {$tablepre}settings WHERE variable='insenz'");
$insenz = unserialize($db->result($query, 0));
$insenz_message = '';
if(empty($insenz['authkey'])) {
$insenz_message = '<li><font color="red">'.$version_new.' 为您提供了 Insenz 社区营销服务,帮助站长创造收益,提升社区价值,登录论坛后台点击“社区营销”菜单即可注册</font>';
} elseif($insenz['softadstatus'] != 2) {
$insenz_message = '<li><font color="red">您的社区营销尚未开启自动接受活动功能,为了保障您的利益,更快更多的接到广告活动,并且得到更高的广告费用,建议您立即登录论坛后台,在“社区营销 -- 营销设置 -- 基本设置”中设置自动接受活动</font>';
}
echo '<br />恭喜您论坛数据升级成功,接下来请您:<ol><li><b>必删除本程序</b>'.$insenz_message.
'<li>使用管理员身份登录论坛,进入后台,更新缓存'.
'<li>进行论坛注册、登录、发贴等常规测试,看看运行是否正常'.
'<li>如果您希望启用 <b>'.$version_new.'</b> 提供的新功能,你还需要对于论坛基本设置、栏目、会员组等等进行重新设置</ol><br />'.
'<b>感谢您选用我们的产品!</b><a href="index.php" target="_blank">您现在可以访问论坛,查看升级情况</a><iframe width="0" height="0" src="index.php"></iframe>';
showfooter();
}
}
instfooter();
function createtable($sql, $dbcharset) {
$type = strtoupper(preg_replace("/^\s*CREATE TABLE\s+.+\s+\(.+?\).*(ENGINE|TYPE)\s*=\s*([a-z]+?).*$/isU", "\\2", $sql));
$type = in_array($type, array('MYISAM', 'HEAP')) ? $type : 'MYISAM';
return preg_replace("/^\s*(CREATE TABLE\s+.+\s+\(.+?\)).*$/isU", "\\1", $sql).
(mysql_get_server_info() > '4.1' ? " ENGINE=$type default CHARSET=$dbcharset" : " TYPE=$type");
}
function dir_clear($dir) {
$directory = dir($dir);
while($entry = $directory->read()) {
$filename = $dir.'/'.$entry;
if(is_file($filename)) {
@unlink($filename);
}
}
@touch($dir.'/index.htm');
$directory->close();
}
function dir_writeable($dir) {
if(!is_dir($dir)) {
@mkdir($dir, 0777);
}
if(is_dir($dir)) {
if($fp = @fopen("$dir/test.txt", 'w')) {
@fclose($fp);
@unlink("$dir/test.txt");
$writeable = 1;
} else {
$writeable = 0;
}
}
return $writeable;
}
function daddslashes($string) {
if(is_array($string)) {
foreach($string as $key => $val) {
$string[$key] = daddslashes($val, $force);
}
} else {
$string = addslashes($string);
}
return $string;
}
function instfooter() {
echo '</table></body></html>';
}
function random($length, $numeric = 0) {
PHP_VERSION < '4.2.0' && mt_srand((double)microtime() * 1000000);
if($numeric) {
$hash = sprintf('%0'.$length.'d', mt_rand(0, pow(10, $length) - 1));
} else {
$hash = '';
$chars = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789abcdefghijklmnopqrstuvwxyz';
$max = strlen($chars) - 1;
for($i = 0; $i < $length; $i++) {
$hash .= $chars[mt_rand(0, $max)];
}
}
return $hash;
}
function runquery($query) {
global $db, $tablepre, $dbcharset;
$query = str_replace("\r", "\n", str_replace(' cdb_', ' '.$tablepre, $query));
$expquery = explode(";\n", $query);
foreach($expquery as $sql) {
$sql = trim($sql);
if($sql == '' || $sql[0] == '#') continue;
if(strtoupper(substr($sql, 0, 12)) == 'CREATE TABLE') {
$db->query(createtable($sql, $dbcharset));
} else {
$db->query($sql);
}
}
}
function loadtable($table, $force = 0) {
global $db, $tablepre, $dbcharset;
static $tables = array();
if(!isset($tables[$table]) || $force) {
if($db->version() > '4.1') {
$query = $db->query("SHOW FULL COLUMNS FROM {$tablepre}$table", 'SILENT');
} else {
$query = $db->query("SHOW COLUMNS FROM {$tablepre}$table", 'SILENT');
}
while($field = @$db->fetch_array($query)) {
$tables[$table][$field['Field']] = $field;
}
}
return $tables[$table];
}
function upgradetable($updatesql) {
global $db, $tablepre, $dbcharset;
$successed = TRUE;
if(is_array($updatesql) && !empty($updatesql[0])) {
list($table, $action, $field, $sql) = $updatesql;
if(empty($field) && !empty($sql)) {
$query = "ALTER TABLE {$tablepre}{$table} ";
if($action == 'INDEX') {
$successed = $db->query("$query $sql", "SILENT");
} elseif ($action == 'UPDATE') {
$successed = $db->query("UPDATE {$tablepre}{$table} SET $sql", 'SILENT');
}
} elseif($tableinfo = loadtable($table)) {
$fieldexist = isset($tableinfo[$field]) ? 1 : 0;
$query = "ALTER TABLE {$tablepre}{$table} ";
if($action == 'MODIFY') {
$query .= $fieldexist ? "MODIFY $field $sql" : "ADD $field $sql";
$successed = $db->query($query, 'SILENT');
} elseif($action == 'CHANGE') {
$field2 = trim(substr($sql, 0, strpos($sql, ' ')));
$field2exist = isset($tableinfo[$field2]);
if($fieldexist && ($field == $field2 || !$field2exist)) {
$query .= "CHANGE $field $sql";
} elseif($fieldexist && $field2exist) {
$db->query("ALTER TABLE {$tablepre}{$table} DROP $field2", 'SILENT');
$query .= "CHANGE $field $sql";
} elseif(!$fieldexist && $fieldexist2) {
$db->query("ALTER TABLE {$tablepre}{$table} DROP $field2", 'SILENT');
$query .= "ADD $sql";
} elseif(!$fieldexist && !$field2exist) {
$query .= "ADD $sql";
}
$successed = $db->query($query);
} elseif($action == 'ADD') {
$query .= $fieldexist ? "CHANGE $field $field $sql" : "ADD $field $sql";
$successed = $db->query($query);
} elseif($action == 'DROP') {
if($fieldexist) {
$successed = $db->query("$query DROP $field", "SILENT");
}
$successed = TRUE;
}
} else {
$successed = 'TABLE NOT EXISTS';
}
}
return $successed;
}
function showheader() {
global $version_old, $version_new;
print <<< EOT
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<title>Discuz! 升级程序( $version_old >> $version_new)</title>
<meta name="MSSmartTagsPreventParsing" content="TRUE">
<meta http-equiv="MSThemeCompatible" content="Yes">
<style>
a:visited {color: #FF0000; text-decoration: none}
a:link {color: #FF0000; text-decoration: none}
a:hover {color: #FF0000; text-decoration: underline}
body,table,td {color: #3a4273; font-family: Tahoma, verdana, arial; font-size: 12px; line-height: 20px; scrollbar-base-color: #e3e3ea; scrollbar-arrow-color: #5c5c8d}
input {color: #085878; font-family: Tahoma, verdana, arial; font-size: 12px; background-color: #3a4273; color: #ffffff; scrollbar-base-color: #e3e3ea; scrollbar-arrow-color: #5c5c8d}
.install {font-family: Arial, Verdana; font-size: 14px; font-weight: bold; color: #000000}
.header {font: 12px Tahoma, Verdana; font-weight: bold; background-color: #3a4273 }
.header td {color: #ffffff}
.red {color: red; font-weight: bold}
.bg1 {background-color: #e3e3ea}
.bg2 {background-color: #eeeef6}
</style>
</head>
<body bgcolor="#3A4273" text="#000000">
<table width="95%" height="100%" border="0" cellspacing="0" cellpadding="0" bgcolor="#FFFFFF" align="center">
<tr>
<td>
<table width="98%" border="0" cellspacing="0" cellpadding="0" align="center">
<tr>
<td class="install" height="30" valign="bottom"><font color="#FF0000">>></font>
Discuz! 升级程序( $version_old >> $version_new)</td>
</tr>
<tr>
<td>
<hr noshade align="center" width="100%" size="1">
</td>
</tr>
<tr>
<td align="center">
<b>本升级程序只能从 $version_old 升级到 $version_new ,运行之前,请确认已经上传所有文件,并做好数据备份<br />
升级当中有任何问题请访问技术支持站点 <a href="http://www.discuz.net" target="_blank">http://www.discuz.net</a></b>
</td>
</tr>
<tr>
<td>
<hr noshade align="center" width="100%" size="1">
</td>
</tr>
<tr><td>
EOT;
}
function showfooter() {
echo <<< EOT
</td></tr></table></td></tr>
<tr><td height="100%"> </td></tr>
</table>
</body>
</html>
EOT;
exit();
}
function showerror($message, $break = 1) {
echo '<br /><br />'.$message.'<br /><br />';
if($break) showfooter();
}
function redirect($url) {
echo <<< EOT
<hr size=1>
<script language="JavaScript">
function redirect() {
window.location.replace('$url');
}
setTimeout('redirect();', 1000);
</script>
<br /><br />
>><a href="$url">浏览器会自动跳转页面,无需人工干预。除非当您的浏览器长时间没有自动跳转时,请点击这里</a>
<br /><br />
EOT;
showfooter();
}
?>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -