我们需要加载此插件时,就立刻建立自己的数据表,以供我们使用
guestbook
config.php
guestbook.sql
config.php
GuestbookPlugin.php
data
GuestbookPlugin.php
<?php
namespace plugins\guestbook;
use cmf\lib\Plugin;
use think\Db;
class GuestbookPlugin extends Plugin
{
public $info = array(
'name' => 'Guestbook',
'title' => '留言板',
'description' => '留言板描述',
'status' => 1,
'author' => 'duan',
'version' => '1.0'
);
public $hasAdmin = 1;//插件是否有后台管理界面
// 插件安装
public function install()
{
$dbConfig = Config('database');
$dbSql = cmf_split_sql(PLUGINS_PATH . 'guestbook/data/guestbook.sql', $dbConfig['prefix'], $dbConfig['charset']);
if (empty($dbConfig) || empty($dbSql)) {
$this->error("非法安装");
}
$db = Db::connect($dbConfig);
foreach ($dbSql as $key => $sql) {
$db->execute($sql);
}
return true;//安装成功返回true,失败false
}
// 插件卸载
public function uninstall()
{
$dbConfig = Config('database');
$sql = "DROP TABLE IF EXISTS " . $dbConfig['prefix'] . "plugin_sy_guestbook";
if (empty($dbConfig) || empty($sql)) {
$this->error("非法安装");
}
$db = Db::connect($dbConfig);
try {
$db->execute($sql);
} catch (\Exception $e) {
return false;
}
return true;//卸载成功返回true,失败false
}
}
data/config.php
直接利用公共的数据库配置文件
<?php
/**
* 配置文件
*/
if(file_exists(CMF_ROOT."data/conf/database.php")){
$database=include CMF_ROOT."data/conf/database.php";
}else{
$database=[];
}
return $database;
data/guestbook.sql
SET FOREIGN_KEY_CHECKS=0; -- ---------------------------- -- Table structure for cmf_plugin_sy_guestbook -- ---------------------------- DROP TABLE IF EXISTS `cmf_plugin_sy_guestbook`; CREATE TABLE `cmf_plugin_sy_guestbook` ( `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '留言ID号', `name` varchar(50) DEFAULT NULL COMMENT '留言者姓名', `tel` varchar(15) DEFAULT NULL COMMENT '留言者电话', `fax` varchar(15) DEFAULT NULL COMMENT '留言者传真', `email` varchar(50) DEFAULT NULL COMMENT '留言者邮箱', `qq` varchar(15) DEFAULT NULL COMMENT '留言者QQ号', `subject` varchar(255) DEFAULT NULL COMMENT '留言标题', `message` text COMMENT '留言信息', `isread` tinyint(2) DEFAULT '1' COMMENT '是否查看过', `update_time` int(10) DEFAULT NULL COMMENT '更新时间', `create_time` int(10) DEFAULT NULL COMMENT '创建时间', PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8mb4; -- ---------------------------- -- Records of cmf_plugin_sy_guestbook -- ---------------------------- SET FOREIGN_KEY_CHECKS=1;
现在如果重新安装此插件,可以到数据库查看具体信息了

首先感谢WelkinVan 他写的《ThinkCMF5从入门到精通》给了我很多帮助
点击去《ThinkCMF5从入门到精通》
0.话题发布后没及时显示,请联系官方QQ群管理;
1.话题支持代码,qq截屏直接粘贴,和QQ群一样;
2.问题描述清,比如服务器版本,程序版本;
3.能上代码,就不用文字;
4.把问题发到话题后再发QQ群;
5.如果感觉回复者解答的不错,可以发红包!
6.多帮助别人也是对自己的锻炼!
7.付费讨论中只有提问者和付费用户才可以查看回复
1.评论积分+1;每天最多10次奖励
2.发布话题积分+1;每天最多5次奖励
3.垃圾评论积分-500;
4.黄色,暴力,违反我国法律评论直接封号