install.php
---------------------------------------------------------------------------
<!DOCTYPE html/>
<html>
<head>
<style>
*{margin:0;padding:0;}
h2{margin:10px;background:#000000;width:100%;height:50px;line-height:50px;color:#fff;}
.content{font-size:16px;border:2px solid #ccc;font-weight:bold;width:800px;height:500px;overflow:scroll;padding:10px;margin:0 auto;}
h3{margin:10px;background:#CC0033;width:100%;height:50px;line-height:50px;color:#fff;}
a{text-decoration: none;}
a:hover{text-decoration: underline; }
table tr td{font-weight: bold;font-size:20px;padding-top:20px;}
table tr .input{width: 200px;height: 30px;}
table tr td .bt{width: 80px;height: 30px;border: 1px solid #ccc;}
</style>
</head>
<center><h2>系统安装界面</h2></center>
<center class="content">
<?php
/******************************************************
* 系统安装界面 *
* 所有者:allens stevon *
* 日期:2015/5/6 *
******************************************************/
/**
*@系统安装类
*@生成数据库,生成初始化数据
*/
header("Content-type: text/html; charset=utf-8");
$reg = false;
class Install
{
private $con; //数据库连接
private $dbhost = 'localhost'; //数据库端口
private $dbusername = 'root'; //数据库名称
private $dbpw = ''; //数据库密码
public $db = 'cute'; //db名称
//构造方法
function __construct()
{
//判断数据库是否连接成功
if (!($this->con = @mysql_connect($this->dbhost,$this->dbusername,$this->dbpw)))
die('Could not connect: ' . mysql_error());
else{
echo "连接成功<br/>";
$this->createdb();
}
}
//销毁函数
function __destruct(){
//判断是否连接上数据库
if($this->con){
//在类结束的时候关闭数据库连接
if(!$close = @mysql_close($this -> con))
die('<br/>Could not close db');
}
}
//生成数据库
private function createdb(){
$i = 0;
//数据库名称
$queryinfo = array(
0 => '创建'.$this->db,
1 => '使用'.$this->db,
2 => '创建'.$this->db . '_user',
3 => '创建访问权限表'.$this->db.'_access',
4 => '创建权限表' . $this->db . "_node",
5 => '创建权限表' . $this->db . "_role",
6 => '创建'.$this->db.'_role_user',
7 => '创建栏目表'. $this->db .'_caid',
);
$filename = "data/testdata.sql";
$sql=file_get_contents($filename); //把SQL语句以字符串读入$sql
$sql = str_replace('premax', $this->db, $sql);
file_put_contents($filename, $sql);
//设置分隔符
$a=explode("-- **",$sql); //用explode()函数把$sql字符串以“;”分割为数组
foreach($a as $b){ //遍历数组
$c=$b; //分割后是没有“;”的,因为SQL语句以“;”结束,所以在执行SQL前把它加上
if(@mysql_query($c)){ //执行SQL语句
echo $queryinfo[$i++]."操作成功..<br/>";
} else
echo $queryinfo[$i++].'操作失败..' . mysql_error() . "<br/>";
}
echo "<h3>完成所有操作</h3>";
echo "<p style='margin-top:20px;'><a href='admin.php' style='margin-right:20px;'>进入后台</a><a href='index.php'>进入前台</a></p>";
}
}
if(array_key_exists('supermanager', $_POST) && array_key_exists('superpw', $_POST)){
if(!$_POST['supermanager'] == "" && !$_POST['superpw'] == ''){
$reg = true;
$install = new Install();
mysql_select_db($install->db);
$sql = 'insert into ' . $install->db . "_user(username,password)" . " values('" . $_POST["supermanager"] . "','".md5($_POST['superpw'])."')";
if($result = mysql_query($sql))
echo "创建超级管理员成功";
else
echo "创建超级管理员失败";
} else
echo "请输入帐号密码再提交";
}
?>
<?php
if(!$reg){
?>
<h3>注册超级管理用户</h3>
<form action="install.php" method="post">
<table style="margin-top:20px;">
<tr>
<td align="right">超级管理员:</td><td><input class="input" type="text" name="supermanager" /></td>
</tr>
<tr>
<td align="right">管理员密码:</td><td><input class="input" type="password" name="superpw" /></td>
</tr>
<tr>
<td align="right"></td><td>
<input class="bt" type="submit" name="submit" value="提交" />
<input class="bt" type="reset" name="submit" value="重置" />
</td>
</tr>
</table>
</form>
<?php
}
?>
</center>
</html>---------------------------------------------------------------------------testdata.sql
-- 创建数据库
CREATE DATABASE IF NOT EXISTS cute;
-- **
-- 使用此数据库
use cute;
-- **
-- 创建User表
CREATE TABLE IF NOT EXISTS cute_user (
`id` smallint(10) unsigned NOT NULL AUTO_INCREMENT,
`username` varchar(30) NOT NULL,
`headpic` varchar(100) DEFAULT null,
`password` varchar(30) NOT NULL,
`status` tinyint(10) NOT NULL DEFAULT 1,
`remark` varchar(255) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
-- **
-- 创建访问权限表
CREATE TABLE IF NOT EXISTS `cute_access` (
`role_id` smallint(6) unsigned NOT NULL,
`node_id` smallint(6) unsigned NOT NULL,
`level` tinyint(1) NOT NULL,
`module` varchar(50) DEFAULT NULL,
KEY `groupId` (`role_id`),
KEY `nodeId` (`node_id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
-- **
CREATE TABLE IF NOT EXISTS `cute_node` (
`id` smallint(6) unsigned NOT NULL AUTO_INCREMENT,
`name` varchar(20) NOT NULL,
`title` varchar(50) DEFAULT NULL,
`status` tinyint(1) DEFAULT '0',
`remark` varchar(255) DEFAULT NULL,
`sort` smallint(6) unsigned DEFAULT NULL,
`pid` smallint(6) unsigned NOT NULL,
`level` tinyint(1) unsigned NOT NULL,
PRIMARY KEY (`id`),
KEY `level` (`level`),
KEY `pid` (`pid`),
KEY `status` (`status`),
KEY `name` (`name`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
-- **
CREATE TABLE IF NOT EXISTS `cute_role` (
`id` smallint(6) unsigned NOT NULL AUTO_INCREMENT,
`name` varchar(20) NOT NULL,
`pid` smallint(6) DEFAULT NULL,
`status` tinyint(1) unsigned DEFAULT NULL,
`remark` varchar(255) DEFAULT NULL,
PRIMARY KEY (`id`),
KEY `pid` (`pid`),
KEY `status` (`status`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 ;
-- **
CREATE TABLE IF NOT EXISTS `cute_role_user` (
`role_id` mediumint(9) unsigned DEFAULT NULL,
`user_id` char(32) DEFAULT NULL,
KEY `group_id` (`role_id`),
KEY `user_id` (`user_id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
-- **
-- 后台主体栏目表 --
CREATE TABLE IF NOT EXISTS `cute_caid` (
`id` smallint(6) unsigned NOT NULL AUTO_INCREMENT,
`name` varchar(20) NOT NULL,
`title` varchar(50) DEFAULT NULL,
`status` tinyint(1) DEFAULT '0',
`remark` varchar(255) DEFAULT NULL,
`sort` smallint(6) unsigned DEFAULT NULL,
`href` varchar(150) not null,
`pid` smallint(6) unsigned NOT NULL,
`level` tinyint(1) unsigned NOT NULL,
PRIMARY KEY (`id`),
KEY `level` (`level`),
KEY `pid` (`pid`),
KEY `status` (`status`),
KEY `name` (`name`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;下载代码在下方
Install.rar
( 3.4 KB 下载:38 次 )
