帝国CMS首页调用会员信息(两表多表查询)

2019-09-04 0 532

首页调用会员信息(同时关联查询两个表) 
系统自带调用的会员信息没有附表的信息,如何处理?

同时查询主表和附表,两个表关联的条件是userid

方法1、

代码如下:

[e:loop={"select a.*,b.* from [!db.pre!]enewsmember a LEFT JOIN [!db.pre!]enewsmemberadd b ON a.userid=b.userid order by lasttime desc limit 100",100,24,0}]
会员头像:<img src="<?=$bqr[userpic]?>" width="52" height="52" />–
会员空间地址:<?=$bqr['newsurl']?>e/space/?userid=<?=$bqr[userid]?>–
会员ID:<?=$bqr[userid]?>–
用户名:<?=$bqr[username]?>–
注册时间:<?=format_datetime($bqr[registertime],'Y-m-d H:i:s')?>–
真实姓名:<?=$bqr[truename]?>– 
最近登陆时间:<?=format_datetime($bqr[lasttime],'Y-m-d H:i:s')?> — 
最近登陆的IP:<?=$bqr[lastip]?>– 
登陆次数:<?=$bqr[loginnum]?>–
会员QQ:<?=$bqr[oicq]?><br>
[/e:loop]

很简单的代码[!db.pre!]

同时调用id、用户名、真实姓名、最近登陆时间、最近登陆的IP地址还有登陆次数。

根据登陆时间的先后排列,最近登陆的在最前面。(还可以调用qq、手机等信息)
————————————————————————————————–

方法2、(和上面的相同,只是sql格式有稍微不同)
[e:loop={"select a.*,b.* from [!db.pre!]enewsmember a,[!db.pre!]enewsmemberadd b where a.userid=b.userid order by lasttime desc limit 100",100,24,0}]
会员头像:<img src="<?=$bqr[userpic]?>" width="52" height="52" />–
会员空间地址:<?=$bqr['newsurl']?>e/space/?userid=<?=$bqr[userid]?>–
会员ID:<?=$bqr[userid]?>–
用户名:<?=$bqr[username]?>–
注册时间:<?=format_datetime($bqr[registertime],'Y-m-d H:i:s')?>–
真实姓名:<?=$bqr[truename]?>– 
最近登陆时间:<?=format_datetime($bqr[lasttime],'Y-m-d H:i:s')?> — 
最近登陆的IP:<?=$bqr[lastip]?>– 
登陆次数:<?=$bqr[loginnum]?>–
会员QQ:<?=$bqr[oicq]?><br>
[/e:loop]
————————————————————————————————–

方法3、(和上面的相同,只是sql格式有稍微不同)
[e:loop={"select [!db.pre!]enewsmember.*,[!db.pre!]enewsmemberadd.* from [!db.pre!]enewsmember,[!db.pre!]enewsmemberadd where [!db.pre!]enewsmember.userid=[!db.pre!]enewsmemberadd.userid order by lasttime desc limit 100",100,24,0}]
会员头像:<img src="<?=$bqr[userpic]?>" width="52" height="52" />–
会员空间地址:<?=$bqr['newsurl']?>e/space/?userid=<?=$bqr[userid]?>–
会员ID:<?=$bqr[userid]?>–
用户名:<?=$bqr[username]?>–
注册时间:<?=format_datetime($bqr[registertime],'Y-m-d H:i:s')?>–
真实姓名:<?=$bqr[truename]?>– 
最近登陆时间:<?=format_datetime($bqr[lasttime],'Y-m-d H:i:s')?> — 
最近登陆的IP:<?=$bqr[lastip]?>– 
登陆次数:<?=$bqr[loginnum]?>–
会员QQ:<?=$bqr[oicq]?><br>
[/e:loop]
————————————————————————————————–

方法4、SQL标签研究-多表查询 

问题:在信息后显示发布该信息用户的 头像、QQ、MSN等相关信息

分析:
1、这样的查询应该会用到ecms_news表(其他模型表名自找),和存放用户的 真实姓名、头像、QQ、MSN等信息的enewsmemberadd表,共2张
2、标签模板中我们需要用的标签,一般的调用大概只需要[!–titleurl–] [!–title–] [!–newstime–] 这些,而[!–ftitle–] [!–smalltext–]  [!–writer–] [!–befrom–] [!–newstext–]
这些基本很少用到,而系统只能允许我们调用这些内置标签,所以需要在不用的标签内选择几个来使用,选择的数量是和你要调用的信息个数成正比的。

实例:
信息后增加所投稿用户的 真实姓名 头像 信息。
找到 真实姓名 头像 分别对应 enewsmemberadd表内truename和 userpic字段,我们挑选了 [!–writer–] [!–befrom–]标签来显示它们。
开始写SQL,两张表的是用USERID这个字段关联的

select a.*,b.truename as writer,b.userpic as befrom from phome_ecms_news as a LEFT JOIN phome_enewsmemberadd as b ON a.userid=b.userid order by newstime desc limit 100

“order by newstime desc”部分定义排序方式,“limit 100”部分定义查询记录数,自定义列表中可不定义。

标签模板记住要放 [!–writer–] [!–befrom–] 标签,不然 真实姓名、头像 是不会显示的。

如果需要可以分页的,可以用自定义列表来调用,其他的调用大家自己思考吧。

———实例:———–
<table>
<tr>
<td>排名号</td>
<td>会员名</td>
<td>头像</td>
</tr>
[e:loop={'select a.*,b.truename as writer,b.userpic as befrom from phome_ecms_news as a LEFT JOIN phome_enewsmemberadd as b ON a.userid=b.userid order by newstime desc limit 100',0,24,0}]
<tr>
<td><?=$bqno?></td>
<td><?=$bqr[writer]?></td>
<td><img src="<?=$bqr[befrom]?>"/> </td>
</tr>
[/e:loop]
</table>

PS.由于前期整理文章没有进行格式化信息处理,导致有些包含代码修改的信息,格式混乱看不清楚。如果发现有此类问题,请在下方评论留言,小编第一时间进行格式化整理!感谢配合

收藏 (0) 打赏

感谢您的支持,我会继续努力的!

打开微信扫一扫,即可进行扫码打赏哦,分享从这里开始,精彩与您同在
点赞 (0)

1、如非特殊说明,本站对本文提供的代码或者素材不拥有任何权利,其版权归原著者拥有。
2、以上提供的代码或者素材均为作者提供和网友推荐收集整理而来,仅供学习和研究使用。
3、如有侵犯你版权的,请来信(邮箱:admin@mail.52muban.com)指出,核实后,本站将立即改正。
4、如有链接无法下载、失效或广告,请点击下面的报错或者联系我们处理!
5、以上资源售价只是赞助,不代表代码或者素材本身价格。收取费用仅维持本站的日常运营所需!

我爱模板网 dedecms教程 帝国CMS首页调用会员信息(两表多表查询) https://www.52muban.com/2912.html

专注网站开发,建设。

常见问题
  • 我们承诺演示效果图均和网站一模一样,如有不同,全额退款,并且我们的模板和数据都没有留后门,请放心使用。
查看详情
  • 本站所有源码版权归原作者所有,我爱模板网提供的源码只能用于学习研究,请勿直接商用。若由于商用引起版权纠纷,一切责任均由使用者承担。
查看详情

相关文章

发表评论
暂无评论
官方客服团队

为您解决烦忧 - 24小时在线 专业服务