PHP建站技术分享-从入门到精通PHP建站技术分享-从入门到精通PHP建站技术分享-从入门到精通

QQ:420220301 微信/手机:150-3210-7690
当前位置:首页 > CMS教程 > YznCMS

Yzncms-万能标签的使用

管理员 2024-12-01
YznCMS
106

Yzncms-万能标签的使用

万能标签

描述:实现普通查询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参数的查询示例

{get table="article"  catid="9" page="$page"  return="data"}

    {volist name="data" id="vo"}

        ....HTML...

    {/volist}

{/get}

<!--分页-->

{$pages|raw}

输出总页数{$data->total()},只有标签使用分页才能使用

示例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" 存在,同样是开启分页,一个页面只允许一个标签开启使用,否则会出现不可预知的问题!



希望以上内容对你有所帮助!如果还有其他问题,请随时提问。 各类知识收集 拥有多年CMS企业建站经验,对 iCMS, Fastadmin, ClassCMS, LeCMS, PbootCMS, PHPCMS, 易优CMS, YzmCMS, 讯睿CMS, 极致CMS, Wordpress, HkCMS, YznCMS, WellCMS, ThinkCMF, 等各类cms的相互转化,程序开发,网站制作,bug修复,程序杀毒,插件定制都可以提供最佳解决方案。

相关推荐

扫码关注

qrcode

QQ交谈

回顶部