利用数据源功能,可以调用远程MySQL数据源或本地SQLite库,以及当前KingCMS数据库中的数据,并且以KingCMS标签形式在模板里调用其数据。
返回查询对应的记录总数。结构为:
{king:dbquery.count table="数据表名称" where="查询条件" name="数据源名称"/}
若调用当前KingCMS数据库时,数据库表前缀可以使用 %s_ 。
当不指定name值的时候,读取的是当前KingCMS系统数据库。
[p]文章总数 : {king:dbquery.count table="%s__article" where="kid1=0"/}篇[/p]
[p]论坛主题贴 : {king:dbquery.count table="%s__bbs" where="kid1=0"/}[/p]
[p]论坛回复贴 : {king:dbquery.count table="%s__bbs" where="kid1<>0"/}[/p]
[p]注册会员总数 : {king:dbquery.count table="%s_user" /}人[/p]
支持属性
标签属性 | 数据类型 | 说明 |
---|---|---|
table | 字符串 | 数据库表名称,这个参数是必须的。 |
where | 字符串 | 查询条件,限制查询范围,属性值开头不用写where |
name | 字符串 | 当指定name值的时候,从数据源管理里定义的数据源名称对应的数据库中进行查询 |
组合应用
循环调用所有模型下面的记录总数。
{king:portal.model}/*循环读取模型*/
____[p]{king:modelname/} : {king:dbquery.count table="%s__(king:modeltable/)" where="kid1=0"/}[/p]
{/king:portal.model}
调用已定义的数据源总记录集统计的时候,需要指定name值
[p]文章总数 : {king:dbquery.count name="test" table="king__article" where="kid1=0"/}篇[/p]
简单的对数据库进行查询,支持属性有数据表(table)、调用数量(number=10)、条件检索(where)、字段集(sql=*)、排序(orderby)、跳过前几项(skip=0)
{king:dbquery.select table="%s__article" sql="kpath,ktitle" number="5" orderby="kid desc" }
____[p][a href="{king:kpath/}"]标题:{king:ktitle/}[/a][/p]
{/king:dbquery.select}
table属性是必须的。支持属性
标签属性 | 数据类型 | 说明 |
---|---|---|
table | 字符串 | 数据库表名称,这个参数是必须的。 |
sql | 字符串 | 数据表下面的字段列表,不填写默认为*,即全部字段 |
where | 字符串 | 查询条件,限制查询范围,属性值开头不用写where |
orderby | 字符串 | 排序,根据orderby指定的参数进行排序,属性值开头不用写order by |
number | 数字 | 调用记录的数量 |
skip | 数字 | 跳过skip属性里指定数量的记录后开始显示 |
name | 字符串 | 当指定name值的时候,从数据源管理里定义的数据源名称对应的数据库中进行查询 |
直接利用完整的SQL查询语句,对数据库进行查询,只有一个必须属性:query。
{king:dbquery query="select ktitle,kpath from %s__Article where kid1=0 order by kid desc limit 0,3 "}
____[p][a href="{king:kpath/}"]{king:ktitle/}[/a][/p]
{/king:dbquery}
支持属性
标签属性 | 数据类型 | 说明 |
---|---|---|
query | 字符串 | 数据库查询SQL语句 |
name | 字符串 | 当指定name值的时候,从数据源管理里定义的数据源名称对应的数据库中进行查询 |
{king:dbquery.select name="[数据源名称]" table="[数据库表前缀]_posts" sql="tid,subject as title" where="fid=[栏目id] and first=1" orderby="dateline desc" number="[数量]"}
____[p][a href="http://[论坛地址]/viewthread.php?tid={king:tid/}"]{king:title/}[/p]
{/king:dbquery.select}
{king:dbquery name="[数据源名称]" query="select tid,subject as title FROM [数据库表前缀]_posts where fid=[栏目id] and first=1 order by dateline desc limit [数量]"}
[p][a href="http://[论坛地址]/viewthread.php?tid={king:tid/}"]{king:title/}[/p]
{/king:dbquery}