帝国论坛帝国网站管理系统交流区帝国CMS 7.5专版请问关于高效随机调用 【本版专题贴子】  
主题:请问关于高效随机调用 [加入收藏夹]   

thymol
用户头衔:举人

精华贴   :0
发贴数   :94
经验值   :1059
注册时间:2014-12-02
信息 搜索 好友 发送悄悄话 精益求精-帝国网站管理系统7.5正式版开源发布】   [第 1 楼]
请问关于高效随机调用
之前在论坛找的高效随机调用。使用的代码如下:

  
                         $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=200;       //随机数量
                         $randids='';
                         $randdh='';
                         for($i=1;$i<=$randnum;$i++)
                         {
                         $randids.=$randdh.rand($small,$big);
                         $randdh=',';               
                         }
                        
                                                [e:loop={'selfinfo',5,0,0,"id in ($randids)"}]
                                                <?=esub($bqr[title],128,'…')?>
                                                [/e:loop]

现在是按照数据库调用的。但是我一个数据库做了好几个栏目。
现在如果用selfinfo调用,就会调用出来数量很少。
请问在随机代码中,可以限制栏目再进行随机么?




2020-01-24 23:58:35 已设置保密 顶部 回复 引用 报告 编辑 删除

tkf88
用户头衔:探花

精华贴   :0
发贴数   :8628
经验值   :21931
注册时间:2007-05-26
信息 搜索 好友 发送悄悄话 免费开源-EBMA系统:更安全的MYSQL管理和备份系统】   [第 2 楼]

多个栏目用in




2020-01-25 07:46:41 已设置保密 顶部 回复 引用 报告 编辑 删除

thymol
用户头衔:举人

精华贴   :0
发贴数   :94
经验值   :1059
注册时间:2014-12-02
信息 搜索 好友 发送悄悄话 精益求精-帝国网站管理系统7.5正式版开源发布】   [第 3 楼]

高手能详细说一下么?




2020-01-25 12:24:22 已设置保密 顶部 回复 引用 报告 编辑 删除

jiuhecai
用户头衔:探花

精华贴   :0
发贴数   :2986
经验值   :8508
注册时间:2014-07-02
信息 搜索 好友 发送悄悄话 免费开源-EBMA系统:更安全的MYSQL管理和备份系统】   [第 4 楼]

这个随方法本身是有瑕疵的。他要求你的id是连续的。

在多栏目情况下,id的连续性更是遭到破坏。所有更加的不适用。



帝国插件 插件定制。帝国临时工。查杀顽固木马。专业解决难题。qq--110102296
2020-01-26 08:41:15 已设置保密 顶部 回复 引用 报告 编辑 删除

wellonewj
用户头衔:举人

精华贴   :0
发贴数   :78
经验值   :726
注册时间:2007-07-23
信息 搜索 好友 发送悄悄话 精益求精-帝国网站管理系统7.5正式版开源发布】   [第 5 楼]

这个可以设置一个随机数,这个随机数是个ID,然后调用随机出来的ID即可




2020-01-27 13:40:16 已设置保密 顶部 回复 引用 报告 编辑 删除

hibaidu
用户头衔:探花

精华贴   :0
发贴数   :3728
经验值   :11352
注册时间:2010-05-26
信息 搜索 好友 发送悄悄话 免费开源-EBMA系统:更安全的MYSQL管理和备份系统】   [第 6 楼]

要按表才好




2020-01-28 08:09:51 已设置保密 顶部 回复 引用 报告 编辑 删除

tm2014
用户头衔:探花

精华贴   :0
发贴数   :2383
经验值   :6777
注册时间:2014-11-13
信息 搜索 好友 发送悄悄话 精益求精-帝国网站管理系统7.5正式版开源发布】   [第 7 楼]

多随机几个,然后for循环里限制数量




2020-01-31 07:52:42 已设置保密 顶部 回复 引用 报告 编辑 删除

tkf88
用户头衔:探花

精华贴   :0
发贴数   :8628
经验值   :21931
注册时间:2007-05-26
信息 搜索 好友 发送悄悄话 免费开源-EBMA系统:更安全的MYSQL管理和备份系统】   [第 8 楼]

数据库里要是没有随机的数字也查不到数据




2020-02-01 00:11:04 已设置保密 顶部 回复 引用 报告 编辑 删除

csdn2
用户头衔:探花

精华贴   :0
发贴数   :4531
经验值   :13244
注册时间:2013-11-21
信息 搜索 好友 发送悄悄话 精益求精-帝国网站管理系统7.5正式版开源发布】   [第 9 楼]

可以,但随机的信息少




2020-02-02 07:47:04 已设置保密 顶部 回复 引用 报告 编辑 删除

快速回复
内容

表情
使用EBB代码 使用smile代码 显示签名 自动分析url 自动分析img
     【进入高级模式】   (按 Ctrl+Enter 直接提交)
    顶部  加入收藏夹
关于帝国 | 广告服务 | 联系我们 | 法律声明 | 隐私条款 | 许可协议
Powered by: EBB Version 2.2.1