本文讲解PHP制作安装程序的原理与步骤
1、制作PHP安装程序的原理
PHP程序的安装原理就是将数据库结构和内容导入到相应的数据库中,从这个过程中重新配置连接数据库的参数和文件,为了保证不被别人恶意使用安装文件,当安装完成后需要修改安装文件。
2、制作PHP安装程序的步骤
step1 检查目录或文件的权限
step2 修改或填加配置文件
step3 检查配置文件正确性
step4 导入数据库
step5 锁定或删除安装文件
3、制作安装用到的PHP函数
检查文件是否可写,返回布尔值:is_writable("data/config.php");
检查文件是否可读,返回布尔值:is_readable("data/config.php");
fopen() 文件操作函数,打开一个文件或新建
fwrite() 文件操作函数,写入内容到文件
rename() 文件操作函数,给文件改名
4、注意事项
(1).对文件和相关文件夹权限进行检查,如缓存,生成文件,配置文件
(2).安装文件尽可能独立,可删除,可改名。
(3).数据库导入时,需检查:
a.检查是否有建立数据库的权限
b.是否同名数据库的存在
c.考虑到数据库导入的大小是否分段处理
(4).检查配置环境,各种模块的支持情况,如:gd2, pdo,rewirte等
5、实例代码
-
- $files="data/config.php";
- if(!is_writable($files)){
- echo "不可写!!!";
- }else{
- echo "可写";
- }
- if(isset($_POST[install])){
- $config_str = "
- $config_str .= "
";
- $config_str .= $mysql_host = " . $_POST[db_host] . ";;
- $config_str .= "
";
- $config_str .= $mysql_user = " . $_POST[db_user] . ";;
- $config_str .= "
";
- $config_str .= $mysql_pass = " . $_POST[db_pass] . ";;
- $config_str .= "
";
- $config_str .= $mysql_dbname = " . $_POST[db_dbname] . ";;
- $config_str .= "
";
- $config_str .= $mysql_tag = " . $_POST[db_tag] . ";;
- $config_str .= "
";
- $config_str .= ?>;
- $ff = fopen($files, "w ");
- fwrite($ff, $config_str);
- //=====================
- include_once ("data/config.php"); //嵌入配置文件
- if (!@$link = mysql_connect($mysql_host, $mysql_user, $mysql_pass)) { //检查数据库连接情况
- echo "数据库连接失败! 请返回上一页检查连接参数 返回修改";
- } else {
- mysql_query("CREATE DATABASE `$mysql_dbname`");
- mysql_select_db($mysql_dbname);
- $sql_query[] = "CREATE TABLE `" . $mysql_tag . "admin_log1` (
- `id` int(8) unsigned NOT NULL auto_increment,
- `username` varchar(40) NOT NULL COMMENT 操作用户名称,
- `types` varchar(60) NOT NULL,
- PRIMARY KEY (`id`)
- ) ;";
- $sql_query[] = "CREATE TABLE `" . $mysql_tag . "admin_log2` (
- `id` int(8) unsigned NOT NULL auto_increment,
- `username` varchar(40) NOT NULL COMMENT 操作用户名称,
- `types` varchar(60) NOT NULL,
- PRIMARY KEY (`id`)
- ) ;";
- $sql_query[] = "CREATE TABLE `" . $mysql_tag . "admin_log3` (
- `id` int(8) unsigned NOT NULL auto_increment,
- `username` varchar(40) NOT NULL COMMENT 操作用户名称,
- `types` varchar(60) NOT NULL,
- PRIMARY KEY (`id`)
- ) ;";
- foreach($sql_query as $val){
- mysql_query($val);
- }
- echo "<script>alert(安装成功!);location.href=index.php</script>";
- rename("install.php","install.lock");
- }
- }
- ?>
- 填写主机:
- 用 户 名:
- 密 码:
- 数据库名:
- 数据前缀:
-
-
希望本文能对你有所收获。
http://www.bkjia.com/PHPjc/486158.htmlwww.bkjia.comtruehttp://www.bkjia.com/PHPjc/486158.htmlTechArticle本文讲解PHP制作安装程序的原理与步骤 1、制作PHP安装程序的原理 PHP程序的安装原理就是将数据库结构和内容导入到相应的数据库中,从这...