PHPCMS中GET标签概述、 get 标签语法、get 标签创建工具、get 调用本系统演示样例、get 调用其它系统演示样例
一、get 标签概述
通俗来讲,get 标签是Phpcms定义的能直接调用数据库里面内容的简单化、友好化代码,她可调用本系统和外部数据,仅仅有你对SQL有一定的了解,她就是你的绝世好剑!也就是适合熟悉SQL语句的人使用。有了她,我们打造个性化的站点,能很方便的调用出数据库里面指定的内容。通过条件限制,我们能够调用出不同条件下的不同数据。
二、get标签样式
{get dbsource=" " sql=" "}
{/get}
三、get 标签语法
1.get标签属性值必须用双引號括起来( " " )。
比如:
{get sql=" " /}
2.get标签必须含有结束标记,即正确get标签必须是成对出现:整个Get标签含有结束标记“ {/get}”,或者是“/”。
3.get标签里面含有的变量,数组和函数必须用“{}”包含。
比如:
{str_cut($r[title], 50)}
{$r[url]}
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 标签语法第4、5、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}
四、get 标签创建工具
1、获取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}
//分页
2、将代码插入到模板文件
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}
PHPCMS中GET标签概述、 get 标签语法、get 标签创建工具、get 调用本系统演示样例、get 调用其它系统演示样例的更多相关文章
- Python 44 前端概述 、三剑客 、常用标签与分类
1.前端三剑客是哪三位?文件的后缀内容?在前端开发中的功能是什么? HTML: .htm .html 内容 CSS: .css 效果 JS: .js 行为 2.简述三剑客的主要 ...
- jsp动作标签概述
*Jsp动作标签概述: >动作标签的作用是用来简化java脚本 >jsp动作标签是JavaWeb内置的动作标签,它们是已经定义好的动作标签,我们可以拿来直接使用. >JavaWeb一 ...
- Django学习——Django settings 源码、模板语法之传值、模板语法之获取值、模板语法之过滤器、模板语法之标签、自定义过滤器、标签、inclusion_tag、模板的导入、模板的继承
Django settings 源码 """ 1.django其实有两个配置文件 一个是暴露给用户可以自定义的配置文件 项目根目录下的settings.py 一个是项目默 ...
- JSTL标签急速秒杀jsp页面中的java代码(一)---Core标签库
JSTL标签简介 ===================================================================== JSTL的全称是JavaServer Pa ...
- Android中View绘制优化二一---- 使用<include />标签复用布局文件
本文原创, 转载请注明出处:http://blog.csdn.net/qinjuning 译二: 使用<include />标签复用布局文件 翻译地址:http://de ...
- 正则去除字符串中的html标签,但不去除<br>标签
一.去除html标签 filterHTMLTag(msg) { var msg = msg.replace(/<\/?[^>]*>/g, ''); //去除HTML Tag msg ...
- HashTab---Windows资源管理器的文件属性窗口中添加了一个叫做”文件校验”的标签
HashTab 是一个优秀的 Windows 外壳扩展程序,它在 Windows 资源管理器的文件属性窗口中添加了一个叫做”文件校验”的标签.该标签可以帮助你方便地计算文件的 MD5.SHA1 与 C ...
- 在IE、fixfox、chrome等浏览器中ajax提交成功后,打开新标签页面被浏览器拦截问题[转]
如题: 在项目中要在当前页面中,再新开一个页面, 新开页面的地址是ajax请求后返回的url --------- 试了,浏览器提示组织弹窗..... 网上找,找到了一个处理方式,思路是 1. 先打开一 ...
- [原创]java WEB学习笔记40:简单标签概述(背景,使用一个标签,标签库的API,SimpleTag接口,创建一个自定义的标签的步骤 和简单实践)
本博客为原创:综合 尚硅谷(http://www.atguigu.com)的系统教程(深表感谢)和 网络上的现有资源(博客,文档,图书等),资源的出处我会标明 本博客的目的:①总结自己的学习过程,相当 ...
随机推荐
- css内容补充之其它
1.overflow 当图片大小,超出div的大小时,可以指定overflow值为auto(带滚动条).hidden(隐藏,只显示一块): hover 当鼠标移动到当前标签上时,以下css属性才生效:
- 【亲测可行】Dev c++调试、运行报错解决方法总结
一.编译后 0错误 0警告,但是开始出现‘‘停止运行’’或者进行输入时出现‘‘停止运行’’ 可能的原因: 结构体指针为空,但调用了其成员. 有些scanf语句中忘记添加取址符. 无法跳出递归. 二. ...
- 关于 vertical-align
默认情况下(行内基线位置 = 行内元素最大高度): 如果对这个正方形使用 vertival-align:middle.在最大高度的元素上使用负值(middle = - 50% * 元素高度),可以提升 ...
- 如何用纯 CSS 创作一种按钮被瞄准的交互特效
效果预览 按下右侧的"点击预览"按钮在当前页面预览,点击链接全屏预览. 在线演示 https://codepen.io/zhang-ou/pen/ELWMLr 可交互视频教程 此视 ...
- maven添加本地jar包到本地仓库
1 进入jar包所在文件夹,进入cmd命令 2 执行命令 mvn install:install-file -Dfile=ojdbc6.jar -DgroupId=com.oracle -Dartif ...
- tarjan 学习记
1.强连通分量是什么 强连通分量指的是部分点的集合如果能够互相到达(例如 1→3,3→2,2→1(有向图)这种,132每个点都能互相抵达) 或者说,有一个环,环上点的集合就是一个强连通分量 2.那怎么 ...
- $config['base_url'] BASE_URL
/*|------------------------------------------------| Base Site URL|--------------------------------- ...
- Ext.js双击事件
/** * 联系人列表panel */ Ext.define('Op.OpBill.OpBillCustLinkGridPanel', { extend: 'Ext.grid.Panel', id: ...
- PHP应用日期与时间
<?php/* 时间戳 * * 1. 是一个整数 * 2. 1970-1-1 到现在的秒数 1213212121 * * 2014-02-14 11:11:11 * * 02/14/2014 1 ...
- 在RedHat 5下安装Oracle 10g详解(转)
在RedHat 5下安装Oracle 10g详解(转) Posted on 2012-09-14 13:26 疯狂 阅读(5075) 评论(0) 编辑 收藏 所属分类: database .uni ...