tp3后台栏目的增删改查

模型

<?php
namespace Admin\Model;
use Think\Model;
class CategoryModel extends Model {

   protected $_validate = array(
      array('cate_name','require','栏目名称必填!',1,regex,3), //默认情况下用正则进行验证
   );
    
   public function catetree(){
      $data=$this->select();


      return $this->resort($data);
   
   }
   
   public function resort($data,$parentid=0,$level=0){
      static $ret=array();
      foreach($data as $k=>$v){
         if($v['parentid']==$parentid){
            $v['level']=$level;
            $ret[]=$v;
            $this->resort($data,$v['cate_id'],$level+1);
         }
      }
      
      return $ret;
   
   }

}

控制器

public function add(){
   $cate=D('category');
   if(IS_POST){
      $data['cate_name']=I('cate_name');
      $data['cate_ename']=I('cate_ename');
      $data['parentid']=I('parentid');

      if($cate->create($data)){
               if($cate->add()){
                   $this->success('栏目新增成功',U('lst'));
               }else{
                   $this->error('栏目新增失败!');
               }
      }else{
         $this->error($cate->getError());
      }
      
   
      return;
   }

   $cateres=$cate->catetree();
       $this->assign('cateres',$cateres);
       $this->display();
   }

视图

<form method="post" action="" enctype="multipart/form-data">
   <table class="tbl" width="100%" border="0" cellpadding="0" cellspacing="1" bgcolor="#a8c7ce" onmouseover="changeto()"  onmouseout="changeback()">

     <tr>
       <td height="20" bgcolor="#FFFFFF" class="STYLE6" align="right">栏目名称</td>
       <td height="20" bgcolor="#FFFFFF" class="STYLE19" align="left"><input name="cate_name" type="text" /></td>
</tr>
   
   <tr>
       <td height="20" bgcolor="#FFFFFF" class="STYLE6" align="right">英文名称</td>
       <td height="20" bgcolor="#FFFFFF" class="STYLE19" align="left"><input name="cate_ename" type="text" /></td>
</tr>

   <tr>
       <td height="20" bgcolor="#FFFFFF" class="STYLE6" align="right">上级栏目</td>
       <td class="cd" height="20" bgcolor="#FFFFFF" class="STYLE19" align="left">
       <select name="parentid">
       <option value="0">顶级栏目</option>
       <volist name="cateres" id="vo">
           <option value="{$vo.cate_id}"><?php echo str_repeat('-',$vo[level]*8);?>{$vo.cate_name}</option>
       </volist>
       </select>
       
       </td>
</tr>

   <tr>
       <td height="20" colspan="2" bgcolor="#FFFFFF" class="STYLE6" align="center"><input type="submit" value="确定添加" /></td>
       
</tr>
   </table>
   </form>

控制器

public function del($cate_id){
   $cate=D('category');
   if($cate->delete($cate_id)){
      $this->success('删除栏目成功!',U('lst'));
   }else{
      $this->error('删除栏目失败!');
   }

}

视图

<a href="__CONTROLLER__/del/cate_id/{$vo.cate_id}" onclick="return confirm('您确定要删除该栏目吗?');">删除</a>

控制器

public function edit($cate_id){
   $cate=D('category');
   
   if(IS_POST){
      $data['cate_id']=I('cate_id');
      $data['cate_name']=I('cate_name');
      $data['cate_ename']=I('cate_ename');

      $data['parentid']=I('parentid');

      if($cate->create($data)){
      if($cate->save()){
         $this->success('栏目修改成功',U('lst'));
      }else{
         $this->error('栏目修改失败!');
      }
      }else{
         $this->error($cate->getError());
      }
      
   
      return;
   }
   
   $cateresa=$cate->find($cate_id);
   $this->assign('cateresa',$cateresa);


   $cateres=$cate->catetree();
   $this->assign('cateres',$cateres);
       $this->display();
   }

视图

<form method="post" action="" enctype="multipart/form-data">
   <input type="hidden" name="cate_id" value="{$cateresa.cate_id}" />
   <table class="tbl" width="100%" border="0" cellpadding="0" cellspacing="1" bgcolor="#a8c7ce" onmouseover="changeto()"  onmouseout="changeback()">

     <tr>
       <td height="20" bgcolor="#FFFFFF" class="STYLE6" align="right">栏目名称</td>
       <td height="20" bgcolor="#FFFFFF" class="STYLE19" align="left"><input name="cate_name" type="text" value="{$cateresa.cate_name}" /></td>
</tr>
   
   <tr>
       <td height="20" bgcolor="#FFFFFF" class="STYLE6" align="right">英文名称</td>
       <td height="20" bgcolor="#FFFFFF" class="STYLE19" align="left"><input name="cate_ename" type="text" value="{$cateresa.cate_ename}" /></td>
</tr>
   
    <tr>
       <td height="20" bgcolor="#FFFFFF" class="STYLE6" align="right">上级栏目</td>
       <td class="cd" height="20" bgcolor="#FFFFFF" class="STYLE19" align="left">
       <select name="parentid">
       <option value="0">顶级栏目</option>
       <volist name="cateres" id="vo">
       <option <if condition="$cateresa[cate_id] eq $vo[cate_id]">style="display:none;"</if>  <if condition="$cateresa[parentid] eq $vo[cate_id]"> selected="selected"</if>  value="{$vo.cate_id}"><?php echo str_repeat('-',$vo[level]*8);?>{$vo.cate_name}</option>
       </volist>
       </select>
       
       </td>
</tr>

   <tr>
       <td height="20" colspan="2" bgcolor="#FFFFFF" class="STYLE6" align="center"><input type="submit" value="确定修改" /></td>
       
</tr>
   </table>
   </form>

控制器

public function lst(){
   $cate=D('category');
   $cateres=$cate->catetree();
   $this->assign('cateres',$cateres);
       $this->display();
   }

视图

<volist name="cateres" id="vo">
  <tr>
    <td height="20" bgcolor="#FFFFFF"><div align="center">
      <input type="checkbox" class="selall" name="bdel[]" value="{$vo.cate_id}" />
    </div></td>
    <td height="20" bgcolor="#FFFFFF" class="STYLE6"><div align="center"><span class="STYLE19">{$vo.cate_id}</span></div></td>
    <td height="20" bgcolor="#FFFFFF" class="STYLE19" align="left" style="padding-left:5px;"><?php echo str_repeat('-',$vo[level]*8);?>{$vo.cate_name}</td>

    <td height="20" bgcolor="#FFFFFF" class="STYLE19"><div align="center">{$vo.parentid}</div></td>
    <td height="20" bgcolor="#FFFFFF"><div align="center" class="STYLE21"><a href="__CONTROLLER__/edit/cate_id/{$vo.cate_id}">修改</a> | <a href="__CONTROLLER__/del/cate_id/{$vo.cate_id}" onclick="return confirm('您确定要删除该栏目吗?');">删除</a></div></td>
  </tr>
  </volist>

猜你喜欢

转载自blog.csdn.net/qq_40270754/article/details/84891239
tp3