电脑技术学习

动易生成百度地图的出错的分析和解决

dn001

动易cms以其易上手和功能强大收到了广大站长朋友欢迎,在asp原因的cms系统中占有重要的地位.但是使用动易cms,也会遇到很多小bug,今天就来介绍一个.

石家庄seo在动易自带的生成百度规范XML地图时发现总是出错,如图:

分析了一下代码发现,因为有的文章由于格式和排版的需要,编辑的时候会产出大量的非文字html代码,如&nbsp(空格),&amp(&);等,在生成当前页面的内容时,在生成器截取文章内容第600个字符时正好把这些代码截断,导致浏览器无法翻正确译,所以就出现了这种情况。
好了原因找到了,下面就给出解决办法:
用编辑器打开管理员目录下的:Admin_CreateOther.asp文件
找到下面这一行:
strHTML = strHTML & "<text>" & GetSubStr(fhtml(rsArticle(15)), 600, "") & "</text>" & vbCrLf;

修改成:;

if Right(GetSubStr(fhtml(rsArticle(15)), 600, ""),1)="p" then
strHTML = strHTML & "<text>" & GetSubStr(fhtml(rsArticle(15)), 601, "") & "</text>" & vbCrLf
; elseif Right(GetSubStr(fhtml(rsArticle(15)), 600, ""),1)="m" then
strHTML = strHTML & "<text>" & GetSubStr(fhtml(rsArticle(15)), 602, "") & "</text>" & vbCrLf
; elseif Right(GetSubStr(fhtml(rsArticle(15)), 600, ""),1)="a" then
strHTML = strHTML & "<text>" & GetSubStr(fhtml(rsArticle(15)), 598, "") & "</text>" & vbCrLf
; elseif Right(GetSubStr(fhtml(rsArticle(15)), 600, ""),1)="&" then
strHTML = strHTML & "<text>" & GetSubStr(fhtml(rsArticle(15)), 599, "") & "</text>" & vbCrLf
; else
strHTML = strHTML & "<text>" & GetSubStr(fhtml(rsArticle(15)), 600, "") & "</text>" & vbCrLf
; End If

这样就可以了,经过本人测试,程序运行正常。
;