当前位置: 首页 > 编程笔记 >

Yii实现文章列表置顶功能示例

翟英达
2023-03-14
本文向大家介绍Yii实现文章列表置顶功能示例,包括了Yii实现文章列表置顶功能示例的使用技巧和注意事项,需要的朋友参考一下

本文实例讲述了Yii实现文章列表置顶功能的方法。分享给大家供大家参考,具体如下:

我的理解:首先点击获取当前ID,model层查询所有sort字段,遍历数据,得到最大值,修改数据,替换数据,即可。

效果图:

模型层:

//显示列表
public function lists1()
{
    $arr=Yii::$app->db->createCommand("select * from acticle join type on type.t_id=acticle.t_id order by sort desc")->queryall();
    return $arr;
}
//置顶
public function top(){
    $arr=$this::find()->select("sort")->asArray()->all();
    //print_r($arr);die;
    $rows=array();
    foreach($arr as $key=>$v)
    {
      $rows[]=$v['sort'];
    }
    $max=array_search(max($rows),$rows);
    return intval($rows[$max]+1);
  }
  //修改数据
  public function update1($sort,$acticle_id){
    $arr=Yii::$app->db->createCommand()->update("acticle",['sort'=>$sort],['acticle_id'=>$acticle_id]);
    if($arr->execute()){
      return 1;
    }else{
      return 2;
    }
}

控制器:

//文章置顶
public function actionTopq(){
    $acticle_id=$_GET['id'];
    //echo $acticle_id;die;
    //获取最大sort
    $model=new Acticle();
    $sort=$model->top();
    //修改数据
    $row=$model->update1($sort,$acticle_id);
    //echo $row;die;
    if($row==1){
      //替换数据,置顶
      $res1=$model->lists1();
      $art=new Articles();
      $res6=$art->get_right($res1,5);
      return $res6;
    }else{
    return false;
    }
}

视图层:

<!-- 文章列表 -->
<div class="r_230_b ma_b8" style="float:right;right:0;line">
<div class="news_t" ><h2><font color="#d52c99">最新动态</font></h2></div>
<?php echo $res6;?>
</div>
<script>
function topq(ts){
  $.get("index.php?r=index/topq",{id:ts},function(msg){
    $('#sort').html(msg);
    //alert(msg);
  })
}
</script>

更多关于Yii相关内容感兴趣的读者可查看本站专题:《Yii框架入门及常用技巧总结》、《php优秀开发框架总结》、《smarty模板入门基础教程》、《php面向对象程序设计入门教程》、《php字符串(string)用法总结》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总》

希望本文所述对大家基于Yii框架的PHP程序设计有所帮助。

 类似资料:
  • 先在后台选择置顶功能 在模板的排序是用istop,post_modified降序 <div class=""> <php> $lists = sp_sql_posts_paged("cid:$cat_id;order:istop desc , post_modified desc;",10); </php> <volist name="lists['post

  • 本文向大家介绍php实现文章置顶功能的方法,包括了php实现文章置顶功能的方法的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了php实现文章置顶功能的方法。分享给大家供大家参考,具体如下: 昨天客户让做文章置顶的功能。自己以前没做过。靠着同事的指点才做了出来。本来挺简单的事情,被自己搞了好久。自己真的缺乏对程序的理解。还是写篇博客记录一下吧。 第一步,在文章表里面建两个字段,用于做置顶功能

  • 本文向大家介绍Yii使用DbTarget实现日志功能的示例代码,包括了Yii使用DbTarget实现日志功能的示例代码的使用技巧和注意事项,需要的朋友参考一下 一:在配置文件的log组件中配置DbTarget 二:生成日志表 在项目目录下执行如下命令生成日志表 三:使用日志 在需要使用日志的地方使用 四:自定义DbTarget日志 1:首先创建一个自定义的日志表 (1)在项目目录下执行 (2):在

  • 在模版调用推荐功能:recommended,1推荐 0不推荐 我们在模板只要判断recommended等于1时给标题个样式变红就是推荐的文章 <div class="span9"> <div class=""> <php> $lists = sp_sql_posts_paged("cid:$cat_id;order:istop desc , post_modif

  • 本文向大家介绍Ajax+PHP实现的分类列表框功能示例,包括了Ajax+PHP实现的分类列表框功能示例的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了Ajax+PHP实现的分类列表框功能。分享给大家供大家参考,具体如下: 一 代码 conn.php: index.php: type.php: index.js: 二 运行结果 更多关于PHP相关内容感兴趣的读者可查看本站专题:《PHP+aj

  • 本文向大家介绍layUI实现列表查询功能,包括了layUI实现列表查询功能的使用技巧和注意事项,需要的朋友参考一下 layUI可以直接使用本地的json文件进行列表数据渲染,但,我们会发现,官网ctr+c ctr+v 过来的代码在做查询时每次看起来都有列表刷新的动作,但实际操作无效,百度了一大圈也没找到具体的原因,无奈继续回去看官网,后面总结出只有一点,也是大家比较容易忽略的一点: 官网说在查询时