帝国cms教程

帝国CMS高效重复调用上一篇下一篇SQL写法

精准像素 2022-05-16 人阅读

分享一段更高效的帝国CMS调用上一篇下一篇方法,支持重复多次调用,但只查一次数据库。

查询SQL

<?php
//上下翻页
$goPage = [
    'prev'        => ['text' => '上一题'],
    'next'         => ['text' => '下一题']
];
$sql = $empire->query("(SELECT titleurl, id, title FROM `{$dbtbpre}ecms_news` WHERE `id` < " . $navinfor['id'] . " AND `classid` = " . $navinfor['classid'] . " ORDER BY `id` DESC LIMIT 1) UNION (SELECT titleurl, id, title FROM `{$dbtbpre}ecms_news` WHERE `id`> " . $navinfor['id'] . " AND `classid` = " . $navinfor['classid'] . " ORDER BY `id` LIMIT 1)");
if(0 < $empire->num1($sql)) {
        while($r = $empire->fetch($sql)){
        $key = isset($r['id']) && $r['id'] > $navinfor['id'] ? 'next' : 'prev';
        $goPage[$key]['title']                 = $r['title'];
        $goPage[$key]['titleurl']         = sys_ReturnBqTitleLink($r);
        }
}
?>

显示代码

   <?php foreach($goPage as $type => $page):?>
   
      <div class="col-sm-6 mb-5">
        <div class="card">
          <div class="card-body position-relative">
                      <?php if(isset($page['title'])):?>
                      <a href="<?php echo $page['titleurl'];?>" tltle="<?php echo $page['title'];?>" class="btn btn-danger stretched-link"><?php echo $page['text'];?></a>
                      <?php else:?>
                      <a href="javascript:;" class="btn btn-primary disabled" role="button" aria-disabled="true"><?php echo $page['text'];?></a>
                      <?php endif;?>
            
          </div>
        </div>
      </div>
    <?php endforeach;?>
相关推荐
  • SQL语法
  • sql语句
  • 帝国CMS一键清空栏目数据+模型数据表SQL语法

    帝国CMS清空数据有两种方法,第一种方法是帝国CMS后台自带的清空数据功能,第二种是SQL方法帝国CMS后台清空数据功能点击后台的“栏目”-左侧菜单“其他相关”-打开“批量删除信息”帝国CMS一键清空栏目数据+模型数据表SQL语法截图后台自带的批量删除功...

    帝国cms教程 157 11个月前
  • SQL求和语法详解

    SQL求和语法select sum(price),count(id) from order ;查询得到price列的和,以及记录数。该SQL中sum(price)是求列price的总和,count(id)是根据查询到的ID数量得到的数据总行数。count(id)要比count(*)查询速度更快更节约资源。SQL求和语法案列我们看...

    数据库教程 112 1年前
  • sql两个求表的差语法

    sql求两个表t1和t2,表中只有一个字段c1。求两个表的差。即存在于t1,但不存在于t2中的记录。方法1.select c1 from t1 where c1 not in (select c1 from t2)方法2.select c1 from t1 where not exists(select * from t2 where t1.c1=t2.c1)方法3.select...

    数据库教程 138 1年前
  • 苹果cms批量删除SQL语法

    收集整理苹果CMS常用批量删除相关的SQL语句,使用方法在苹果cms后台=》数据库=》执行SQL语句就可以了。删除所有数据DELETE FROM {pre}vod删除指定ID为1000的数据DELETE FROM {pre}vod WHERE d_id=1000删除d_starring字段里有"刘德华"的数据DELETE FRO...

    苹果cms教程 249 2年前
  • 帝国CMS批量替换栏目路径SQL

    将栏目路径清空SQL语句UPDATE phome_enewsclass SET classpath='';UPDATE phome_enewsclass SET classpath=concat(classpath,'html/',classid);

    帝国cms教程 166 3年前
  • SQL清空某字段的值

    网上找了好多文章才发现,主要是好多都是错了,试了很多。最开始找到是这段,网上都说等于null是对的update tablename set temp=null但测试等于null是不行的,直接报错。update px_dp_tagsadd set py="";网上都说不能等于空,但我测试发现等于等于空才是对的...

    经验分享 1181 3年前