# 万能标签
描述:实现普通查询SQL查询功能的标签
| 额外参数 | 说明 |必须|
| --- | --- |--- |
| @sql | SQL语句,强烈建议只用于select类型语句,其他SQL有严重安全威胁,同时不建议直接在SQL语句中使用外部变量,如:$\_GET,$\_POST等。出现“>”,“,{lt}代替,{elt}代替= |否|
| @table | 表名,不用填写表前缀,当存在@table参数时,忽略@sql参数 |否|
| @order| 排序,例如“id DESC” |否|
| @num| 每次返回数据量,默认10 | 否 |
| @cache| 数据缓存时间,单位秒 | 否 |
| @page| 当前分页号,默认$page,当传入该参数表示启用分页,一个页面只允许有一个page,多个标签使用多个page会造成不可预知的问题。 | 否 |
| @return| 返回值变量名称,默认data,返回的是数组需要配合volist标签 | 否 |
| *字段作为参数| 为@table时,可以用字段作为参数 如表里有status字段 可以使用status=1 | 否 |
示例A:
```
//使用@table参数的查询示例
//输出id为18的表名为page的数据 page是单页表
{get table="article" catid="9" page="$page" return="data"}
{volist name="data" id="vo"}
....HTML...
{/volist}
{/get}
<!--分页-->
{$pages|raw}
```
示例B:
```
//普通SQL查询示例
//输出id为18的表名为page的数据 page是单页表 此处表前缀不可忽略
{get sql="select * from yzn_product where catid=18" order="inputtime asc" num="10" return="data" page="$page"}
{volist name="data" id="vo"}
....HTML...
{/volist}
{/get}
<!--分页-->
{$pages|raw}
```
示例C:
```
~~~
//比较复杂的示例
{php}
$sql = 'select * from yzn_article where status=1 ';
//接受外部数据
$id = input('id',0);
if($_catid){
$sql .= " `id` = '{$id}' ";
}
$sql .= ' order by inputtime desc';
{/php}
{get sql="$sql" return="data"}
{volist name="data" id="vo"}
....HTML...
{/volist}
{/get}
~~~
```
主要事项:
```
1.sql最好避免直接接受外部数据,会存在SQL注入风险!
2.请不要使用此标签处理非SELECT类型的查询语句!
3.page="$page" 存在,同样是开启分页,一个页面只允许一个标签开启使用,否则会出现不可预知的问题!
```
- 序言
- 环境搭建
- 目录结构
- 系统配置
- 系统函数&类
- thumb(函数)
- fun(函数)
- get_file_path(函数)
- email(类)
- 插件使用说明
- cms插件
- 变量/常量
- 函数
- 标签
- 公共参数
- 栏目标签
- 列表标签
- 内容详情页
- 上一页标签
- 下一页标签
- Tags标签
- 万能标签
- 原生标签
- 模板
- 使用技巧
- 阅读收费
- 会员插件
- 常见问题
- 表单插件
- 调用方式
- 模板
- 短信插件
- 友情链接插件
- 标签
- 常见问题
- URL重写
- 如果设置插件为首页默认打开
- 百度编辑器多图片上传被压缩
- 各类服务器使用注意事项
- 部分虚拟机隐藏index.php有问题
- composer
- composer简介
- 内置composer
- 各大厂商镜像地址
- 常用命令