CmsTop/db标签
来自站长百科
示例:
{db sql="select * from #table_content where status=6 order by published desc" size="10" page="$page"} <a href="{$r[url]}">{$r[title]}</a> {date('n月j日H:i',$r['published'])} {/db} {pages($total, $page, $pagesize, 2, $urlrule)}
参数列表:
- dsn该查询所使用的 数据源,数据源是一组后台设定的数据库连接信息,包含了如下的内容:
- 数据源名称
- 所使用的 PDO 驱动(支持 Mysql, SQL Server, Oracle, PostgreSQL, SQLite 和 ODBC)
- 主机地址
- 数据库名称
- 数据库用户名、密码
- 是否为持久连接
- 该数据库的字符集(可以不同于 CmsTop,数据读取过来会自动转换编码,支持 UTF8 和 GBK 两种)
这里使用的是数据源名称,推荐使用英文名称定义。 未指定数据源则使用本系统默认数据库连接配置。
数据源可在后台 [设置] - [数据源设置] 内添加。
- dbname 该查询语句所使用的数据库,默认为数据源或系统所使用的数据库。
- sql 要查询的 SQL 语句,必选参数,可以是任何符合规范的 SQL 语句,如:
sql="SELECT * FROM `#table_comment` WHERE `contentid` = 1 ORDER BY `support` DESC"
其中用到数据表名称的时候,可以使用 #table_ 来代替本数据源的表前缀,系统在解析时会自动替换。
- page 结果集返回的起始分页,默认为 0,即从第一条开始。
- size 限制查询返回的条数,默认不限制;也可直接写在 sql 参数里面。
- offset 查询偏移量,默认为 0,即不偏移。 若指定了 page 参数,且 page > 0,则 offset 参数无效。
{content}、{discuz}、{phpwind}、{shopex}标签均可使用 {db} 的参数。
不过要记住反过来 {db} 是不能使用它们的参数的。
调用内容请使用{content}标签,如果一定要使用{db}标签调用内容,请自行添加 status = 6 限制只调用状态为已发的内容。