zoukankan      html  css  js  c++  java
  • PHPCMS GET标签使用

    大纲:

    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}
    11.不同数据库帐号调用(不同数据源调用)
    {get dbsource="" sql=""}
    {/get}
    12.不同数据库帐号的不同数据库调用
    {get dbsource="" dbname="" sql="" }
    {/get}
    13.本系统数据调用,带分页
    {get sql=" " page="$page"}
    {/get}
    分页:{$pages}
    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点
    注:此参数可以省略
    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}


    更多网站公告
    在上面加入(稍加美化的get 标签代码):

    论坛最新帖子

    {get dbsource="discuz" sql="SELECT `author`,`subject`,`lastpost` FROM `cdb_threads` ORDER BY `lastpost` DESC" rows="3" }
    ({$r[author]}){str_cut($r[subject], 22,"")} date:{date("Y-m-d",$r[lastpost])}

    {/get}

  • 相关阅读:
    做程序员,我骄傲了吗?
    乐字节Java面向对象三大特性以及Java多态
    Java为什么有前途?什么人适合学Java?
    Java新手从入门到精通的学习建议
    Java变量与数据类型之二:Java常量与变量
    模块化、结构化的代码,程序员正讲述着人生
    乐字节Java变量与数据类型之一:Java编程规范,关键字与标识符
    乐字节Java学习课程-path环境变量的作用与配置
    我英语不好,能学会编程吗?
    为什么欧拉图要用栈存然后逆着输出
  • 原文地址:https://www.cnblogs.com/flay/p/4213898.html
Copyright © 2011-2022 走看看