1、在member表中查询username=admin的会员信息
{list action=sql sql='select * from @#member where username="admin"'}
{$t.username}
{/list}
{$error}{php $query='select * from @#member where username="admin"';}
{list action=sql sql='$query'}
{$t.username}
{/list}
{$error}2、分页查询文章news表的数据(模块表查询如果加上module参数,返回值会自动格式化)
{list action=sql module=news sql='select * from @#1_news' page=1 pagesize=10 urlrule=index.php?page=[page]}
{$t.title}<br>
{/list}
{$pages}
{$error}{php $query='select * from @#1_news';}
{list action=sql module=news sql='$query' page=1 pagesize=10 urlrule=index.php?page=[page]}
{$t.title}<br>
{/list}
{$pages}
{$error}
一、作用
通过sql语句来循环查询数据(也可以单条查询),支持分页输出
二、语法
{list action=sql sql='SQL语句变量'....}{/list}
三、参数介绍(红色表示必填参数,蓝色表示系统默认参数)
参数
| 介绍
|
|---|
action
| sql
|
sql
| sql参数只支持变量传递,@#表示数据表前缀;格式如:sql='$sql',这里的$sql变量就是你的sql语句
|
module
| 当存在模块参数时字段将会自动格式化,例如新闻模块,填写news
|
form
| 当存在表单参数时字段将会自动格式化,例如留言表单,填写对应的表名称liuyan |
modelid
| 当存在空间模型参数时字段将会自动格式化,例如日志模型,填写对应的模型id |
site
| 站点id,默认当前站点,填写其他站点id表示查询其他站点的SQL数据
|
page
| 当page=1时表示开启分页查询,否则pagesize与urlrule是不会生效的 |
| pagesize | 分页显示数据量
|
| urlrule | 分页地址规则:[page]表示分页标识符
|
cache
| 缓存时间单位秒,默认关闭缓存;当cache=3600时,表示缓存时间1小时,建议数据查询的标签都加上缓存参数 |
return
| 默认返回变量为t,调用方式就是{$t.字段值}(多级list查询必须设置return=其他字母,否则你懂得)
|
四、返回变量
变量
| 参数
|
|---|
{$error}
| 当查询不到数据时,会返回错误信息,调试模板时很有用哦(写在list标签以外)
|
{$sql}
| 显示当前查询的sql语句,调试模板时候很有用哦(写在list标签以外) |
{$total}
| 用于分页时查询的总记录数量(写在list标签以外) |
| {$count} | 当前查询的记录,当存在分页时,表示当前页的记录数(写在list标签以外) |
{$pages}
| 显示分页代码(写在list标签以外) |
{$key}
| 当前记录指针位置,从0开始(写在list标签以内) |
当存在return=字母时,以上变量都要写成这种格式{$变量_字母},例如{list ...reutrn=a}时,变量格式{$key_a}
|
| {$is_first} | 判断是否第一条,{if $is_first}第一条{/if}
|
| {$is_last} | 判断是否最后一条,{if $is_last}最后一条{/if} |
五、显示字段
{$t.字段名称}或者{$t['字段名称']}
由于是SQL自定义查询,这个要看你自己了哦
签名:这个人很懒,什么也没有留下!