⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 install.php

📁 PHP+IIS+MySQL开发物流管理系统
💻 PHP
字号:
<?php
header("Content-type: text/html; charset=gbk");
error_reporting(0);
ob_start();
echo "<meta http-equiv='Content-Type' content='text/html; charset=gbk' />";
@$action = $_GET["step"];
$action = intval($action);
if(empty($action))
{
	echo "安装清雅园企业管理(情感)系统,在安装前,请查看一下配置";
	echo "<br /><br />文件夹属性:data,upfiles及其子文件(夹)属性是否为777";
	echo "<br />文件config.php属性是否为:666或777";
	echo "<br /><br /><input type='button' onclick=\"window.location='install.php?step=0'\" value='下一步' style='border:1px #d4d4d4 solid;line-height:120%'>";
}
elseif($action == 0)
{
		if(@file_exists("config.php"))
		{
			$configfile = implode ("",file("config.php"));//file_get_contents("config.php");

			//---------更新
			$handle = fopen("config.php","wb");
			fwrite($handle,trim($configfile));
			fclose($handle);
			echo "现在我们配置相关数据库相关信息";
			echo "<form method='post' action='install.php?step=2'>";
			echo "服务器地址:<input type='text' name='dbHost' value='localhost'><br />";
			echo "数据库账号:<input type='text' name='dbUser' value='root'><br />";
			echo "数据库密码:<input type='text' name='dbPass'><br />";
			echo "数据库名称:<input type='text' name='dbData'><br />";
			echo "数据表前缀:<input type='text' name='prefix' value='qinggan_'><br />";
			echo "<input type='submit' value='下一步检测输入是否正测'>";
			echo "</form>";
		    echo "<br /><br /><input type='button' onclick=\"window.location='install.php?step=1'\" value='下一步' style='border:1px #d4d4d4 solid;line-height:120%'>";
}
elseif($action == 1)
{
		if(@file_exists("config.php"))
		{
			$configfile = implode ("",file("config.php"));//file_get_contents("config.php");

			//---------更新
			$handle = fopen("config.php","wb");
			fwrite($handle,trim($configfile));
			fclose($handle);
			echo "现在我们配置相关数据库相关信息";
			echo "<form method='post' action='install.php?step=2'>";
			echo "服务器地址:<input type='text' name='dbHost' value='localhost'><br />";
			echo "数据库账号:<input type='text' name='dbUser' value='root'><br />";
			echo "数据库密码:<input type='text' name='dbPass'><br />";
			echo "数据库名称:<input type='text' name='dbData'><br />";
			echo "数据表前缀:<input type='text' name='prefix' value='qinggan_'><br />";
			echo "<input type='submit' value='下一步检测输入是否正测'>";
			echo "</form>";
		}
		else
		{
			die("错误,不存在配置文件config.php<br /><br /><input type='button' value='返回上一步' onclick=\"window.location='install.php'\">");
		}
}
elseif($action == 2)
{
	@$dbHost = $_POST["dbHost"];
	@$dbUser = $_POST["dbUser"];
	@$dbPass = $_POST["dbPass"];
	@$dbData = $_POST["dbData"];
	@$prefix = $_POST["prefix"];
	if(empty($dbHost) || empty($dbUser) || empty($dbData) || empty($prefix))
	{
		die("错误,变量为空值<br /><br /><input type='button' value='从第一步开始重新设置' onclick=\"window.location='install.php?step=1'\">");
	}
	//----------检测链接是否正确
	@mysql_connect($dbHost,$dbUser,$dbPass) or die("数据库连接失败,您输入的信息无法正常连接数据库服务器<br /><br /><input type='button' value='从第一步开始重新设置' onclick=\"window.location='install.php?step=1'\">");
	@mysql_select_db($dbData) or die("不存在该数据库<br /><br /><input type='button' value='从第一步开始重新设置' onclick=\"window.location='install.php?step=1'\">");

	//--------写入变量
	$conn = implode ("",file("config.php"));//file_get_contents("config.php");
	//------------更新路径
	$conn = preg_replace("/[$]dbHost\s*\=\s*[\"'].*?[\"']/is","\$dbHost = \"".$dbHost."\"",$conn);
	$conn = preg_replace("/[$]dbUser\s*\=\s*[\"'].*?[\"']/is","\$dbUser = \"".$dbUser."\"",$conn);
	$conn = preg_replace("/[$]dbPass\s*\=\s*[\"'].*?[\"']/is","\$dbPass = \"".$dbPass."\"",$conn);
	$conn = preg_replace("/[$]dbData\s*\=\s*[\"'].*?[\"']/is","\$dbData = \"".$dbData."\"",$conn);
	$conn = preg_replace("/[$]prefix\s*\=\s*[\"'].*?[\"']/is","\$prefix = \"".$prefix."\"",$conn);
	//---------更新
	$handle = fopen("config.php","wb");
	fwrite($handle,trim($conn));
	fclose($handle);
	echo "更新文件成功,下一步将写入数据表结构";
	echo "<br /><br /><input type='button' value='下一步写入数据表结构及信息' onclick=\"window.location='install.php?step=4'\">";
}
elseif($action == 4)
{
	include_once("config.php");
	include_once("./class/mysql.db.class.php");
	$DB = new qgSQL($dbHost,$dbData,$dbUser,$dbPass,$dbOpenType);

	//----------读表结构文件
	$fp = fopen("install.sql", 'rb');
	$sql = fread($fp,filesize("install.sql"));
	fclose($fp);
	if($prefix != "qinggan_")
	{
		$sql = str_replace("qinggan_",$prefix,$sql);
	}
	//--------更新表结构函数
	$sql = FormatSql($sql);

	//----------表创建成功,删除旧文件
	@unlink("./install.php");
	@unlink("./install.sql");
	echo "<a href='./index.php'>操作成功,点这里进入首页吧</a>";
}

Function FormatSql($sql)
{
	global $DB;
	$sql = str_replace("\r","\n",$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] == '#' || $query[0].$query[1] == '--' ? '' : $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">'.$lang['succeed'].'</font><br>';
				$DB->qgQuery(CreateTable($query));
			} else {
				$DB->qgQuery($query);
			}
		}
	}
}

Function CreateTable($sql)
{
	return preg_replace("/^\s*(CREATE TABLE\s+.+\s+\(.+?\)).*$/isU", "\\1", $sql).(mysql_get_server_info() > '4.1' ? " ENGINE=MyISAM DEFAULT CHARSET=gbk" : " TYPE=MYISAM");
}
ob_end_flush();
?>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -