公司有很多个网站都需要使用留言功能,但目前还没时间写后台,就写了一个简易版的留言板,先顶一阵子,但想着网站在不同服务器上,每次去操作不同的数据库有点难受,于是想做一个像WP和DZ一样自动安装的程序,于是抖机灵大法出现了。在网上找了一段,自己改了一下更符合使用(原版版本太老了)


基本功能:
1、生成一个conntent.php的数据库链接文件
2、生成install.lock效验文件,防止二次安装
3、自定义表名前缀,防止表名重复并且保证可读性

install.php代码:

<htmlxmlns="http://www.w3.org/1999/xhtml">
<head>
<metahttp-equiv="Content-Type"content="text/html;charset=utf-8"/>
<title>php安装程序</title>
</head>
<body>  <?php  if($_GET['action']!=1)  {
?>  <form action="install.php?action=1"method="post">  数据库—地址:<input type="text"name="host"value="localhost"><br>  数据库用户名:<input type="text"name="user"value="root"><br>  数据库—密码:<input type="password"name="psw"value=""><br>  数据库——名:<input type="text"name="db"value=""><br>  自定表名前缀:<input type="text"name="mdb"value="z_"><br>  <input type="submit"name="sub"value="提交"/>
</form>  <?php  }  else {  $lockfile="install.lock";   if($_POST['host']!=""&&$_POST['user']!=""&&$_POST['psw']!="" && $_POST['db']!=""&& $_POST['mdb']!=""){  $host=$_POST['host'];   $user=$_POST['user'];  $psw=$_POST['psw'];  $db=$_POST['db'];   $mdb=$_POST['mdb']; }  if(file_exists($lockfile)){   exit("已经安装过了,如果要重新安装请先删除install.lock");   }  $conn = mysqli_connect($host,$user,$psw,$db);  if (!$conn) {die("连接失败: " . mysqli_connect_error());} echo "1/5 数据库连接成功";$mdba="$mdb"."message";$sql = "CREATE TABLE {$mdba} (
id INT(10) UNSIGNED AUTO_INCREMENT PRIMARY KEY,
username VARCHAR(255) NOT NULL,
content VARCHAR(255),
tel VARCHAR(255) NOT NULL,
wx VARCHAR(255),
intime INT(10) NOT NULL,
email VARCHAR(255)
)"; if (mysqli_query($conn, $sql)) {echo "</p>2/5 数据表 {$mdba} 创建成功\n";} else {die( "创建数据表错误: " . mysqli_error($conn));}mysqli_close($conn);echo "</p>3/5 数据库操作成功\n";$config_file="conntent.php";   $config_strings="<?php\n";   $config_strings.="\$host=\"".$host."\";\n";   $config_strings.="\$user=\"".$user."\";\n";   $config_strings.="\$pwd=\"".$psw."\";\n";   $config_strings.="\$dbname=\"".$db."\";\n";   $config_strings.="\$db = new mysqli(\$host,\$user,\$pwd,\$dbname);\n";  $config_strings.="\$tablename=\"".$mdba."\";\n"; $config_strings.="if(\$db->connect_erron <> 0){\n";  $config_strings.="echo\"连接失败\";\n"; $config_strings.="}\n"; $config_strings.="\$db->query(\"SET NAMES UTF8\");\n";   $config_strings.="?>";   $fp=fopen($config_file,"wb");  fwrite($fp,$config_strings);  fclose($fp);    echo "</p>4/5 数据库文件添加成功\n";$fp2=fopen($lockfile,'w');  fwrite($fp2,'安装效验文件');   fclose($fp2);  echo "</p>5/5 效验文件添加成功\n";}  ?>
</body>
</html>

页面截图:

安装成功后截图:

菜鸟实习——如何做一个PHP自动安装程序install.php相关推荐

  1. Linux脚本自动安装软件,一个快速自动安装Apache及其相关软件的Shell脚本

    一个快速自动安装Apache及其相关软件的Shell脚本 文:王文俊 email:wwj99001@sina.com wwj99001@sohu.com 成文时间:2002年6月1日 Apache是一 ...

  2. 如何做一个股票自动交易系统的步骤

    如何做一个股票自动交易系统的步骤 1. 数据获取 股票自动交易系统需要获取的数据非常丰富,涉及到市场价格.资金流向.基本面报告等多方面信息.这些数据对于制定交易策略和决策分析至关重要. 首先,对于股票 ...

  3. 一个完整的安装程序实例—艾泽拉斯之海洋女神出品(五) --补遗 (已补充第三部分完整版)

    转载时请务必保留转载出处和由艾泽拉斯之海洋女神出品的字样:如需刊登,请与作者联系.little_fairycat@126.com. 第三部分:其他  1. 修改显示界面的风格  Installshie ...

  4. Win-Get——Windows下的自由软件自动安装程序

    来源:Solidot 在Linux上,可以方便的通过apt-get来获得软件.现在Windows专用的Win-Get-- 一个免费的命令行自动安装程序,可以在"视窗"系统上实现相同 ...

  5. 臻好黄金百香果苗做一个有脑子的程序员

    程序员是最理性的一个群人,除非面对电子产品的时. 程序员是一群高智商的群体,唯一的缺点就是发际线总是很难防守. 程序员是一群情商比较低的人群,常常看到程序员仅仅因为对技术的理解不同而大吵起来. 程序员 ...

  6. 争取做一个良性循环的程序员

    争取做一个良性循环的程序员,莫让恶性循环上身. 以下阐述仅仅的是个人的想法和意见!觉得有说的不对的地方您老人家可以随手关掉页面,顺便可以嘀咕一句(太水了,简直就是胡诌)!^_^ 一:需求与概要 一点1 ...

  7. 要怎么样做一个合格点的程序猿呢?

    要怎么样做一个合格点的程序猿呢? 把编程当做人生来看,磨刀不误砍柴工.看完设计模式以后,就算以后设计不出很精巧的模式,我也会先仔细想好,仔细研究透了需求,分析透了设计,再写代码,不然的话,后期的维护, ...

  8. VBNet WinForm如何开发一个照片自动排版程序

    想要开发一个照片自动排版程序要熟悉一下几个知识点: System.Drawing.Printing.PrintDocument.Print涉及到的纸张设置是英寸相关,我们常用的长度单位是毫米,那么先需 ...

  9. 用C++做一个特小型恶意程序

    用C++做一个特小型恶意程序 #include <windows.h> #include <ctime> #include <cstdlib> using name ...

最新文章

  1. matlab ezplot hold,matlab中的ezplot函数
  2. oracle clob raw 转换,ORA-22835 缓冲区对于 CLOB 到 CHAR 转换或 BLOB 到 RAW 转换而言太小...
  3. 用9*9的卷积核分类9*9的图片
  4. jQuery EasyUI window窗口使用实例
  5. pip安装了 但是python找不到_python安装完毕后,用pip安装提示找不到ssl模块怎么解决?...
  6. PHP用户登录功能实现
  7. 跟我学PHP第二篇- 配置Mysql以及PHP WampServer篇(1)
  8. java多进程、多线程讲解
  9. YBTOJ:伞兵空降(二分图匹配)
  10. 安装unzip_史上最详细的WordPress安装教程(六):安装WordPress
  11. 中国式的APP排行榜
  12. PHP中global与$GLOBALS的区别
  13. 自动化测试--实现一套完全解耦的简单测试框架
  14. UGUI的表格布局组件
  15. 解决kindle刷多看系统的问题
  16. 区块链开发完整指南。如何开发一款区块链项目?
  17. 线性混合效应模型学习
  18. 苹果成美国历史上市值最大公司
  19. linux ftdi 虚拟,linux ftdi驱动
  20. 网页制作常用html代码

热门文章

  1. OpenCV学习(53)
  2. Robei设计中的小技巧(最后一次更新)
  3. 京东、美团布局,留给闪送们的时间还有多少
  4. Keyshot 11版本,全新发布
  5. 基于Servlet+Jsp实现的酒店客房预定管理系统分前后台
  6. 罗朝辉(飘飘白云)的各种深入潜出
  7. 关于逆向思维在程序设计中的应用
  8. Ubuntu18.04安装pgadmin
  9. Win7 SuperFetch无法启动
  10. 空洞骑士:简单开场场景搭建