人民需要艺术,艺术需要交流!

来源: BlogBus 原始链接: http://artscn.blogbus.com:80/s1088916/ 存档链接: https://web.archive.org/web/20061107163700id_/http://artscn.blogbus.com:80/s1088916/


人民需要艺术,艺术需要交流! 开始记录我的思想,不能因为它们与众不同而感到羞耻! 首页 2006-03-10

12:18:15 TSYS2.0修正文章跳链接生成错误 -[ tsys ] TSYS 2.0 beta1中,写新文章的时候,如果填写了“跳链接”这一项,即无法生成文章,点击文章标题的时候也不会跳转到指定的地址。之前有个做修改了 修改文件:/tsys/manage/inc/ResCreator.class.asp '具有跳链接的资源无需生成 If RsInfo("go_url") <> "" Then Sql = "update resource_list SET created=1 where id=" & RsInfo("id") Db.ExeCute(Sql) createRes = 1 Exit Function End If 红色部分 为添加部分 但是这样做的实质并没有真正的生成,只是将生成标示强加给了这个资源,点击文章标题的时候出现判断是visit_url是否为空,为空则提示错误,不为空则跳转到visit_url, CODE: [Copy to clipboard] Function ShowTitle(Rs) If Rs("visit_url")<>"" Then ShowTitle = "<a href=""javascript:window.open('" & Rs("visit_url") & "');void(0);"" title=""资源编号:" & Rs("id") &""">" & Rs("title") & "" Else ShowTitle = "<a href=""javascript:Uncreated();void(0);"" title=""资源编号:" & Rs("id") &""">" & Rs("title") & "" End If End Function 查看代码不难发现 CODE: [Copy to clipboard] If go_url <> "" Then file_path = go_url Else file_path = "" End If 也就是把go_url的值给了file_path,资源地址,而visit_url在写入时为 Rs("visit_url") = "" 所以就无法达到跳转了。。。 以上是原理部分。。。下面为修正方法: 修改/tsys/manage/Resource_Process.asp文件 将 CODE: [Copy to clipboard] If go_url <> "" Then file_path = go_url Else file_path = "" End If 替换为: CODE: [Copy to clipboard] If go_url <> "" Then visit_url = go_url file_path = "" Else visit_url = "" End If 注意添加一个定义visit_url, 修改文件:/tsys/manage/inc/ResCreator.class.asp 将 CODE: [Copy to clipboard] '具有跳链接的资源无需生成 If RsInfo("go_url") <> "" Then createRes = 1 Exit Function End If 替换为: CODE: [Copy to clipboard] '具有跳链接的资源无需生成 If RsInfo("go_url") <> "" Then Sql = "update resource_list SET created=1 where id=" & RsInfo("id") Db.ExeCute(Sql) createRes = 1 Exit Function End If 转载请注明出处: http://www.31u.net/blog/blogview.asp?logID=210 13zhang 发表于 12:18:15 | 阅读全文 | 评论(0) | 引用Trackback(0) | 编辑 2006-03-09

14:57:15 TSYS2.0文件不可以生成修正 -[ tsys ] 官方版本。在配置之后添加资源会出现文件不可以生成的错误 Microsoft VBScript 运行时错误 错误 ''800a003a'' 文件已存在 /admin/manage/inc/FunctionLib.class.asp,行293 ''函数:创建完整目录 ''参数:目录串 Public Function createFolder(strPath) strPath = Replace(strPath,"/", "") arrPath = Split(strPath, "") Dim Fso, I, tmpPath, arrPath Set Fso = Server.createObject(Cfg.FileSystemObject_Name) tmpPath = arrPath(0) For I=1 To UBound(arrPath) tmpPath = tmpPath & "" & arrPath(I) If Not Fso.FolderExists(tmpPath) Then ''判断文件夹是否存在,否则创建 Fso.createFolder tmpPath ''293行 End If Next End Function[/code] 可以看到FunctionLib.class.asp行293所在是创建完整目录的函数,这是生成HTML不可少的部分,从上面的代码注释可见作者已经想到的,但是文件夹判断上有错误,应该是忽略了最上的目录,所以判断出了问题,继续执行执行建立文件夹。此时,FSO组件会发现该路径已存在,我做了个小的修改,修正不可以生成的问题,以下是代码,覆盖以上可以了,本人测试通过的。。 ''函数:创建完整目录 ''参数:目录串 Public Function createFolder(strPath) Dim Fso, I, tmpPath, arrPath ,PathTMP On Error Resume Next strPath = Replace(strPath,"", "/") Set Fso = Server.createObject(Cfg.FileSystemObject_Name) arrPath = Split(strPath, "/") tmpPath = arrPath(0) For I=0 To UBound(arrPath) If I=0 Then PathTMP=arrPath(0) & "/" Else PathTMP=PathTMP&arrPath(I) & "/" tmpPath = Left(PathTMP,Len(PathTMP)-1) If Not Fso.FolderExists(tmpPath) Then Fso.createFolder(tmpPath) End If Next End Function 不过我也很纳闷一个问题,就是编辑原有的资源可以生成?? 不知道原因,有高手可以指点一二,感激。 转载请注明出处: 13zhang 发表于 14:57:15 | 阅读全文 | 评论(0) | 引用Trackback(0) | 编辑 2006-03-09

14:53:16 ~TSYS2.0线上指导~ -[ tsys ] TSYS2.0的用过不几次... 应该来说没什么发言权...仅此贴给大家稍稍稍稍做一个指导而已... TSYS2.0与1系列版本的比较 QUOTE: 系统内核重新编写,提升系统灵活性及可扩展能力 [升级]资源数据主表拆分,列表数据与内容大文本数据分表,以提升列表访问性能,减轻数据库压力。 [升级]频道管理,可以指定某频道个性化的目录生成规则、生成文件命名规则。 [修改]系统权限的管理,及权限在未来扩展开发中更方便创建、使用。 [增加]碎片(动态型、静态型、手工型),实现对于站点页面的非专业维护人员较简单的可视在线管理与生成。 [增加]目录类型的识别(“/site01/”, “c:/wwwroot/”),实现了单一Tsys 2.0系统可同时管理多个完全不同的网站、多域名站点,从而达到数据在多频道间的共享互利、使得系统的维护、升级一体化(仅推荐在SqlServer的数据库中实现)。 [修改]用户、角色权限可分离设置,同时又实现相互继承。例:在角色中设置好的权限可被其下属的所有管理员继承,同时又可对该组内指定管理员分配更佳个性化的权限。 [增加]资源模板标签解析功能,可使用更佳个性、简易编程的标签函数,如:left(), data(), pages_list(), filter_html()等 [增加]资源碎片模板标签解析功能,可使用更佳个性、简易编程的标签函数(注:此类标签与资源模板标签实现了互用性!) [升级]资源特性,碎片的出现,使得资源特性的使用更为灵活。完全可实再,如:新闻专题,页面特定位置内容生成等 [升级]文件系统,文件系统代码实现类化,方便二次扩展开发。同时一个用户可以同时被分配有多个目录的操作管理权限(删、传、改), TSYS2.0官方版本有两个..一个是论坛内部会员用的Tsys 2.0预览版,另外就是正式发布的TSYS 2.0beta1 TSYS 2.0beta1 版对Tsys 2.0预览版重要改进: 1.重新编写文件系统模块,采用更佳灵活的配置方式及可扩展编程。 2.重新编写资源模板生成模块内核及碎片生成模块程序内核,使这两者之间的TSYS 标签函数(如:left, filter_html, urlencode 等)可以实现互相调用。 3.重新调整频道设置,使得文件生成的存放路径及文件名规则更佳灵活 网友修改版也好几个..呵呵... 稍后提供下载....请关注...并且将给大家做介绍... TSYS引进了碎片的概念.... TSYS2.0 碎片工作原理 by andi QUOTE: 碎片三种类型: 三种类型分别是:动态、手工、静态。区别在于:“动态类型”是利用XML来调用数据库相关记录;“手工类型”是和TSYS1.1版的“页面内容替换”方式是一样的;“静态类型”是调用某一个文件里的内容。 碎片的更新原理: 打开“SliceUpdate_Process.asp”文件,细看第58行的“Function ExeCuteSliceById(IdList)”函数,它首先是打开“slice_list”表,通过“slice_type”(碎片类型)来将“slice_data” 赋于不同的变量:动态类型的交给“inc/SliceParser.class.asp”文件中的“Compile()”来处理;静态类型的交给“inc/ FunctionLib.class.asp”文件中的“ChkPathType()”来判断文件所使用的路径类型。无论是“动态类型”还是“静态类型”,其返回的结果都和“手工类型”一样,把结果赋于“tmpContent”变量。 下面接着是继续调用数据库取出“fPath”(要处理的文件名)、“start_flag”(起始标签)、“end_flag”(结束标签),将这四个变量都交给“SaveSliceContent()”函数来处理,下面接着看第116行“Function SaveSliceContent(fPath, sFlag, eFlag, strHtml)”。 在“SaveSliceContent()”中,开始以“Template.class.asp”中的过程声明一个对象:“Tpl”,上述四个变量都交给这个对象来处理了,其处理过程和TSYS1.1版的过程一样。大家感兴趣可以打开“Template.class.asp”文件看看。 碎片不足的地方: 大家在设置碎片的时候有没有发现,作用于文件的路径只能设置一个,如果一个碎片在多个文件中调用,是不是一样的碎片有设置多个。 其实在“SaveSliceContent()”函数中改改即可,偶的想法是判断出“Path”中一共有几个路径,然后设个循环依次处理。其处理方法完全参照TSYS1.1版来

对动态碎片的一点理解:

静态碎片不仅可以读动态ASP的文件,也可以读取完全静态的文件,如我做的静态碎片:

读取的是example/test1.htm的内容..... 尽管在后台找不到编辑被读取的文件编辑操作,但是做为灵活的可以读取动态和特定文件数据的一种更新模式,还是有很多用途的 在后台添加一个碎片选择静态类型时,并没有发现读取的文件地址,你可以重新打开碎片列表进行编辑,就会出现了... 13zhang 发表于 14:51:17 | 阅读全文 | 评论(1) | 引用Trackback(0) | 编辑 分页: 最后更新 最新评论 存档 我的链接