PHPCMS中GET标签概述、 get 标签语法、get 标签建立工具、get 调用本系统演示样例、get 调用其它系统演示样例

1、get 标签概述php

       通俗来说,get 标签是Phpcms定义的能直接调用数据库里面内容的简单化、友好化代码,她可调用本系统和外部数据,仅仅有你对SQL有必定的了解,她就是你的绝世好剑!也就是适合熟悉SQL语句的人使用。有了她,咱们打造个性化的站点,能很方便的调用出数据库里面指定的内容。经过条件限制,咱们可以调用出不一样条件下的不一样数据。sql

2、get标签样式数据库

{get dbsource=" " sql=" "}

{/get}数组

3、get 标签语法函数

1.get标签属性值必须用双引號括起来( " " )。
好比:
工具

{get sql=" " /}post

2.get标签必须含有结束标记,即正确get标签必须是成对出现:整个Get标签含有结束标记“ {/get}”,或者是“/”。url

3.get标签里面含有的变量,数组和函数必须用“{}”包含。
好比:
spa

{str_cut($r[title], 50)}
{$r[url]}
orm

4.get标签 sql语句中条数限制。( rows=" " )
好比:显示10条信息

{get sql=" " rows="10"}
{/get}

5.get标签 sql语句中条件限制。( where )
好比:调用栏目ID为1的信息

{get sql="select * from phpcms_content where catid=1"}
    标题:{$r[title]} URL:{$r[url]}  
{/get}

6.get标签 sql语句中排序。( order by )
好比:按更新日期降序(desc)排列

{get sql="select * from phpcms_content order by updatetime desc" }
    {$r[title} URL:{$r[url]}
{/get}

7.get标签里面嵌套php函数。(可以參考上面的第3点)
好比:格式化输出时间戳

{date('Y-m-d', $r[updatetime])}

8.本系统数据调用(当前数据库调用)

{get sql=""}
{/get}

或者

{get sql="" return="r"}
{/get}

9.本系统数据调用10条

{get sql="" rows="10"}
{/get}

10.同一个数据库账号的不一样数据库调用

{get dbname="" sql="" }
{/get}

10.同一个数据库账号的不一样数据库调用

{get dbname="" sql="" }
{/get}

11.不一样数据库账号调用(不一样数据源调用)

{get dbsource="" sql=""}
{/get}

12.不一样数据库账号的不一样数据库调用

{get dbsource="" dbname="" sql="" }

{/get}

13.本系统数据调用,带分页

14.本系统数据调用,本身定义返回变量

{get sql=" " return="v"}
   {$v[ ]}
{/get}

*get 标签參数完整剖析

{get dbsource="数据源" dbname="数据库" sql="SQL语句" rows="行数" return="返回变量名称" page="$page"}
    输出代码(含返回变量值、数组、函数等)
{/get}

dbname="数据库" -->
(数据库 在加入数据源的时候需要填写的数据库名)
注:本系统调用(同一数据库帐号,同一数据库名)可以省略
sql="SQL语句" -->
SQL语句可以參考Mysql手冊,上面get 标签语法第四、五、6点和SQL语句剖析已经说起要点
注:此參数不可以省略
rows="行数" -->
行数,好比显示10条信息:rows="10"
注:此參数可以省略
return="返回变量名称" -->
參考get 标签语法第8点和第14点
注:此參数可以省略

{get sql=" " page="$page"}
{/get}
分页:{$pages}

page="$page" -->
带分页
注:此參数可以省略

*SQL语句剖析

sql="select 字段 from 表名 where 条件表达式 order by 字段 desc/asc"

6条完整get 标签代码演示样例

1.调用本系统单条数据,演示样例(调用ID为1的信息,标题长度不超过25个汉字,显示更新日期):

{get sql="select * from phpcms_content where contentid=1" /}
标题:{str_cut($r[title], 50)} URL:{$r[url]} 更新日期:{date('Y-m-d', $r[updatetime])}

2.调用本系统多条数据,演示样例(调用栏目ID为1经过审核的10条信息,标题长度不超过25个汉字,显示更新日期):

{get sql="select * from phpcms_content where catid=1 and status=99 order by updatetime desc" rows="10"}
    标题:{str_cut($r[title], 50)} URL:{$r[url]} 更新日期:{date('Y-m-d', $r[updatetime])}
{/get}

3.带分页,演示样例(调用栏目ID为1经过审核的10条信息,标题长度不超过25个汉字,显示更新日期,带分页):

{get sql="select * from phpcms_content where catid=1 and status=99 order by updatetime desc" rows="10" page="$page"}

标题:{str_cut($r[title], 50)} URL:{$r[url]} 更新日期:{date('Y-m-d', $r[updatetime])}
{/get}
分页:{$pages}

4.本身定义返回变量,演示样例(调用栏目ID为1经过审核的10条信息,标题长度不超过25个汉字,显示更新日期,返回变量为 $v):

{get sql="select * from phpcms_content where catid=1 and status=99 order by updatetime desc" rows="10" return="v"}
    标题:{str_cut($v[title], 50)} URL:{$v[url]} 更新日期:{date('Y-m-d', $v[updatetime])}
{/get}

5.调用同一账号下的其它数据库,演示样例(调用数据库为bbs,分类ID为1的10个最新主题,主题长度不超过25个汉字,显示更新日期):

{get dbname="bbs" sql="select * from cdb_threads where fid=1 order by dateline desc" rows="10"}
    主题:{str_cut($r[subject], 50)} URL:http://bbs.phpcms.cn/viewthread.php?tid={$r[tid]} 更新日期:{date('Y-m-d', $r[dateline])}
{/get}

6.调用外部数据,演示样例(调用数据源为bbs,分类ID为1的10个最新主题,主题长度不超过25个汉字,显示更新日期):

{get dbsource="bbs" sql="select * from cdb_threads where fid=1 order by dateline desc" rows="10"}
    主题:{str_cut($r[subject], 50)} URL:http://bbs.phpcms.cn/viewthread.php?tid={$r[tid]} 更新日期:{date('Y-m-d', $r[dateline])}
{/get}

4、get 标签建立工具

一、获取get 标签代码

好比,刚才咱们数据源选择“本系统”,数据表选择“内容模型”,字段名咱们显示“ID、标题、摘要、连接地址、公布时间”,条件选择ID=1,排序按ID降序排序,勾选“是否分页”,每页显示条数设置为“10条”,而后点击“插入”


咱们就可以获得系统本身主动生成的get 标签代码,例如如下:


{get sql="SELECT `contentid`,`title`,`description`,`url`,`inputtime` FROM `phpcms_content` WHERE `contentid` = '1' ORDER BY `contentid` DESC"rows="10" page="$page" }
{$r[contentid]}
{$r[title]}
{$r[description]}
{$r[url]}

{$r[inputtime]}
{/get}
{$pages}

分析例如如下:

{get sql="SELECT `contentid`,`title`,`description`,`url`,`inputtime` FROM ` phpcms_content`" WHERE `contentid` = '1' ORDER BY   `contentid` DESC   rows="10"   page="$page" }
//条件是ID=1,排序按ID降序排序,显示10行,带分页

{$r[contentid]}
// ID

{$r[title]}
//标题

{$r[description]}
//摘要

{$r[url]}
//连接地址

{$r[inputtime]}
//公布时间
{/get}
{$pages}
//分页

二、将代码插入到模板文件

get 标签代码例如如下: {get dbsource="discuz" sql="SELECT `author`,`subject`,`lastpost` FROM `cdb_threads` ORDER BY `lastpost` DESC" rows="3" } {$r[author]} {$r[subject]} {$r[lastpost]} {/get}

相关文章
相关标签/搜索