业务经理

微信扫描以上二维码

028-61286886

技术咨询

查询判断当前登录用户是否收藏了这篇文章

迅睿框架 更新 2020-11-25 15:39:48 Booid.com

模板标签里面

查询判断当前登录用户是否收藏了这篇文章?用 table 查询吗?

这个操作走了缓存吗?每篇文章都查一次哦?好痛苦!感觉很消耗资源


{table table=1_news_favorite uid=$member.id cid=$id}

{$t.id}

{/table}



方案

  • 易学习 #1 · 2019-11-29 16:38:10
    满意答案
    用自定义函数,然后做缓存
  • 黄老邪 #2 · 2019-11-29 16:38:41

    {table table=1_news_favorite uid=$member.id cid=$id cahe=缓存时间}

    {$t.id}

    {/table}

  • Booid.com #3 · 2019-11-29 16:44:46
    易学习我用了自定义函数,但是出来就系统报错
     {function name=my_favorites param=$member.id cache=0 return=f}{$f}{/function}
    function my_favorites($id) {
        // 这里是写查询
    	$rt = \Phpcmf\Service::M()->db->table('dr_1_news_favorite')->where('uid', $id)->get();
    	if ($rt) {
    	  $rows = $rt->getResultArray();
    	  return $rows; 
    	}
    }
  • Booid.com #4 · 2019-11-29 16:51:02
    楼上我想过了,不过可能当时没转弯过来,善用数组的话,就简单了
    {table table=1_news_favorite uid=$member.id  cache=3600}
    {php $my_favorites[] = $t.cid;}
    {/table}
    <?php
      if(in_array($cid, $my_favorites)){  
    
      echo '在数组中存在';
    
      } else {  
    
      echo '在数组中不存在';
    
      }
    ?>
  • 易学习 #5 · 2019-11-29 17:04:24
    {function name=my_favorites param=$member.id,$id cache=1110 return=f}
    {if $f}
    ok
    {else}
    no
    {/if}
    {/function}
    function my_favorites($param) {
    // 这里是写查询
    list($uid, $cid) = explode($param);
    return \Phpcmf\Service::M()->table('dr_1_news_favorite')->where('uid', (int)$uid)->where('cid', (int)$cid)->counts();;
    }
  • Booid.com #6 · 2019-11-29 17:09:13
    易学习我试过了,已收藏还是会显示 NO ,不然我也不会提问了,就觉得好奇怪!
  • Booid.com #7 · 2019-11-29 17:10:16
    易学习出来的值永远是 0
  • 易学习 #8 · 2019-11-29 17:11:50
    实测有效的
  • 易学习 #9 · 2019-11-29 17:15:25
    {function name=my_favorites param=1,2 cache=1110 return=f}
    {if $f}
    ok
    {else}
    no
    {/if}
    {/function}
    Booid.com用死数据测试,1表示用户id,2表示文章id我用死数据和变量都可以显示ok
  • Booid.com #10 · 2019-11-29 17:29:45
    易学习那我只能哭了,本地环境,2个网站测,都是不能正常显示的!等我上线了再回来结贴吧
  • Booid.com #11 · 2020-11-25 15:39:48
    @易学习:完结之后本帖将不再提供回复

迅睿系统漏洞

AI文章生成器
AI文章生成器(2026-09-20)
任务拆分独立配置 新增AI生成关键词 新增指令模板 新增品牌信...
GEO系统
GEO系统(2026-09-20)
后台 AEO 与运营端对齐:区域、跑批、CSV、补强、剧本均可在迅睿...
多语言翻译Seolang
多语言翻译Seolang(2026-09-18)
1. HTML lang 无需修改模板,自动适配当前语种页面 lan...
GeoSeo工具箱
GeoSeo工具箱(2026-09-18)
修正菜单规范
后台二次登陆验证
后台二次登陆验证(2026-09-18)
新增邮箱验证 新增短信验证
京东云短信
京东云短信(2026-09-17)
- 验证码有效期改只读展示 - 有效期旁新增系统设置按钮 - 保...
创蓝短信
创蓝短信(2026-09-17)
- 验证码有效期改只读展示 - 有效期旁新增系统设置按钮 - 保...
火山引擎短信
火山引擎短信(2026-09-17)
- 验证码有效期改只读展示 - 有效期旁新增系统设置按钮 - 保...
外贸多语言建站
外贸多语言建站(2026-09-17)
优化独立内容过滤机制