原标题:DWPCMS中sql标签动态调取数据--如何传递参数
最近的网站建设项目中,需要实现点击省市名称时弹出公司在该省的业绩情况,并自动计算业绩总和。
大概的情况如下图,前期设计师分割地图,前端工程师给每个省的省会城市进行定位,背景的定位,加上js函数都是非常辛苦的工作。后期由我负责数据的调取和js的调整。
数据调取方法有很多种,可以使用AJAX异步传输。但考虑到数据较多,公司规模较大,频繁访问数据库会占用较多资源。最终选择一次性直接调取所有数据生成静态页面,然后通过JS动态显示各省市的业绩状况。
在数据调取和JS控制中的关键是子栏目ID {dede:field.id/}(将每个省作为一个子栏目,业绩以文章形式添加)。主要HTML如下:
{dede:channelartlist typeid=’6’ row=’1000’}
工程名称
...{dede:arclist row='1000' orderby='pubdate' addfields='tech_gy,scale_gm' channelid='1'}
[field:fulltitle function="mb_strlen(@me,'utf8')>22?mb_substr(@me,0,19,'utf8').'...':@me"/][field:tech_gy/][field:scale_gm/]{/dede:arclist}
{dede:sql sql="select sum(scale_gm) as 'total',count(scale_gm) as 'items' from `pgy_addonarticle` where typeid= ~id~ "}
注:合计处理规模
[field:total runphp='yes']if(@me){@me=@me;}else{@me=0;}[/field:total]
万吨/日
{/dede:sql}