thinkphp 索引功能,文章标题和文章内容分离,优化数据库效果 插入数据库 【1】

来源:互联网 发布:java的封装性是通过 编辑:程序博客网 时间:2024/06/05 08:43



一般,用数据库查询功能的时候,一般我们建立文章的表要建立 主表, 和副表, 有利于文章的搜索,   下面简历了连个表,

 news  这张 表是存放,文章的大致的信息的,比如,news_id , 文章的标题, 谁建立的文章, 创建的日期;  content  这张表是建立拿来存放文章的, 包括了: 内容, 和  news_id ,   这边的重点是一定要简历news_id  这张表, 因为,我们两张表之间是需要有联系的, 我们就把 news_id  当做我们的引路人。


top  1 , 插入文章:

public function add(){if($_POST){if(!isset($_POST['title']) || !$_POST['title']){return show(0,"标题没有填写朋友");}if(!isset($_POST['small_title']) || !$_POST['small_title']){return show(0,"短标题没有填写朋友");}if(!isset($_POST['catid']) || !$_POST['catid']){return show(0,"文章栏目不存在");}if(!isset($_POST['content']) || !$_POST['content']){return show(0,"请提交您的文章");}/* * 修改的时候, 直接提交到 */if($_POST['news_id']) {                return $this->save($_POST);            }            $newsId = D('News')->insert($_POST);                                    /*             * 下面操作我们的附表             */            if($newsId){            $newsContentData['content'] = $_POST['content'];            $newsContentData['news_id'] = $newsId;            $CID = D('NewsContent')->insert($newsContentData);            if($CID){            return show(1,"文章新增成功!!");            }else{            return show(0,'主表插入成功文章新增失败了');            }                }else{            return show(0,"新增失败");            }}

朋友们,不要慌, 一点点讲解, 包学包会:  上面的一部分, 是保存的文章的基本信息, 最为关键的是 $ newsId 返回的值 就是我们的   news_id  , 我们需要这个  引路人指引我们去插入下面的另外的一张表。

贴上  MOdel 层的代码,就是  我们 大 D  的‘News’

public function insert($data = array()){if(!$data || !is_array($data)){return 0;}$data['create_time']  = time();$data['username'] =  getLoginUsername();return $this->_db->add($data);}

记住了, return  的是id 

在, 第一个代码中, 后面一部分代码是  插入附表的代码,   用$newsContentData  储存我们需要插入附表中的内容, 然后在Model 层中插入到数据库,在此, 插入功能结束


0 0
原创粉丝点击