网络编程 | 站长之家 | 网页制作 | 图形图象 | 操作系统 | 冲浪宝典 | 软件教学 | 网络办公 | 邮件系统 | 网络安全 | 认证考试 | 系统进程
Firefox | IE | Maxthon | 迅雷 | 电驴 | BitComet | FlashGet | QQ | QQ空间 | Vista | 输入法 | Ghost | Word | Excel | wps | Powerpoint
asp | .net | php | jsp | Sql | c# | Ajax | xml | Dreamweaver | FrontPages | Javascript | css | photoshop | fireworks | Flash | Cad | Discuz!
当前位置 > 网站建设学院 > 网络编程 > ASP技巧
Tag:注入,存储过程,分页,安全,优化,xmlhttp,fso,jmail,application,session,防盗链,stream,无组件,组件,md5,乱码,缓存,加密,验证码,算法,cookies,ubb,正则表达式,水印,索引,日志,压缩,base64,url重写,上传,控件,Web.config,JDBC,函数,内存,PDF,迁移,结构,破解,编译,配置,进程,分词,IIS,Apache,Tomcat,phpmyadmin,Gzip,触发器,socket
网络编程:ASP教程,ASP.NET教程,PHP教程,JSP教程,C#教程,数据库,XML教程,Ajax,Java,Perl,Shell,VB教程,Delphi,C/C++教程,软件工程,J2EE/J2ME,移动开发
本月文章推荐
.如何使用JavaScript来写ASP程序.
.如何增强ASP程序性能(1).
.IIS 处理 SEARCH 请求漏洞.
.在asp中使用js的encodeURICompon.
.ASP实现SQL语句日期格式的加减运.
.如何用ASP将一大段文字中的HTML的.
.计算ASP页面的载入时间.
.一种理论上最快的Web数据库分页方.
.ASP.NET中处理datetime的一些通用.
.在HTML页面中实现点击数统计.
.asp动态生成wbmp图片的程序.
.Web网站的错误控制.
.ASP实现多语言支持.
.asp实现关键词获取(各搜索引擎,g.
.Asp:Cookies应用指南,详细代码及.
.通过网络域名得到这台主机的IP地.
.在ASP中如何访问Novell下的数据库.
.整站二进制数据库文件还原.
.让Session对象在不同域名下实现共.
.利用OWC服务器端组件动态生成图表.

自动清除替换ACCESS(MDB)数据库的日文字符的ASP代码

发表日期:2008-5-3


我们都知道ACCESS是ASP的亲密伙伴。因为两种最简单的东西碰在一起总能迸发出火花。
然而,当我们过滤不严格的时候经常出现日文字符,这个时候搜索之后就会出现日文溢出。
此时我们通常能想到的想法是找一个exe程序,把这个问题解决掉。我原来用C#写过这样一个类似的程序。
Google里面应该能找到我以前写的那个。就不说了。
后来某一天,我发现ASP就能实现。我当时真的觉得自己太屎了。
不过ASP的这种方法很不好。容易造成系统崩溃(如果数据库大)。
所以只是写在这里。算是抛砖引玉。

'下面我解释一下下:
Function TransferJapanDc9CnInDB()

  On Error Resume Next
  Err.Clear
  Dim objRS,i
  Set objRS=Server.CreateObject("ADODB.Recordset")
  objRS.CursorType = adOpenKeyset
  objRS.LockType = adLockReadOnly
  objRS.ActiveConnection=objConn
  objRS.Source="SELECT * FROM [blog_Comment]"
  objRS.Open()

  If (Not objRS.bof) And (Not objRS.eof) Then

    For i=1 to objRS.RecordCount
'遍历,看看有没有日文,如果有,就溢出了,随便搜索一个东西就行了。搜什么无所谓。因为是遍历ACCESS只要指针移动到日文就溢出。
    objConn.Execute("SELECT * FROM [blog_Comment] WHERE comm_ID="&objRS("comm_ID")&" AND [comm_Content] LIKE '%URL%'")
    If Err.Number=-2147217900 Then
'因为是on err继续 所以这里找到溢出的错误代码,这个是自己debug出来的,实际上不是从什么地方找的。
      objConn.Execute("UPDATE [blog_Comment] SET [comm_Content]='"&FilterSQL(Japan2Html(objRS("comm_Content")))&"',[comm_Author]='"&FilterSQL(Japan2Dc9CnHtml(objRS("comm_Author")))&"' WHERE comm_ID="&objRS("comm_ID")&" ")
'这个就是把日文替换一下,思路是不是很巧妙。恩。不过数据库庞大的化,反复溢出就会很出问题的。内存宝宝会哭的。
      Err.Clear
    End If
    objRS.MoveNext
    Next

  End If

  objRS.Close
  Set objRS=Nothing
'www.dc9.cn http://www.devdao.com/ 07/11/28
End Function

Function Japan2Dc9CnHtml(source)
    source=Replace(source,"ガ","ガ")
    source=Replace(source,"ギ","ギ")
    source=Replace(source,"ア","ア")
    source=Replace(source,"ゲ","ゲ")
    source=Replace(source,"ゴ","ゴ")
    source=Replace(source,"ザ","ザ")
    source=Replace(source,"ジ","ジ")
    source=Replace(source,"ズ","ズ")
    source=Replace(source,"ゼ","ゼ")
    source=Replace(source,"ゾ","ゾ")
    source=Replace(source,"ダ","ダ")
    source=Replace(source,"ヂ","ヂ")
    source=Replace(source,"ヅ","ヅ")
    source=Replace(source,"デ","デ")
    source=Replace(source,"ド","ド")
    source=Replace(source,"バ","バ")
    source=Replace(source,"パ","パ")
    source=Replace(source,"ビ","ビ")
    source=Replace(source,"ピ","ピ")
    source=Replace(source,"ブ","ブ")
    source=Replace(source,"ブ","ブ")
    source=Replace(source,"プ","プ")
    source=Replace(source,"ベ","ベ")
    source=Replace(source,"ペ","ペ")
    source=Replace(source,"ボ","ボ")
    source=Replace(source,"ポ","ポ")
    source=Replace(source,"ヴ","ヴ")
    Japan2Html=source
End Function

上一篇:ASP,PHP与.NET伪造HTTP-REFERER方法及防止伪造REFERER方法探讨 人气:3096
下一篇:rs.open与conn.execute详细解释 人气:3757
浏览全部ASP的内容 Dreamweaver插件下载 网页广告代码 祝你圣诞节快乐 2009年新年快乐