www.gusucode.com > HadSky PHP轻论坛系统源码 v2.4.2源码程序 > ytqlt_v2.4.2.0701/install/phpscript/install.php

    <?php
if (!defined('puyuetian'))
	exit('403');

$mysql_location = $_POST['mysql_location'];
$mysql_username = $_POST['mysql_username'];
$mysql_password = $_POST['mysql_password'];
$mysql_database = $_POST['mysql_database'];
$mysql_prefix = $_POST['mysql_prefix'];
$mysql_charset = $_POST['mysql_charset'];
$adminusername = Cstr($_POST['adminusername']);
$adminpassword = Cstr($_POST['adminpassword'], FALSE, FALSE, 5, 16);
$adminemail = filter_var($_POST['adminemail'], FILTER_VALIDATE_EMAIL);

if (!$mysql_location || !$mysql_username || !$mysql_password || !$mysql_database || !$mysql_prefix || !$mysql_charset) {
	$error = "请填写完整MySQL数据库信息!";
	template("{$tpath}htmltip.html");
	exit();
}
if (!$adminusername || !$adminpassword || !$adminemail) {
	$error = "请填写正确的创世人信息!";
	template("{$tpath}htmltip.html");
	exit();
}

//mysql/config.php配置文件写入
@$configflie = fopen(dirname(__FILE__) . "/../../puyuetian/mysql/config.php", "w");
if (!$configflie) {
	$error = "写入文件失败,请检查主机权限配置";
	template("{$tpath}htmltip.html");
	exit();
}
$mysql_config = "<?php
	\$_G['MYSQL']['LOCATION'] = '{$mysql_location}';
	\$_G['MYSQL']['USERNAME'] = '{$mysql_username}';
	\$_G['MYSQL']['PASSWORD'] = '{$mysql_password}';
	\$_G['MYSQL']['DATABASE'] = '{$mysql_database}';
	\$_G['MYSQL']['CHARSET'] = '{$mysql_charset}';
	\$_G['MYSQL']['PREFIX'] = '{$mysql_prefix}';
	";
fwrite($configflie, $mysql_config);
fclose($configflie);
//连接mysql数据库
$mysql_connect = mysql_connect($mysql_location, $mysql_username, $mysql_password);
if (!$mysql_connect) {
	//连接失败
	$error = "MySQL数据库连接失败!请返回检查";
	template("{$tpath}htmltip.html");
	exit();
}
//选择数据库
$MYSQL_SELECT_DB_R = mysql_select_db($mysql_database, $mysql_connect);
if (!$MYSQL_SELECT_DB_R) {
	$error = "不存在的数据库!请创建后再安装";
	template("{$tpath}htmltip.html");
	exit();
}
//数据库编码设置
mysql_query($mysql_charset);
//导入MySQL数据
$querys = file_get_contents(dirname(__FILE__) . '/../mysqldata/hadsky.sql');
if (!$querys) {
	//读取数据失败
	$error = "程序安装数据读取失败!";
	template("{$tpath}htmltip.html");
	exit();
}
//数据表前缀替换
$querys = str_replace('`pk_', "`{$mysql_prefix}", $querys);
$querys = explode(";\r\n", $querys);
$err = 0;
foreach ($querys as $query) {
	if (trim($query)) {
		$r = mysql_query($query);
		if (!$r) {
			$err++;
			$rs .= "出错行{$err}:" . mysql_error() . "<br>";
		}
	}
}
if ($err) {
	$error = "安装出错!Err:{$err}<br>错误信息:<br>{$rs}";
	template("{$tpath}htmltip.html");
	exit();
}
//创始人信息更新
mysql_query("update `{$mysql_prefix}user` set `username`='{$adminusername}',`password`='" . md5($adminpassword) . "',`mail`='{$adminemail}' where `id`=1");
//安装成功,锁定安装程序
file_put_contents(dirname(__FILE__) . '/../install.locked', 'install locked!');
//安装全部完成,统计安装用户
$html = "";
$domain = explode(':', $_SERVER['HTTP_HOST']);
$domain = strtolower($domain[0]);
$clientip = $_SERVER['REMOTE_ADDR'];
$serverip = $_SERVER['SERVER_ADDR'];
$rnd = rand(1000, 9999);
$checkcode = md5(md5($rnd));
$url = "http://tongji.hadsky.com/tongji.php?domain={$domain}&softname=hadsky&rnd={$rnd}&checkcode={$checkcode}&email={$adminemail}";
@file_get_contents($url);
$HTMLCODE .= template("{$tpath}step3.html", TRUE);