您现在的位置是:首页 > cms教程 > 帝国CMS教程帝国CMS教程

帝国CMS插件安装和卸载页面的开发制作方法

马仁2025-10-09帝国CMS教程已有人查阅

导读下面代码号分享一系列帝国cms插件开发制作教程,从安装到业务逻辑页面,今天先说帝国CMS插件安装卸载页面的开发制作。

下面代码号分享一系列帝国cms插件开发制作教程,从安装到业务逻辑页面,今天先说帝国CMS插件安装卸载页面的开发制作。
前端页面示例:
<?php
error_reporting(E_ALL ^ E_NOTICE);
@set_time_limit(10000);
define('EmpireCMSAdmin','1');
require('../../../class/connect.php');
require('../../../class/db_sql.php');
require('../../../class/functions.php');
$link=db_connect();
$empire=new mysqlquery();
$editor=2;
if(file_exists("install.off"))
{
echo"安装程序已锁定。如果要重新安装或卸载,请删除插件目录下的<b>install.off</b>文件!";
exit();
}
if($_GET['ecms']=="install")
{
$phome_db_dbchar=file_exists('../../../config/config.php')?$ecms_config['db']['dbchar']:$phome_db_dbchar;
$doinstall=$_GET['doinstall'];
if($doinstall=='install')//安装操作
{
include('install.php');
$word='已安装完毕!</br>建议您立即删除install安装目录。';
}
elseif($doinstall=='uninstall')//卸载操作
{
include('uninstall.php');
$word='已卸载完毕!';
}
echo $ename.$word;
exit();
}
?>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title><?=$ename?>插件安装/卸载程序</title>
<style>
/* Basic Grey */
body{font:12px '微软雅黑',"Times New Roman",Times,serif;color:#000;background:url(body-bg.jpg) repeat;}
div{margin:0}
.basic-grey{margin-left:auto;margin-right:auto;max-width:600px;background:#F7F7F7;padding:25px 0;text-shadow:1px 1px 1px #FFF;border:1px solid #E4E4E4; margin-top:10%;}
.basic-grey h1{font-size:25px;padding:0 10px 10px 40px;display:block;border-bottom:1px solid #E4E4E4;color:#333;}
.basic-grey h1>span{display:block;font-size:11px;margin-top:10px}
.basic-grey .row { margin-top:15px;padding-left: 40px;}
input[type=radio]{margin-top:10px}
.operation{height:50px;line-height:50px;padding-left:40px}
.basic-grey .msg{padding:20px 0px;height:80px;font-family:'宋体'; color:#666;}
.basic-grey .button{padding: 10px 30px 10px 30px;
background: #66C1E4;
border: none;
color: #FFF;
box-shadow: 1px 1px 1px #4C6E91;
-webkit-box-shadow: 1px 1px 1px #4C6E91;
-moz-box-shadow: 1px 1px 1px #4C6E91;
text-shadow: 1px 1px 1px #5079A3;cursor:pointer}
.basic-grey .button:hover{background:#3EB1DD}
.clear{margin:5px 0; border-bottom:1px solid #E4E4E4;}
</style>
<script>
function CheckUpdate(obj){
if(confirm('确认操作?'))
{
obj.updatebutton.disabled=true;
return true;
}
return false;
}
</script>
</head>
<body>
<div class="basic-grey">
<form method="GET" action="index.php" name="formupdate" onSubmit="return CheckUpdate(document.formupdate);">
<h1>
<?=$ename?>
<span>插件安装/卸载程序.</span>
</h1>
<div class="operation"> <span>选择操作:</span>
<input name="doinstall" type="radio" value="install" checked>
安装
<input type="radio" name="doinstall" value="uninstall">
卸载
</div>
<div class="clear"></div>
<div class="row">
<input type="submit" class="button" name="updatebutton" value="提交操作">
<input name="ecms" type="hidden" id="ecms" value="install">
</div>
</form>
</div>
</body>
</html>
首先连接数据库,然后判断当前目录是否存在install.off文件,有就代表已经安装,没有就可以继续安装。
接着给个表单,判断提交的是安装还是卸载请求,跳转到对应的PHP页面,前端页面就完成了。
安装PHP示例:
接着就是安装处理页面,一般都是写入数据库的操作,示例代码如下:
<?php
if(!defined('InEmpireCMS'))
{
exit();
}
if(file_exists("install.off"))
{
echo"安装程序已锁定。如果要重新安装,请删除<b>install.off</b>文件!";
exit();
}
$empire->query(SetCreateTable("CREATE TABLE `{$dbtbpre}wdzzz` (
`id` int(6) auto_increment,
`name` varchar(50) default ''
) TYPE=MyISAM;",$phome_db_dbchar));
$empire->query("insert into `{$dbtbpre}enewsmenuclass` values(NULL,'代码号插件','0','0','2','');");
$menuclassid=$empire->lastid();
$empire->query("insert into `{$dbtbpre}enewsmenu` values(NULL,'代码号插件1','../wdzzz/wdzzz1.php','1','$menuclassid',1);");
$empire->query("insert into `{$dbtbpre}enewsmenu` values(NULL,'代码号插件2','../wdzzz/wdzzz2.php','1','$menuclassid',2);");
$fp=@fopen("install.off","w");
@fclose($fp);
function generate_code($length=32) {
$chars = '';
$password = '';
for ( $i = 0; $i < $length; $i++ )
{
$password .= $chars[ mt_rand(0, strlen($chars) - 1) ];
}
return $password;
}
?>
首先我们还是判断一下install.off文件,防止误操作。
接着我们创建了一个wdzzz表,然后创建了一个name的字段。
之后写入enewsmenuclass插件菜单数据表,这样打开后台的插件菜单,就自动显示刚刚安装的插件了。
这里要注意的是字段类型需要创建正确,可以参考下面的:
1. 整型(Integer):用于存储整数,如-2, 0, 1等,不包含小数部分。
2. 浮点型(Float):用于存储带有小数的数值,如3.14、-0.5等,精度比整型高。
3. 字符型(Character或String):用于存储文本数据,可以是单个字符或一串字符。
4. 布尔型(Boolean):用于存储逻辑值,通常只有两个状态,如True和False。
5. 日期/时间型(Date/Time):用于存储日期和时间信息,如"2022-01-01"或"12:00:00"。
6. 对象型(Object):在某些数据库系统中,用于存储复杂的数据结构,如数组、列表或字典。
7. 字节型(Byte):用于存储单个字节的数据,常用于处理二进制数据。
8. 数组或 型(Array/Collection):用于存储一组有序的元素,可以是同类型的或者不同类型。
9. 指针型(Pointer):在编程语言中,用于存储内存地址,指向其他数据对象的位置。
卸载PHP示例:
卸载就是删除安装时写入的数据库内容,创建了哪些数据就删除哪些内容。示例代码:
<?php
if(!defined('InEmpireCMS'))
{
exit();
}
if(file_exists("install.off"))
{
echo"安装程序已锁定。如果要卸载,请删除<b>install.off</b>文件!";
exit();
}
$empire->query("DROP TABLE IF EXISTS `{$dbtbpre}wdzzz`;");
$menuclassr=$empire->fetch1("select classid from {$dbtbpre}enewsmenuclass where classname='代码号插件' limit 1");
$empire->query("delete from {$dbtbpre}enewsmenuclass where classid='$menuclassr[classid]'");
$empire->query("delete from {$dbtbpre}enewsmenu where classid='$menuclassr[classid]'");
?>
首先我们还是判断一下install.off文件,防止误操作。然后删除刚刚创建的wdzzz数据表。
之后删除enewsmenuclass插件菜单数据表内名称等于“代码号插件”的选项。安装的数据就全部删除完了。

本文标签:帝国cms功能开发 

很赞哦! ()

相关源码

  • (自适应响应式)门窗定制门业带视频功能pbootcms模板下载本模板采用PbootCMS内核开发,为门窗制造、定制安装企业打造,通过可视化后台管理系统快速构建品牌官网。自适应设计确保在手机、平板、电脑等设备上均能获得优质浏览体验查看源码
  • (自适应响应式)水墨风白酒酿制酒业酒文化酒类产品网站源码下载本模板基于PbootCMS内核开发,为酒类企业打造的水墨风响应式网站解决方案。采用传统东方美学设计语言,呈现白酒文化底蕴,自适应移动端展示效果,数据实时同步更新,助力酒企建立专业数字化形象。查看源码
  • (自适应多语言)WordPress开源主题MirageV资讯个人博客源码MirageV资讯类个人博客主题源码/WordPress主题/全开源MirageV 是一款开源的 WordPress 主题,支持自适应、暗黑模式、多语言等功能,查看源码
  • pbootcms模板(自适应手机版)红色响应式单位机构类网站自适应响应式单位机构网站模板 | PbootCMS内核开发为机构组织设计的响应式网站模板,采用PbootCMS内核开发,支持一键替换行业内容,满足多元化场景需求。查看源码
  • (自适应手机端)锁锁芯锁具网站pbootcms模板 智能防盗锁网站源码下载本模板基于PbootCMS系统开发,为智能锁具、防盗锁芯及相关安防产品企业设计。采用响应式布局技术,确保在手机、平板和电脑等不同设备上都能获得良好的浏览体验,数据实时同步更新。查看源码
  • 手机软件APP游戏软件下载网站Pbootcms模板(自适应)基于PbootCMS内核深度开发的网站模板,为移动互联网时代打造。无论是手机APP推广、游戏软件展示,还是各类企业官网需求,本模板都能通过简单的图文替换实现行业无缝切换查看源码
分享笔记 (共有 篇笔记)
验证码: