增
模型:
//过滤字段
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>