帝国cms高效的随机调用 拒绝使用低效的rand
类别:建站知识   时间:10-20

<p>猜你喜欢</p>
                        <span class="news_rules_links">
                        <?php
                         $sid=$empire->fetch1("SELECT id FROM {$dbtbpre}ecms_".$class_r[$classid][tbname]." where classid={$classid} order by id asc limit 1");
                         $bid=$empire->fetch1("SELECT id FROM {$dbtbpre}ecms_".$class_r[$classid][tbname]." where classid={$classid} order by id desc limit 1");
                         $small=$sid[id];
                         $big=$bid[id];
                         $randnum=10;       //随机数量
                         $randids='';
                         $randdh='';
                         for($i=1;$i<=$randnum;$i++)
                         {
                         $randids.=$randdh.rand($small,$big); 
                         $randdh=',';                
                         }
                         ?>
                        [e:loop={'selfinfo',10,0,0,"id in ($randids)"}]
                        <a class="formsubmit" target="_blank" href="<?=$bqsr['titleurl']?>"><?=esub($bqr[title],30)?></a>
                        [/e:loop]
                        </span>

{$dbtbpre}ecms_news where classid=15
{$dbtbpre}ecms_news是数据表名
classid是栏目ID


本随机调用,仅适用于内容页
尤其注意 limit 1    可大幅提高sql效率

智慧半岛,是一家专注于青岛网站建设青岛网站开发的青岛网络公司,Copyright ©2007-2019 Ebandao.Cn 版权所有 All Rights Reserved.(建议在1366x768以上的浏览器中访问)鲁ICP备08014496号

13153297890