- 1.2 环境搭建&安装
- 1.3 项目说明
- 1.4 路由说明
- 1.5 目录结构
- 2.1 模板
- 2.1.1 前台模板
- 2.1.2 后台模板
- 2.1.3 模板标签
- 2.1.3.1 content内容标签
- 2.1.3.2 spf内容标签
- 2.1.3.3 tags内容标签
- 2.1.3.4 comment评论标签
- 2.1.3.5 position推荐位标签
- 2.1.3.6 get数据获取标签
- 2.1.3.7 template模板引入标签
- 2.1.3.8 navigate导航标签
- 2.1.3.9 pre上一篇标签
- 2.1.3.10 next下一篇标签
- 2.1.3.11 blockcache区块缓存标签
- 2.2 行为管理
- 2.2.1 行为规则
- 2.2.2 使用方法
- 2.2.3 测试Behaivor
- 2.3 模块开发
- 2.4.1 权限
- 2.4.2 框架页
- 2.4.3 消息中心
- 2.4.4 登录页安全
- 2.5 请求缓存
- 3.1 Auth
- 3.1.1 通用授权
- 3.1.2 自动登录授权
- 3.1.3 开放平台授权
- 3.2 Wechat
- 3.2.2 v2.x
- 3.3 Area
- 3.3.1 中国区域
- 3.3.2 中国高校
- 3.4 Sms
- 3.4.1 v3
- 3.4.2 v2
- 3.5 Cron
- 3.6 Transport
- 3.6.1 使用
- 3.6.2 最佳实践
- 3.7 Message
- 3.8 Record
- 3.8.1 数据结构
- 3.8.2 使用指南
- 3.9 Wxapp
- 3.10 Log
- 3.11 Alipay
- 3.12 Unionpay
- 3.13 Oss
- 3.14 Chart
- 3.15 Queue
- 3.16 Mirror
- 3.17 Wap
- 3.18 Shop
- 3.19 Search
- 3.20 Addons
- 3.21 Collection
- 3.22 Comment
- 3.23 Domain
- 3.24 Form
- 3.25 Link
- 3.26 Vote
- 3.27 Member
- 4.1 规范和约定
- 4.2 部署指南
- 4.3 常见错误
- 4.4 开发Tips汇总
- 4.4.1 模块
- 4.4.2 自定义后台iconfont
- 4.4.3 自定义成功(失败)页面
- 4.4.4 自定义栏目列表搜索条件
- 4.4.5 根据管理员的权限显示
- 4.5 数据库的存储引擎
- 4.6 行为管理最佳实践
- 4.7 性能优化
- 4.8 ThinkPHP
- 4.8.1 模型
- 4.9.1 发送邮件
- 5.1 系统函数
- 5.2 技术栈
文章来源于网络收集而来,版权归原创者所有,如有侵权请及时联系!
2.1.3.6 get数据获取标签
get标签
标签:
<get></get>
作用:特殊标签,SQL查询标签
用法示例A:
<get sql="SELECT * FROM cms_article WHERE status=99 ORDER BY inputtime DESC" page="$page" num="5"> .. HTML ..</get>
用法示例B:
<get table="article" status="99" order="inputtime DESC" where="其它where部分条件" page="$page" num="5">.. HTML ..</get>
参数说明
参数 | 说明 |
---|---|
@sql | SQL语句,强烈建议只用于select类型语句,其他SQL有严重安全威胁,同时不建议直接在SQL语句中使用外部变量,如:$_GET,$_POST等。出现“>”,“<”这类,建议使用{gt}代替>,{lt}代替<,{neq}代替<>,{elt}代替<=,{egt}代替>= |
@page | 当前分页号,默认$page,当传入该参数表示启用分页,一个页面只允许有一个page,多个标签使用多个page会造成不可预知的问题 |
@num | 每次返回数据量 |
@cache | 数据缓存时间,单位秒 |
@return | 返回值变量名称,默认data |
@pagefun | 分页函数,默认page() |
@pagetp | 分页模板 |
@table | 表名,不用填写表前缀,当存在@table参数时,忽略@sql参数 |
@order | 排序参数,只有配合@table参数有效 |
@where | SQL的where部分条件,只有配合@table参数有效 |
普通SQL查询示例
<get sql="SELECT * FROM cms_article WHERE status=99 ORDER BY inputtime DESC" page="$page" num="5">
表前缀可以使用cms代替,系统会自动替换为你安装时所设置的表前缀!
循环列表,默认返回数据是$data
<ul>
<volist name="data" id="vo">
<li>标题:{$vo.title},地址:{$vo.url}</li>
</volist>
</ul>
分页:{$pages}
</get>
使用@table参数的查询示例
<get table="article" status="99" order="inputtime DESC" page="$page" num="5">
循环列表,默认返回数据是$data
<ul>
<volist name="data" id="vo">
<li>标题:{$vo.title},地址:{$vo.url}</li>
</volist>
</ul>
分页:{$pages}
</get>
比较复杂的示例
<?php
$sql = 'SELECT * FROM cms_article WHERE status=99 ';
//接受外部数据
$_catid = I('get.classid',0,'intval');
if($_catid){
$sql .= " `catid` = '{$_catid}' ";
}
$sql .= ' ORDER BY inputtime DESC';
?>
<get sql="$sql" page="$page" num="5">
表前缀可以使用cms代替,系统会自动替换为你安装时所设置的表前缀!
循环列表,默认返回数据是$data
<ul>
<volist name="data" id="vo">
<li>标题:{$vo.title},地址:{$vo.url}</li>
</volist>
</ul>
分页:{$pages}
</get>
注意事项
- sql最好避免直接接受外部数据,会存在SQL注入风险
- 请不要使用此标签处理非SELECT类型的查询语句
page="$page"
存在,同样是开启分页,一个页面只允许一个标签开启使用,否则会出现不可预知的问题- 由于历史原因,如果采用第一种直接传入SQL,出现
>
,<
这类,建议使用{gt}
代替>
,{lt}
代替<
,{neq}
代替<>
,{elt}
代替<=
,{egt}
代替>=
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论