>php教程 >php手册 >简单的博客和分类关联代码(20140509更新)

简单的博客和分类关联代码(20140509更新)

WBOY
WBOY원래의
2016-06-07 11:42:091646검색

关联代码,包括修改,分页,获取,增加,删除,修改,由于我是新手,写的不是很好,求高手指点修正:)
控制器代码(是Action里的 IndexAction.class.php):<?php <br /> class IndexAction extends Action {<br>     //实例化博客,还有关联分类在Model里<br>     public function index(){<br>            //实例公共模型类<br>            $Blog=D('Blog');<br>            //调用分页类<br>            import('ORG.Util.Page');<br>            //统计分页<br>            $count = $Blog->count();<br>            //创建分页数<br>            $Page = new Page($count,5);<br>            //分页输出<br>            $show = $Page->show();<br>            //赋值给关联查询,并且倒序输出<br>            $list=$Blog->relation(true)->order('id DESC')->limit($Page->firstRow.','.$Page->listRows)->select();<br>            //赋值给列表标签<br>            $this->assign('list',$list);<br>            //赋值给分页标签<br>            $this->assign('page',$show);<br>            //创建视图<br>            $this->display();<br>     }<br>     <br>     //删除博客<br>     public function del(){<br>                 // 在模版里修改地址是 __APP__/你的文件(INDEX或者ADMIN)/del/id/{$x.id}<br>          //视图$_GET提交ID<br>          $id =$_GET['id'];<br>          //其中ID传值,如果不写$where,而是$id 会把整个数据<br>          $where = array('id' => $id);<br>          //判断博客删除<br>          if (M('Blog')->where($id)->delete()) {<br>             $this->success('删除成功');<br>          } else {<br>              $this->error('删除失败');   <br>          }  <br>          <br>    }<br>   <br>     //增加博客<br>     Public function add () {<br>     //显示修改数据<br>     $this->cate =$cate = M('cate')->select();<br>     //组装主表数据<br>     $id = $_POST['id'];<br>     $cid = $_POST['cid'];<br>     //tutle博客标题 content博客内容 cid 父级分类关联 cate<br>     $data = array(<br>             'title' => $_POST['title'],<br>             'content' => $_POST['content'],<br>             'cid' => $cid,<br>         );<br>         //增加新数据<br>         if ($bid = M('blog')->add($data)) {<br>                 if (isset($_POST['cid'])) {<br>                     $this->success('添加成功','index');<br>                 } else {<br>                     $this->error('添加失败'); <br>                 } <br>                 } <br>           //创建增加视图     <br>           $this->display();<br>     }<br> <br>     //修改<br>     Public function mod () {<br>                          // 在模版里修改地址是 __APP__/你的文件(INDEX或者ADMIN)/mod/id/{$x.id}<br>         $id=$_GET['id'];<br>         if(!empty($id)){<br>             //获取博客文章标题和内容<br>             $art=M('Blog');<br>             $date=$art->getById($id);<br>             //赋值给博客标签datas<br>             $this->assign('datas',$date);<br>             //获取分类<br>             $cat=M('cate');<br>             $list=$cat->select();<br>             //复制给分类标签clist<br>             $this->assign('clist',$list);<br>         }<br>         //创建修改模版视图<br>         $this->display();<br>     }<br> <br>     //修改提交处理<br>     public function update(){<br>         //create方法<br>         $Form= M('blog');<br>         if($Form->create()) {<br>         $result = $Form->save();<br>         if($result) {<br>              //如果修改成功,跳转到首页<br>              $this->success('操作成功!','index');<br>         }else{<br>              //否则修改错误<br>              $this->error('写入错误!');<br>         } <br>              //否则系统异常错误<br>         }else{<br>         $this->error($Form->getError());<br>         }<br>     }<br> } 模型代码(是Model里的 ,文件名BlogModel.class.php):<?php <br /> class BlogModel extends RelationModel{<br>     protected $_link = array(<br> <br>          'Cate'=>array(<br>               'mapping_type'=> BELONGS_TO,<br>               'class_name'=>'Cate',<br>               'mapping_name'=>'Cate',<br>               'foreign_key'=>'cid',<br>               //只获取关联里name内容<br>               'mapping_fields'=>'name',<br>               //把关联的name拿到父级上<br>               'as_fields'=>'name',<br>               //'as_fields' =>'id:uid,title,name',<br> <br>              ),<br>     <br>     );}<br>     <br> ?>

AD:真正免费,域名+虚机+企业邮箱=0元

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
이전 기사:3.1路由支持自定义다음 기사:图片上传