ci3后台文章的增删改查

模型:

//过滤字段
 protected function filter_field($data)
 {
     $fields = $this->db->list_fields($this->table_name);//获取数据库字段


     foreach($data as $key=>$val){
         if(!in_array($key,$fields)){
             unset($data[$key]);
         }
     }
     return $data;
 }

 //添加
public function addArticle($data){
    $data = $this->filter_field($data);
    $res = $this->db->insert($this->table_name,$data);

    if($res){
        return $this->db->insert_id();
    }else{
        return false;
    }

}

控制器

public function add(){


        //查询栏目
        $cates = $this->cate->get_cate();

        $config['upload_path'] = './uploads/';   //注意:此路劲是相对于CI框架中的根目录下的目录
        $config['allowed_types'] = 'gif|jpg|png';    //设置上传的图片格式
        $config['max_size'] = '500';              //设置上传图片的文件最大值
        $config['max_width']  = '1200';            //设置图片的最大宽度
        $config['max_height']  = '1200';
        $this->load->library('upload', $config);

        # 处理图片上传
        #配置上传相关参数
        if ($this->upload->do_upload('pic')) {
            # 上传成功,获取文件名
            $fileinfo = $this->upload->data();
            $data['pic'] = $fileinfo['file_name'];
            #获取表单提交数据
            $data['title'] = $this->input->post('title');
            $data['cateid'] = $this->input->post('cateid');
            $data['content'] = $this->input->post('content');
            $data['time'] = time();

            if($this->input->post('is_recomend') == 'on'){
                $data['is_recomend']=1;
            }else{
                $data['is_recomend']=0;
            }

            if ($this->article->addArticle($data)) {
                redirect('article/lst');
            }
        }


    $base_url = $this->config->item('base_url');
    $this->load->view('article/add',array('base_url'=>$base_url,'cates'=>$cates));


    }

视图

<form class="form-horizontal" role="form" action="" method="post" enctype="multipart/form-data">

    <div class="form-group">
        <label
                class="col-sm-2 control-label no-padding-right">文章标题</label>
        <div class="col-sm-6">
            <input class="form-control" placeholder="" name="title"
                   type="text">
        </div>
    </div>
    <div class="form-group">
        <label class="col-sm-2 control-label no-padding-right">所属栏目</label>
        <div class="col-sm-6">
            <select name="cateid">
                <option value="">请选择栏目</option>
                <?php foreach ($cates as $key => $val) {?>
                <option value="<?php echo $val['id']; ?>"><?php echo $val['title']; ?></option>
                <?php }?>
            </select>
        </div>
    </div>
    <div class="form-group">
        <label
                class="col-sm-2 control-label no-padding-right">文章缩略图</label>
        <div class="col-sm-6">
            <input class="form-control"  name="pic" id="file_upload"
                   type="file" multiple="true">
        </div>
    </div>



    <div class="form-group">
        <label class="col-sm-2 control-label no-padding-right">文章内容</label>
        <textarea id="newsEditor" name="content" ></textarea>
        <style>
            #newsEditor{
                width:800px;
                margin-left: 200px;
            }
        </style>

    </div>
    <div class="form-group">
        <label class="col-sm-2 control-label no-padding-right">是否推荐</label>
        <div class="col-sm-6">
            <label>
                <input class="checkbox-slider colored-darkorange" name="is_recomend" type="checkbox">
                <span class="text"></span>
            </label>
        </div>
    </div>


    <div class="form-group">
        <div class="col-sm-offset-2 col-sm-10">
            <button type="submit" class="btn btn-default">保存信息</button>
        </div>
    </div>
</form>

模型

//删除
public function delete($id)
{
    return $this->db->delete('blog_article', array('id' => $id));

}

控制器
//删除

public function delete()
{

    $id = $this->uri->segment(4, 0);
    $res = $this->article->delete($id);

    if ($res) {
        redirect('article/lst');
    } else {
        redirect('article/delete');

    }

}

视图

<a href="delete/id/<?php echo $val->id; ?>" class="btn btn-primary btn-sm shiny">
    <i class="fa fa-edit"></i> 删除
</a>

 

模型

//修改
public function status($id,$title,$cateid,$pic,$content,$is_recomend,$time){
    $query = $this->db->where(array('id'=>$id))->update('article',array('title'=>$title,'cateid'=>$cateid,'pic'=>$pic,'content'=>$content,'is_recomend'=>$is_recomend,'time'=>time()));
    return $query;

}

public function getOne($id){
    return $this->db->where(array('id'=>$id))->get($this->table_name)->row_array();
}
控制器
//修改显示

public function edit()
{
    //先查询
    $id = $this->uri->segment(4, 0);
    $data=$this->article->getOne($id);



    //查询栏目
    $cates = $this->cate->get_cate();


    $base_url = $this->config->item('base_url');

    $this->load->view('article/edit',array('base_url'=>$base_url,'data'=>$data,'cates'=>$cates));
}


//执行修改

public function upd(){
    $id=$_POST['id'];

    $title=$_POST['title'];
    $cateid=$_POST['cateid'];
    $content=$_POST['content'];
    $is_recomend=$_POST['is_recomend'];




    if($is_recomend == 'on'){
        $is_recomend = 1;
    }else{
        $is_recomend = 0;
    }

    $time=time();

    $config['upload_path'] = './uploads/';   //注意:此路劲是相对于CI框架中的根目录下的目录
    $config['allowed_types'] = 'gif|jpg|png';
    //设置上传的图片格式
    $config['max_size'] = '500';              //设置上传图片的文件最大值
    $config['max_width']  = '1200';            //设置图片的最大宽度
    $config['max_height']  = '1200';
    $this->load->library('upload', $config);

    if ($this->upload->do_upload('pic')) {
        # 上传成功,获取文件名
        $fileinfo = $this->upload->data();
        $pic = $fileinfo['file_name'];

    }


    $result=$this->article->status($id,$title,$cateid,$pic,$content,$is_recomend,$time);
    if($result){
        redirect('article/lst');
    }else{
        redirect('article/edit');
    }

}

视图

<form class="form-horizontal" role="form" action="/admin.php/article/upd" method="post" enctype="multipart/form-data">
    <input type="hidden" name="id" value="<?php echo $data['id'] ?>"/>

    <div class="form-group">
        <label for="title"
               class="col-sm-2 control-label no-padding-right">文章标题</label>
        <div class="col-sm-6">
            <input class="form-control" name="title" value="<?php echo $data['title']?>"
                    type="text">

        </div>
    </div>

    <div class="form-group">
        <label class="col-sm-2 control-label no-padding-right">所属栏目</label>
        <div class="col-sm-6">
            <select name="cateid">
                <option value="">请选择栏目</option>
                <?php foreach ($cates as $key => $val) {?>

                    <option <?php if ($val['id'] == $data['cateid']): ?> selected="selected" <?php endif; ?> value="<?php echo $val['id']; ?>"><?php echo $val['title']; ?></option>

                <?php }?>
            </select>
        </div>
    </div>


    <div class="form-group">
        <label
                class="col-sm-2 control-label no-padding-right">文章缩略图</label>
        <div class="col-sm-6">
            <input id="pic" placeholder="" name="pic" style="display:inline;" type="file">
            <?php if ($data['pic'] != ''): ?>
             <img src="/uploads/<?php echo $data['pic']; ?>" height="50">
            <?php else: ?>
            <span>暂无缩略图</span>
            <?php endif; ?>
        </div>
    </div>

    <div class="form-group">
        <label class="col-sm-2 control-label no-padding-right">文章内容</label>
        <textarea id="newsEditor" name="content" ><?php echo $data['content']?></textarea>
        <style>
            #newsEditor{
                width:800px;
                margin-left: 200px;
            }
        </style>
    </div>


    <div class="form-group">
        <label class="col-sm-2 control-label no-padding-right">是否推荐</label>
        <div class="col-sm-6">
            <label>
                <input <?php if ($data['is_recomend'] == 1): ?> checked="checked"<?php endif; ?> class="checkbox-slider colored-darkorange" name="is_recomend" type="checkbox">
                <span class="text"></span>
            </label>
        </div>
    </div>


    <div class="form-group">
        <div class="col-sm-offset-2 col-sm-10">
            <button type="submit" class="btn btn-default">保存信息</button>
        </div>
    </div>
</form>

 

控制器

public function lst()
{

       $page_num = '3';//每页的数据
       $data= $this->Page_Model->page('blog_article',$page_num,$this->uri->segment(3));
       $total_nums=$data['total_nums']; //这里得到从数据库中的总页数
       $data['query']=$data[0]; //把查询结果放到$data['query']中
       $this->load->library('pagination');


       $config['base_url'] = $this->config->base_url('admin.php/article/lst');
       $config['total_rows'] = $total_nums;//总共多少条数据
       $config['per_page'] = $page_num;//每页显示几条数据

       $config['full_tag_open'] = '<ul class="pagination">';


       $config['full_tag_open'] = '<p>';
       $config['full_tag_close'] = '</p>';
       $config['first_link'] = '首页';
       $config['first_tag_open'] = '<span>';//“第一页”链接的打开标签。
       $config['first_tag_close'] = '</span>';//“第一页”链接的关闭标签。
       $config['last_link'] = '末页';//你希望在分页的右边显示“最后一页”链接的名字。
       $config['last_tag_open'] = '<span>';//“最后一页”链接的打开标签。
       $config['last_tag_close'] = '</span>';//“最后一页”链接的关闭标签。
       $config['next_link'] = '下一页';//你希望在分页中显示“下一页”链接的名字。
       $config['next_tag_open'] = '<span>';//“下一页”链接的打开标签。
       $config['next_tag_close'] = '</span>';//“下一页”链接的关闭标签。
       $config['prev_link'] = '上一页';//你希望在分页中显示“上一页”链接的名字。
       $config['prev_tag_open'] = '<span>';//“上一页”链接的打开标签。
       $config['prev_tag_close'] = '</span>';//“上一页”链接的关闭标签。
       $config['cur_tag_open'] = '<span class="current">';//“当前页”链接的打开标签。
       $config['cur_tag_close'] = '</span>';//“当前页”链接的关闭标签。
       $config['num_tag_open'] = '<span>';//“数字”链接的打开标签。
       $config['num_tag_close'] = '</span>';

       $this->pagination->initialize($config);



       $base_url = $this->config->item('base_url');

       $this->load->view('article/lst',array('base_url'=>$base_url,'data'=>$data['query']));
}

视图

<div class="flip-scroll">
    <table class="table table-bordered table-hover">
        <thead class="">
        <tr>
            <th class="text-center">ID</th>
            <th class="text-center">所属栏目</th>
            <th class="text-center">文章标题</th>
            <th class="text-center">缩略图</th>
            <th class="text-center">是否推荐</th>
            <th class="text-center">操作时间</th>
            <th class="text-center">操作</th>
        </tr>
        </thead>
        <tbody>
        <?php foreach ($data as $key => $val ) {?>
            <tr>
                <td align="center"><?php echo $val->id; ?></td>
                <td align="center">
                    <?php
                     if($val->cateid == 7){
                         echo "游戏英雄";
                     }elseif ($val->cateid == 6){
                         echo "美女";
                     }elseif ($val->cateid == 5){
                         echo "超跑";
                     }

                    ?>
                </td>
                <td align="center"><?php echo $val->title; ?></td>
                <td align="center">
                <?php if ($val-> pic != ''): ?>

                    <img src="/uploads/<?php echo $val->pic; ?>" height="50">
                    <?php else: ?>
                    暂无缩略图
                    <?php endif; ?>

                </td>

                <td align="center">
                    <?php if ($val-> is_recomend == 1): ?>

                    已推荐
                    <?php else: ?>
                    未推荐
                    <?php endif; ?>
                </td>


                <td align="center"><?php echo date('Y-m-d H:i:s', $val->time); ?></td>

                <td align="center">
                    <a href="edit/id/<?php echo $val->id; ?>" class="btn btn-primary btn-sm shiny">
                        <i class="fa fa-edit"></i> 编辑
                    </a>
                    <a href="delete/id/<?php echo $val->id; ?>" class="btn btn-primary btn-sm shiny">
                        <i class="fa fa-edit"></i> 删除
                    </a>
                </td>
            </tr>
        <?php }?>

        </tbody>

    </table>

</div>


<div class="pagination">
    <?php echo $this->pagination->create_links();?>
</div>

 

 

 

 

 

 

 

 

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值