search
Homephp教程php手册PHP制作安装程序的原理与步骤详细讲解

PHP制作安装程序的原理与步骤详细讲解

Jun 13, 2016 am 10:39 AM
phpandmakeprincipleInstallstepofprogramexplaindetailed

本文讲解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、实例代码

  1. $files="data/config.php";
  2. if(!is_writable($files)){
  3. echo "不可写!!!";
  4. }else{
  5. echo "可写";
  6. }
  7. if(isset($_POST[install])){
  8. $config_str = "
  9. $config_str .= " ";
  10. $config_str .= $mysql_host = " . $_POST[db_host] . ";;
  11. $config_str .= " ";
  12. $config_str .= $mysql_user = " . $_POST[db_user] . ";;
  13. $config_str .= " ";
  14. $config_str .= $mysql_pass = " . $_POST[db_pass] . ";;
  15. $config_str .= " ";
  16. $config_str .= $mysql_dbname = " . $_POST[db_dbname] . ";;
  17. $config_str .= " ";
  18. $config_str .= $mysql_tag = " . $_POST[db_tag] . ";;
  19. $config_str .= " ";
  20. $config_str .= ?>;
  21. $ff = fopen($files, "w ");
  22. fwrite($ff, $config_str);
  23. //=====================
  24. include_once ("data/config.php"); //嵌入配置文件
  25. if (!@$link = mysql_connect($mysql_host, $mysql_user, $mysql_pass)) { //检查数据库连接情况
  26. echo "数据库连接失败! 请返回上一页检查连接参数 返回修改";
  27. } else {
  28. mysql_query("CREATE DATABASE `$mysql_dbname`");
  29. mysql_select_db($mysql_dbname);
  30. $sql_query[] = "CREATE TABLE `" . $mysql_tag . "admin_log1` (
  31. `id` int(8) unsigned NOT NULL auto_increment,
  32. `username` varchar(40) NOT NULL COMMENT 操作用户名称,
  33. `types` varchar(60) NOT NULL,
  34. PRIMARY KEY (`id`)
  35. ) ;";
  36. $sql_query[] = "CREATE TABLE `" . $mysql_tag . "admin_log2` (
  37. `id` int(8) unsigned NOT NULL auto_increment,
  38. `username` varchar(40) NOT NULL COMMENT 操作用户名称,
  39. `types` varchar(60) NOT NULL,
  40. PRIMARY KEY (`id`)
  41. ) ;";
  42. $sql_query[] = "CREATE TABLE `" . $mysql_tag . "admin_log3` (
  43. `id` int(8) unsigned NOT NULL auto_increment,
  44. `username` varchar(40) NOT NULL COMMENT 操作用户名称,
  45. `types` varchar(60) NOT NULL,
  46. PRIMARY KEY (`id`)
  47. ) ;";
  48. foreach($sql_query as $val){
  49. mysql_query($val);
  50. }
  51. echo "<script>alert(安装成功!);location.href=index.php</script>";
  52. rename("install.php","install.lock");
  53. }
  54. }
  55. ?>

  56. 填写主机:
  57. 用 户 名:
  58. 密  码:
  59. 数据库名:
  60. 数据前缀:

希望本文能对你有所收获。
Statement
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

Video Face Swap

Video Face Swap

Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Tools

MinGW - Minimalist GNU for Windows

MinGW - Minimalist GNU for Windows

This project is in the process of being migrated to osdn.net/projects/mingw, you can continue to follow us there. MinGW: A native Windows port of the GNU Compiler Collection (GCC), freely distributable import libraries and header files for building native Windows applications; includes extensions to the MSVC runtime to support C99 functionality. All MinGW software can run on 64-bit Windows platforms.

SAP NetWeaver Server Adapter for Eclipse

SAP NetWeaver Server Adapter for Eclipse

Integrate Eclipse with SAP NetWeaver application server.

SublimeText3 Chinese version

SublimeText3 Chinese version

Chinese version, very easy to use

Notepad++7.3.1

Notepad++7.3.1

Easy-to-use and free code editor

Dreamweaver Mac version

Dreamweaver Mac version

Visual web development tools