前端到後臺ThinkPHP開發整站(1)

一、前言:
 我我的歷來沒有寫過博客文章,做爲一個程序員沒有本身的博客算是一個合格的程序員,因此我地想一想也要經營起一個的博客,作一個小項目,寫這博客算就作這個項目的一個項目筆記吧!如今自學着ThinkPHP,就藉此框架作一個CMS系統。廢話很少說了,趕忙進入學習了。
 
二、需求分析:
 功能分析:
  1、登陸退出功能。
  2、菜單功能:涉及前端菜單導航設置。
  3、文章管理:文章編寫,編輯插件掌握,異步圖片上傳。
  4、推薦位管理:讓用戶自行設定首頁推薦文章顯示的設定。
  5、用戶管理:管理後臺登陸的用戶和權限管理。
  6、基本管理:也就是配置管理,用於修改操做網站的頭部關鍵字,和設置是否進行生成緩存與是否自動備份數據庫。前端

三、表設計:程序員

CREATE DATABASE `tp_cms`;

CREATE TABLE `cms_admin`(
	`admin_id` mediumint(6) unsigned NOT NULL AUTO_INCREMENT,
	`user_name` varchar(20) not null default '' COMMENT '管理員ID',
	`password` varchar(32) not null default '' COMMENT '密碼',
	`last_login_ip` varchar(15) default '0' COMMENT '最後登陸IP',
	`last_login_time` int(10) unsigned default '0' comment '最後登陸時間',
	`email` varchar(40) default '' comment '郵箱地址',
	`real_name` varchar(50) not null default '' comment '真實姓名',
	`status` tinyint(1) not null default '1' comment '狀態',
	primary key (`admin_id`),
	key `user_name` (`user_name`)
)COMMENT='後臺用戶表' ENGINE=MyISAM AUTO_INCREMENT=1 DEFAULT CHARSET=utf8;


create table `cms_menu` (
	`menu_id` smallint(6) unsigned not null auto_increment comment '菜單ID',
	`name` varchar(40) not null default '' comment '菜單名',
	`parentid` smallint(6) not null default '0' comment '父級菜單',
	`m` varchar(20) not null default '',
	`c` varchar(20) not null default '',
	`f` varchar(20) not null default '',
	`listorder` smallint(6) unsigned not null default '0' comment '序號',
	`status` tinyint(1) unsigned not null default '1' comment '狀態',
	`type` tinyint(1) unsigned not null default '0' comment '類型',
	primary key (`menu_id`),
	key `listorder` (`listorder`),
	key `parentid` (`parentid`),
	key `module` (`m`,`c`,`f`)
)COMMENT='菜單表' ENGINE=MyISAM AUTO_INCREMENT=1 DEFAULT CHARSET=UTF8;


create table `cms_news` (
	`news_id` mediumint(8) unsigned not null auto_increment comment '新聞ID',
	`catid` smallint(5) unsigned not null default '0' comment '欄目ID',
	`title` varchar(80) not null default '標題',
	`small_title` varchar(30) not null default '小標題',
	`title_font_color` varchar(250) default null comment '標題顏色',
	`thumb` varchar(100) not null default '' comment '主題',
	`keywords` char(40) not null default '' comment '關鍵字',
	`description` varchar(250) not null comment '文章描述',
	`listorder` tinyint(3) unsigned not null default '0' comment '序號',
	`status` tinyint(1) not null default '1' comment '狀態',
	`copyfrom` varchar(250) default null comment '文章來源',
	`user_name` char(20) not null comment '用戶',
	`create_time` int(10) unsigned not null default '0' comment '建立時間',
	`update_time` int(10) unsigned not null default '0' comment '更新時間',
	`count` int(10) unsigned not null default '0' comment '總數',
	primary key (`news_id`),
	key `listorder`(`listorder`),
	key `catid`(`catid`)
)COMMENT='新聞文章主表' ENGINE=MyISAM AUTO_INCREMENT=1 DEFAULT CHARSET=UTF8;


create table `cms_news_content`(
	`id` mediumint(8) unsigned not null auto_increment comment 'Id',
	`news_id` mediumint(8) unsigned not null comment '新聞ID',
	`content` mediumtext not null comment '內容',
	`create_time` int(10) unsigned not null default '0' comment '建立時間',
	`update_time` int(10) unsigned not null default '0' comment '更新時間',
	primary key (`id`),
	key `news_id` (`news_id`)
)COMMENT='新聞文章內容副表' ENGINE=MyISAM AUTO_INCREMENT=1 DEFAULT CHARSET=UTF8;


create table `cms_position`(
	`id` smallint(5) unsigned not null auto_increment comment 'id',
	`name` char(30) not null default '' comment '名稱',
	`status` tinyint(1) not null default '1' comment '狀態',
	`description` char(100) default null comment '描述',
	`create_time` int(10) unsigned not null default '0' comment '建立時間',
	`update_time` int(10) unsigned not null default '0' comment '更新時間',
	primary key (`id`)
)COMMENT='推薦位管理表' ENGINE=MyISAM AUTO_INCREMENT=1 DEFAULT CHARSET=UTF8;


create table `cms_position_content`(
	`id` smallint(5) unsigned not null auto_increment comment 'id' comment 'id',
	`positon_id` int(5) unsigned not null comment '推薦表ID',
	`title` varchar(30) not null default '' comment '標題',
	`thumb` varchar(100) not null default '' comment '主題',
	`url` varchar(100) default null comment '地址',
	`news_id` mediumint(8) unsigned not null comment '新聞ID',
	`listorder` tinyint(3) unsigned not null default '0' comment '排序ID',
	`status` tinyint(1) not null default '1' comment '狀態',
	`create_time` int(10) unsigned not null default '0' comment '建立時間',
	`update_time` int(10) unsigned not null default '0' comment '更新時間',
	primary key (`id`),
	key `positon_id` (`positon_id`)
)COMMENT='推薦位內容表' ENGINE=MyISAM AUTO_INCREMENT=1 DEFAULT CHARSET=UTF8;

  今天第一天寫到這裏,已經22點33分了,不要熬夜容易長痘,今天先把表設計好,明天進行編碼!sql

相關文章
相關標籤/搜索