动易系统动态标签基础知识.doc_第1页
动易系统动态标签基础知识.doc_第2页
动易系统动态标签基础知识.doc_第3页
动易系统动态标签基础知识.doc_第4页
动易系统动态标签基础知识.doc_第5页
已阅读5页,还剩24页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

“动态标签基础知识”主要讲解动态标签相关的基础知识。本内容主要针对中、高级开发人员在制作网站时提供一个更自由的开发工具,跨越动易系统内置标签的界线和限制,制作出更符合自己独特需求的一种标签功能。因为动态标签使用时需要一定的编程基础,这个标签本身比较复杂,将分几课来进行讲解。本课为第一课,专门针对内部的表来解,讲解动态标签的基础知识、工作原理、基础教程,以及动态标签本身内部使用的标签等相关知识。一、动态标签是什么,它与静态标签的区别动态标签就是根据实现设置好的条件,动态的查询出需要的数据,并显示在目标页面的标签。与静态标签的区别:静态标签只能显示固定的内容,类似于块的格式,修改时只要修改相关的参数即可实现已既定义的内容及样式。动态标签也是显示块,但内容是从数据库中查询出来,相对对数据库的负载比较重些。二、动态标签的工作原理sql与模板互动后输出符合要求的结果,其中SQL负责查询出需要的数据,模板负责格式化数据。根据模板的定义将数据格式化好再显示在相应页面的位置中去,这是动态标签的基本工作原理。操作步骤:第一步:构建好SQL语句,SQL负责查询出需要的数据。第二步:语句查询出来的数据格式化后显示出来,以达到显示要求。第三步:进入网站后台,在“系统设置”“网站自定义标签管理”,在“动态标签”中添加动态标签。动态界面说明:标签名称:以$MY_*命名。 输入名称时可以是中文或英文名,若英文名在调用时要注意大小写。定界符($MY_)为系统默认提供,在定义时不用输入,调用时需要包含完整的定界符。 标签分类:填写自定义的分类名,则系统自动增加一个分类。标签类型:选择标准动态标签或函数型动态标签。分页数量:填写动态标签分页显示的每页显示数,为0时则不分页。自动刷新:标签内容自动刷新频率,必须大于10秒并启用分页功能才能启动。 主表:是指对应需要查询的数据库的主要表,列出了动易系统数据库中的所有表,如PE_Articl是不分频道的所有文章数据表(为了系统安全主表中不包括PE_Admin(管理员)表和PE_Config(网站配置)表)。建议在Access数据库中查看,如用Microsoft Access软件打开网站Database/PowerEasy2006.mdb文件,在Access数据库中有相应的表名说明,如:选择字段:选择了主表后,右侧字段中即显示主表中的相应字段,如ChannelID(文章所属频道ID)、ClassID(文章所属栏目ID)、Title(文章标题)等(在Access数据库中以设计视图方式打开查看,均有相应的说明)。为了防止输出所有的字段而过大消耗系统资源,因此只需点选所需要输出的字段。主表和字段均可按住Ctrl单选择和多选择。从表:是跨表查询用的,本课暂时不讲。查询语句:是对于上述主表、字段等内容进行可视化编辑用的,如果熟悉SQL语句和动易数据库的话可以手动写。有些效果可视化编辑并不能完全实现,需要在此处手写(参阅本文第三节“SQL基础教程”)。优 先 级:数字越小,优先级越高。当标签中再嵌套调用其他标签时,就需要决定标签的优先级。系统按照如下顺序来替换标签:自定义标签-系统通用标签-频道标签。三、SQL基础教程(最简单的查询)基本知识:简单的SQL语句由五个标准段的结构构成:例:select top 10 ArticleID,ClassID,Title,Author,Hits from PE_Article where Deleted=false and Status=3 order by ArticleID desc第一段 选择段:select选择操作,从数据库中选择第二段 输出主表段:top值 主表名,主表名只选择符合要求的前几条相应主表的内容,如:top 10 ArticleID,ClassID,Title,Author,Hits,显示前10条包含文章ID、栏目ID、文章标题、作者、点击数的信息。其中ArticleID,ClassID(指定输出主表名称,多个主表以“,”隔开)。第三段 从属字段:from 字段内容从哪里查、查什么。如from PE_Article(查询PE_Article字段),名字也可以简写,如PE_Article可以简写成Article。要注意填写的字段必须是系统数据库中存在的字段名,并且要与前面的主表内容相对应,否则就会出错。第四段 条件约束段:where 语句条件约束语句部分(即规则语句)。定义内容如:定义显示所有内容如field=0,定义显示大于、小于、等于、相似于、%0(前面忽略后面等于0即可)条件下的内容等等条件语句。动易的文章表最常用的:动易表中的“Deleted”表示文章是否删除状态,这个条件经常要加上的,“Deleted=false”表示不是被删除的文章才被输出显示出来。动易表中的“Status”表示文章状态值,“Status=3”表示输出显示终审通过的文章。一般有这二个条件就不会输出错误的内容出来。例:select top 2 ArticleID,Title from Article where Deleted=false and Status=3 。如果有二个条件,可以继续加上“and ”(并列条件)或“or”(或条件)进行连接。第五段 排序段:order by 语句排序定义。类似于动易系统超级函数标签中按时间、ID等排序的参数设置。如order by ArticleID ,指按文章ID从小到大进行正序排序。如果要倒序排列,可以加上“desc”,如order by ArticleID desc(“asc”表示正序排列)。例:select top 2 ArticleID,Title from Article where Deleted=false and Status=3 order by ArticleID desc到这里,简单的SQL语句基本讲完了。简单地说,写全了选择段、输出主表段、从属字段、条件约束段和排序段这五段内容即可完成简单的SQL语句的书写。一般建议您使用可视化的编辑方式操作,这样写出来的动态标签不容易出错。注意:若您在操作网站后台的动态标签时,您本网站的Access数据库正被同时Microsoft Access软件打开着,则会出现“SQL查询失败,错误原因:表正被用户以独占方式打开”的错误提示。此时关闭Microsoft Access软件后重新操作即可。操作练习:练习题目:制作一个列出显示文章列表、文章标题、作者、点击数、发表时间的动态标签查询语句 答案参考:selecttop10ArticleID,Title,Author,Hits,UpdateTimefromPE_Article 提示:若操作正确,则会进入动态标签操作第二步,若提示错误则退回第一步再修改。添加动态标签(第二步)界面效果:在动态标签第二步操作中:“查询语句”内容框中的内容是不能再修改的。“字段列表”中显示的是系统自动从查询语句中提取出来的字段列表,以方便我们构建下面标签内容(即标签模板)时所用。每点击一个字段列表,则会弹出相应的列表属性设置对话框。下面讲解“标签内容”部分,先从理论上了解一下动态标签内部使用标签。三、动态标签内部使用标签的说明动态标签的模板是独立的,与系统的页面模板不同,它有自己独特使用的标签,我们称为动态标签的“内部使用标签”。动态标签的内部使用标签总共有六类:1、SQL查询语句专用特殊标签:$Now$NowDay$NowMonth$NowYear$PE_True$PE_False$PE_Now$PE_OrderType只能放在语句中,解决一些运用时的特殊问题。目的是为了兼容AC与SQL版。提示:以上的标签不能用于动易系统的模板设计中,只能用于动态标签构建SQL语句中使用。您可以直接在界面中点击“参数列表”中的链接进行可视化操作。这些标签的具体含义在以后课程中进行运用讲解。2、输入标签:input(0)这个输入标签是用于接收一些动态函数标签参数时使用,可通用于SQL语句与标签模板中。动态函数标签支持很多参数,您可以自定义相应的参数,利用本输入标签参数是按顺序进行接收和替换。这本标签的具体含义在以后“动态函数标签”课程中进行运用讲解。3、外循环标签:Loop循环内容/Loop仅用于标签模板Loop/Loop所定义部分的内侧。作用:定义循环体部分,即以标签定义显示循环体(循环体即为需要循环的内容),以Loop/Loop定义循环区域:Loop开始循环内容,/Loop结束循环内容。例1循环一行内容: Loop /Loop 例2循环二行内容: Loop /Loop 注意:一个动态标签模板中只能有一个循环体。若要循环多个,则每需要一个循环体就要添加一个动态标签,同样查询同样循环输出。4、内循环标签:Infobegin循环内容/Infoend仅用于标签模板中Loop/Loop所定义部分的内侧,如:我们要显示一个文章列表中奇数行(1、3、5行)、偶数行(2、3、4行)的背景不同,并且循环显示的效果(类似于动易超级函数标签中的CssName1、CssName2的定义效果)。作用:定义循环体内的单一记录模板。例1单行定义: Loop Infobegin Infoend /Loop 例2隔行背景效果定义: Loop Infobegin Infoend Infobegin Infoend /Loop 例2中隔行背景效果定义输出10条记录的效果: 本效果可以进一步拓展成指定列数的表格等效果,大家可以进一步思考一下如何内循环标签的进一步应用。实例可以参考本文修改五中的说明。5、字段标签:$Field(参数1,参数2)仅用于标签模板中InfobeginInfoend所定义部分的内侧。本标签功能重要,是主管输出的标签。“外循环标签”、“内循环标签”仅用于定义按一定规则进行循环,“字段标签”指定从数据库中提取出来的按什么样的格式来显示。作用为:显示字段内容。例: Loop Infobegin $Field(参数1,参数2) Infoend /Loop 本标签内容可以以可视化方式进行编辑,不再具体讲解,以后通过实例课程进行示范说明。6、特别标签:$AutoID:依次输出记录行数,指按指定选择的结果进行输出。$totalPut :输出本标签查询到的全部记录数,可用于分页显示时显示查询的全部记录数。仅用于标签模板中。四、动态标签实例操作教程1、添加一个动态标签进入网站后台,在“系统设置”“网站自定义标签管理”,在“动态标签”中添加动态标签。手动修改查询语句中的显示数为“top 8”,依图片中所示添加好后,点击“下一步”按钮:2、在添加动态标签(第二步)界面中,将“标签内容”中的“循环内容”改为,将鼠标点击入之间后,点击“字段列表”中的ActicleID,在弹出窗口中依图片进行设置后点击“插入”按钮,在中插入$Field(0,GetUrl,Article,3):此时“标签内容”中则显示“LoopInfobegin$Field(0,GetUrl,Article,3)Infoend/Loop”。注意:请使用代码模式下进行“标签内容”中的代码编辑。3、点击页面底部“添加”按钮,出现成功提示:返回自定义标签管理界面,已经成功添加了动态标签。标签名称为“$MY_文章输出”:4、复制标签名称代码“$MY_文章输出”,放入您所需要显示的文章模板中,如网站首页模板中或其他自定义页面中。保存模板后更新缓存,您即可在前台页面中看到自定义动态标签“$MY_文章输出”的效果:我们查看一下页面生成的源文件,从中的内容就是动态标签“$MY_文章输出”输出的top 8条的内容。以下是引用片段: 网站自定义标签操作指导录像网站自定义标签操作指导录像写在前面的话第一课:动易系统简介和iis设置第二课:动易系统、动易组件安装说明第三课:运行网站前设置登陆问题第四课:后台添加网站logo的介绍第五课:添加网站banner 此时,只是输出了最简单的效果。且文章是按文章的ID正序排列的(即最早发表的文章在最上面),并不是我们想要的效果。下面进一步修改动态标签,加上where、order by 等参数以实现我们想要的更多效果。五、动态标签实例修改示例下面我们以五个修改实例,进一步讲解动态标签的更多效果。修改一:倒序排列在网站后台“系统设置”“网站自定义标签管理”,在“动态标签”中,修改您添加的动态标签。在“查询语句”中增加“ where Deleted=$PE_False and Status=3 order by ArticleID desc”,即增加条件约束段(显示所有终审的非删除的文章)和排序段(按ID倒序排列)。完整查询语句如下:select top 8 ArticleID,ChannelID,ClassID,Title,Author,CopyFrom,Hits,UpdateTime from PE_Article where Deleted=$PE_False and Status=3 order by ArticleID desc修改完毕后单击页面底部“保存修改结果”按钮保存修改。单击页面顶部“更新缓存”链接更新网站缓存。前台浏览效果:注意:上图中有三个文章没有显示出标题,因为这三个文章在本频道中是不属于任何栏目的文章。如果您有这样的情况,请在添加动态标签(第二步)界面中,将“标签内容”中的“循环内容”之间,点击“字段列表”中的ActicleID改成点击Title字段即可。修改二:更改标题文字长度网站后台“系统设置”“网站自定义标签管理”,在“动态标签”中,修改您添加的动态标签。在“标签内容”中。将“LoopInfobegin$Field(0,GetUrl,Article,3)Infoend/Loop”中的“$Field(0,GetUrl,Article,3)”改成“”(即代码为LoopInfobeginInfoend/Loop)。将鼠标点击放入的“”间,点击“字段列表”中的“title”,按图片所示进行设置后点击“插入”按钮。其中:“输出长度”设置为20显示10个汉字,截断处理选择“显示”则显示:将鼠标点击放入的“”间,点击“字段列表”中的“acticleid”,按图片所示进行设置后点击“插入”按钮。其中:“输出方式”设置为路径:设置完成后“标签内容”中的代码为:“LoopInfobegin$Field(3,Text,20,0,0)Infoend/Loop”。修改完毕后单击页面底部“保存修改结果”按钮保存修改。单击页面顶部“更新缓存”链接更新网站缓存。这时,即可显示字数为20个、标题按倒序列的文章列表效果了。前台浏览效果:修改四:显示更多信息内容网站后台“系统设置”“网站自定义标签管理”,在“动态标签”中,修改您添加的动态标签。在“标签内容”中。将“标签内容”中的代码:“LoopInfobegin$Field(3,Text,20,0,0)Infoend/Loop”中加入您想要显示频道、栏目等样式,如:频道、栏目放在“”中LoopInfobegin$Field(3,Text,20,0,0)()-Infoend/Loop。然后将鼠标点击放入所要插入相应内容的位置,按图片所示进行设置后点击“插入”按钮:插入频道名插入栏目名插入作者名插入时间修改后完整查询语句如下:LoopInfobegin$Field(1,GetChannel,2)$Field(2,GetClass,3)$Field(3,Text,20,0,0)($Field(4,Text,8,0,1)-$Field(7,Text,0,1,0)Info

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论