📄 install.php
字号:
<?php
error_reporting(7);
set_magic_quotes_runtime(0);
define('FUYIBING', TRUE);
$action = ($HTTP_POST_VARS['action']) ? $HTTP_POST_VARS['action'] : $HTTP_GET_VARS['action'];
$PHP_SELF = $HTTP_SERVER_VARS['PHP_SELF'] ? $HTTP_SERVER_VARS['PHP_SELF'] : $HTTP_SERVER_VARS['SCRIPT_NAME'];
if (function_exists('set_time_limit') == 1 && @ini_get('safe_mode') == 0) {
@set_time_limit(1000);
}
@include '../config.inc.php';
header('Content-Type: text/html; charset=gb2312');
$version = '1.0 <b style=\'color: #FF9900\'>COML</b>';
function runquery($sql) {
global $tablepre, $db;
$sql = str_replace("\r", "\n", str_replace(' jspace_', ' '.$tablepre, $sql));
$ret = array();
$num = 0;
foreach(explode(";\n", trim($sql)) as $query) {
$queries = explode("\n", trim($query));
foreach($queries as $query) {
$ret[$num] .= $query[0] == '#' ? NULL : $query;
}
$num++;
}
unset($sql);
foreach($ret as $query) {
$query = trim($query);
if($query) {
if(substr($query, 0, 12) == 'CREATE TABLE') {
$name = preg_replace("/CREATE TABLE ([a-z0-9_]+) .*/is", "\\1", $query);
echo '创建数据表 -> '.$name.' ... <- <font color="#0000EE">成功</font><br><br><br>';
}
$db->query($query);
}
}
}
function result($result = 1, $output = 1) {
if($result) {
$text = '... <font color="#0000EE">成功</font><br>';
if(!$output) {
return $text;
}
echo $text;
} else {
$text = '... <font color="#FF0000">失败</font><br>';
if(!$output) {
return $text;
}
echo $text;
}
}
?>
<html>
<head>
<title>J_Space Installation Wizard</title>
<style>
A:visited {COLOR: #6699cc; TEXT-DECORATION: none}
A:link {COLOR: #6699cc; TEXT-DECORATION: none}
A:hover {COLOR: #6699cc; TEXT-DECORATION: underline}
p {TEXT-INDENT : 15px}
body,table,td {COLOR: #6699cc; 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: #6699cc; color: #FFFFFF; scrollbar-base-color: #E3E3EA; scrollbar-arrow-color: #5C5C8D}
.install {FONT-FAMILY: Arial, Verdana; FONT-SIZE: 20px; FONT-WEIGHT: bold; COLOR: #000000}
</style>
</head>
<body bgcolor="#6699cc" text="#000000">
<table width="95%" 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>
J_Space Installation Wizard</td>
</tr>
<tr>
<td>
<hr noshade align="center" width="100%" size="1" color="#6699CC">
</td>
</tr>
<tr>
<td align="left">
<b>欢迎来到 J_Space 安装向导,安装前请仔细阅读配置文档的每个细节,以及有关的说明,以保证安装进程的顺利进行。</b>
</td>
</tr>
<tr>
<td>
<hr noshade align="center" width="100%" size="1" color="#6699CC">
</td>
</tr>
<?
if(!$action) {
$J_Space_licence = <<<EOT
版权所有 (c) 2004, Ewannan
保留所有权力.
EOT;
$J_Space_licence = str_replace(' ', ' ', nl2br($J_Space_licence));
?>
<tr>
<td><b>当前状态:</b><font color="#0000EE">J_Space 用户许可协议</font></td>
</tr>
<tr>
<td>
<hr noshade align="center" width="100%" size="1" color="#6699CC">
</td>
</tr>
<tr>
<td><b><font color="#FF0000">></font><font color="#000000"> 请您务必仔细阅读下面的许可协议</font></b></td>
</tr>
<tr>
<td><br>
<table width="90%" cellspacing="1" bgcolor="#6699cc" border="0" align="center">
<tr>
<td bgcolor="#E3E3EA">
<table width="99%" cellspacing="1" border="0" align="center">
<tr>
<td>
<?=$J_Space_licence?>
</td>
</tr>
</table>
</td>
</tr>
</table>
</td>
</tr>
<tr>
<td align="center">
<br>
<form method="post" action="<?=$PHP_SELF?>">
<input type="hidden" name="action" value="config">
<input type="submit" name="submit" value="我完全同意" style="height: 25">
<input type="button" name="exit" value="我不能同意" style="height: 25" onclick="javascript: window.close();">
</form>
</td>
</tr>
<?
} elseif($action == 'config') {
$exist_error = FALSE;
$write_error = FALSE;
if(file_exists('../config.inc.php')) {
$fileexists = result(1, 0);
} else {
$fileexists = result(0, 0);
$exist_error = TRUE;
}
if(is_writeable('../config.inc.php')) {
$filewriteable = result(1, 0);
} else {
$filewriteable = result(0, 0);
$write_error = TRUE;
}
if($exist_error) {
$config_info = '您的 config.inc.php 不存在, 无法继续安装, 请用 FTP 将该文件上传后再试.';
} elseif(!$write_error) {
$config_info = '请在下面填写您的数据库账号信息, 通常情况下请不要修改红色选项内容.';
} elseif($write_error) {
$config_info = '安装向导无法写入配置文件, 请核对现有信息, 如需修改, 请通过 FTP 将改好的 config.inc.php 上传.';
}
?>
<tr>
<td><b>当前状态:</b><font color="#0000EE">配置 config.inc.php</font></td>
</tr>
<tr>
<td>
<hr noshade align="center" width="100%" size="1" color="#6699CC">
</td>
</tr>
<tr>
<td><b><font color="#FF0000">></font><font color="#000000"> 检查配置文件状态</font></b></td>
</tr>
<tr>
<td>config.inc.php 存在检查 <?=$fileexists?></td>
</tr>
<tr>
<td>config.inc.php 可写检查 <?=$filewriteable?></td>
</tr>
<tr>
<td>
<hr noshade align="center" width="100%" size="1" color="#6699CC">
</td>
</tr>
<tr>
<td><b><font color="#FF0000">></font><font color="#000000"> 浏览/编辑当前配置</font></b></td>
</tr>
<tr>
<td align="center"><br><?=$config_info?></td>
</tr>
<?
if(!$exist_error) {
if(!$write_error) {
$dbhost = 'localhost';
$dbuser = 'dbuser';
$dbpw = 'dbpw';
$dbname = 'dbname';
$adminemail = 'webmaster@ewannan.com';
$tablepre = 'jspace_';
@include '../config.inc.php';
?>
<tr>
<td align="center">
<br>
<form method="post" action="<?=$PHP_SELF?>">
<table width="500" cellspacing="1" bgcolor="#6699cc" border="0" align="center">
<tr bgcolor="#6699cc">
<td align="center" width="20%" style="color: #FFFFFF">设置选项</td>
<td align="center" width="35%" style="color: #FFFFFF">当前值</td>
<td align="center" width="45%" style="color: #FFFFFF">注释</td>
</tr>
<tr>
<td bgcolor="#E3E3EA"> 数据库服务器:</td>
<td bgcolor="#EEEEF6" align="center"><input type="text" name="dbhost" value="<?=$dbhost?>" size="30"></td>
<td bgcolor="#E3E3EA"> 数据库服务器地址, 一般为 localhost</td>
</tr>
<tr>
<td bgcolor="#E3E3EA"> 数据库用户名:</td>
<td bgcolor="#EEEEF6" align="center"><input type="text" name="dbuser" value="<?=$dbuser?>" size="30"></td>
<td bgcolor="#E3E3EA"> 数据库账号用户名</td>
</tr>
<tr>
<td bgcolor="#E3E3EA"> 数据库密码:</td>
<td bgcolor="#EEEEF6" align="center"><input type="password" name="dbpw" value="<?=$dbpw?>" size="30"></td>
<td bgcolor="#E3E3EA"> 数据库账号密码</td>
</tr>
<tr>
<td bgcolor="#E3E3EA"> 数据库名:</td>
<td bgcolor="#EEEEF6" align="center"><input type="text" name="dbname" value="<?=$dbname?>" size="30"></td>
<td bgcolor="#E3E3EA"> 数据库名称</td>
</tr>
<tr>
<td bgcolor="#E3E3EA"> 系统 Email:</td>
<td bgcolor="#EEEEF6" align="center"><input type="text" name="adminemail" value="<?=$adminemail?>" size="30"></td>
<td bgcolor="#E3E3EA"> 用于发送程序错误报告</td>
</tr>
<tr>
<td bgcolor="#E3E3EA" style="color: #FF0000"> 表名前缀:</td>
<td bgcolor="#EEEEF6" align="center"><input type="text" name="tablepre" value="<?=$tablepre?>" size="30" onClick="javascript: alert('安装向导提示:\n\n强烈建议您不要修改表名前缀.\n除非同一数据库存安装多个程序');"></td>
<td bgcolor="#E3E3EA"> 同一数据库安装多论坛时使用</td>
</tr>
</table>
<br>
<input type="hidden" name="action" value="environment">
<input type="hidden" name="saveconfig" value="1">
<input type="submit" name="submit" value="保存配置信息" style="height: 25">
<input type="button" name="exit" value="退出安装向导" style="height: 25" onclick="javascript: window.close();">
</form>
</td>
</tr>
<?
} else {
@include '../config.inc.php';
?>
<tr>
<td>
<br>
<table width="60%" cellspacing="1" bgcolor="#6699cc" border="0" align="center">
<tr bgcolor="#6699cc">
<td align="center" style="color: #FFFFFF">变量</td>
<td align="center" style="color: #FFFFFF">当前值</td>
<td align="center" style="color: #FFFFFF">注释</td>
</tr>
<tr>
<td bgcolor="#E3E3EA" align="center">$dbhost</td>
<td bgcolor="#EEEEF6" align="center"><?=$dbhost?></td>
<td bgcolor="#E3E3EA" align="center">数据库服务器, 一般为 localhost</td>
</tr>
<tr>
<td bgcolor="#E3E3EA" align="center">$dbuser</td>
<td bgcolor="#EEEEF6" align="center"><?=$dbuser?></td>
<td bgcolor="#E3E3EA" align="center">数据库账号(用户名)</td>
</tr>
<tr>
<td bgcolor="#E3E3EA" align="center">$dbpw</td>
<td bgcolor="#EEEEF6" align="center"><?=$dbpw?></td>
<td bgcolor="#E3E3EA" align="center">数据库密码</td>
</tr>
<tr>
<td bgcolor="#E3E3EA" align="center">$dbname</td>
<td bgcolor="#EEEEF6" align="center"><?=$dbname?></td>
<td bgcolor="#E3E3EA" align="center">数据库名称</td>
</tr>
<tr>
<td bgcolor="#E3E3EA" align="center">$adminemail</td>
<td bgcolor="#EEEEF6" align="center"><?=$adminemail?></td>
<td bgcolor="#E3E3EA" align="center">系统 Email</td>
</tr>
<tr>
<td bgcolor="#E3E3EA" align="center">$tablepre</td>
<td bgcolor="#EEEEF6" align="center"><?=$tablepre?></td>
<td bgcolor="#E3E3EA" align="center">数据表名前缀</td>
</tr>
</table>
<br>
</td>
</tr>
<tr>
<td align="center">
<form method="post" action="<?=$PHP_SELF?>">
<input type="hidden" name="action" value="environment">
<input type="submit" name="submit" value="上述配置正确" style="height: 25">
<input type="button" name="exit" value="刷新修改结果" style="height: 25" onclick="javascript: window.location=('<?=$PHP_SELF?>?action=config');">
</form>
</td>
</tr>
<?
}
} else {
?>
<tr>
<td align="center">
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -