日韩欧美国产精品免费一二-日韩欧美国产精品亚洲二区-日韩欧美国产精品专区-日韩欧美国产另-日韩欧美国产免费看-日韩欧美国产免费看清风阁

LOGO OA教程 ERP教程 模切知識(shí)交流 PMS教程 CRM教程 開發(fā)文檔 其他文檔  
 
網(wǎng)站管理員

ASP技巧:Ewebeditor及fckeditork單引號(hào)的問題

admin
2010年8月19日 22:33 本文熱度 3941
Ewebeditor及fckeditork,90%的網(wǎng)站都是采用這兩種編輯器作為產(chǎn)品或者內(nèi)容的說明部分的編輯窗口,近日,一客戶的外貿(mào)站點(diǎn)基本上快完工了,因客戶產(chǎn)品分類多,故而讓客戶自己在后臺(tái)添加產(chǎn)品,但是客戶反映,在后臺(tái)添加產(chǎn)品時(shí),如果產(chǎn)品說明內(nèi)容太過復(fù)雜的話,產(chǎn)品怎么也添加不入數(shù)據(jù)庫(kù)中。

當(dāng)時(shí),我們也好生郁悶,這到底怎么回事,我們親自測(cè)試后臺(tái)添加任意的產(chǎn)品或者文字都能成功,偏偏他就不行,在網(wǎng)站搜索了相關(guān)的如“Ewebeditor 不能添加到數(shù)據(jù)庫(kù)”,似乎找到了一點(diǎn)答案,因Ewebeditor自身沒對(duì)單引號(hào)過濾,導(dǎo)致了添加不到數(shù)據(jù)庫(kù)的問題。于是乎,我們把編輯器換成了fckeditork,可是還是不行,那是Ewebeditor及fckeditork自帶的不完善導(dǎo)致的嗎?為什么一個(gè)簡(jiǎn)單的單引號(hào)會(huì)引發(fā)不能添加到數(shù)據(jù)庫(kù)呢,想到這里,我們想到了分析下入庫(kù)代碼,我們采用的是SQL=insert into product(title,content) values(' " &request("title")& "' ,' "&request("content")& " ' )的寫法,于是我們找到客戶當(dāng)時(shí)COPY進(jìn)編輯器里的內(nèi)容,發(fā)現(xiàn),果然這內(nèi)容中包括有單引號(hào),原來,正是由于客戶提交到編輯器里的內(nèi)容中含有單引號(hào),導(dǎo)致我們的SQL語(yǔ)句變化了,相當(dāng)于原來是SQL=insert into product(title,content) values('內(nèi)容' ,'內(nèi)容' )變成了SQL=insert into product(title,content) values(' 內(nèi)容' ,' 內(nèi)容'' ),我們細(xì)看就知道,就因?yàn)檫@content里多了個(gè)單引號(hào),SQL語(yǔ)句發(fā)生的嚴(yán)重的寫法錯(cuò)誤,但是,我們也奇怪,既然他寫法錯(cuò)誤,為什么SQL語(yǔ)句不給出錯(cuò)誤提示呢,竟然也會(huì)提示操作成功,想到這里,我們想到了2003年那幾年,普遍的小黑客喜歡用的' or' =' or' 的后臺(tái)入侵法,是乎正是利用了SQL執(zhí)行時(shí),沒過濾單引號(hào)的BUG,導(dǎo)致SQL怎么執(zhí)行,結(jié)果都返回真,呵呵,沒想到,原以為寫程序盡量圖個(gè)簡(jiǎn)單明了,也是個(gè)錯(cuò)啊。好了,問題找到了,以后,凡是SQL入庫(kù)前,我們都把字段過濾后再傳值,就不會(huì)再出這樣的問題了,下面是一個(gè)非常完善的SQL安全過濾函數(shù),大家直接拿去就可以調(diào)用了。

Function HTMLEncode(Str)
 If Isnull(Str) Then
     HTMLEncode = ""
     Exit Function
 End If
 Str = Replace(Str,Chr(0),"", 1, -1, 1)
 Str = Replace(Str, """", """, 1, -1, 1)
 Str = Replace(Str,"<","&lt;", 1, -1, 1)
 Str = Replace(Str,">","&gt;", 1, -1, 1)
 Str = Replace(Str, "script", "&#115;cript", 1, -1, 0)
 Str = Replace(Str, "SCRIPT", "&#083;CRIPT", 1, -1, 0)
 Str = Replace(Str, "Script", "&#083;cript", 1, -1, 0)
 Str = Replace(Str, "script", "&#083;cript", 1, -1, 1)
 Str = Replace(Str, "object", "&#111;bject", 1, -1, 0)
 Str = Replace(Str, "OBJECT", "&#079;BJECT", 1, -1, 0)
 Str = Replace(Str, "Object", "&#079;bject", 1, -1, 0)
 Str = Replace(Str, "object", "&#079;bject", 1, -1, 1)
 Str = Replace(Str, "applet", "&#097;pplet", 1, -1, 0)
 Str = Replace(Str, "APPLET", "&#065;PPLET", 1, -1, 0)
 Str = Replace(Str, "Applet", "&#065;pplet", 1, -1, 0)
 Str = Replace(Str, "applet", "&#065;pplet", 1, -1, 1)
 Str = Replace(Str, "[", "&#091;")
 Str = Replace(Str, "]", "&#093;")
 Str = Replace(Str, """", "", 1, -1, 1)
 Str = Replace(Str, "=", "&#061;", 1, -1, 1)
 Str = Replace(Str, "'", "''", 1, -1, 1)
 Str = Replace(Str, "select", "sel&#101;ct", 1, -1, 1)
 Str = Replace(Str, "execute", "&#101xecute", 1, -1, 1)
 Str = Replace(Str, "exec", "&#101xec", 1, -1, 1)
 Str = Replace(Str, "join", "jo&#105;n", 1, -1, 1)
 Str = Replace(Str, "union", "un&#105;on", 1, -1, 1)
 Str = Replace(Str, "where", "wh&#101;re", 1, -1, 1)
 Str = Replace(Str, "insert", "ins&#101;rt", 1, -1, 1)
 Str = Replace(Str, "delete", "del&#101;te", 1, -1, 1)
 Str = Replace(Str, "update", "up&#100;ate", 1, -1, 1)
 Str = Replace(Str, "like", "lik&#101;", 1, -1, 1)
 Str = Replace(Str, "drop", "dro&#112;", 1, -1, 1)
 Str = Replace(Str, "create", "cr&#101;ate", 1, -1, 1)
 Str = Replace(Str, "rename", "ren&#097;me", 1, -1, 1)
 Str = Replace(Str, "count", "co&#117;nt", 1, -1, 1)
 Str = Replace(Str, "chr", "c&#104;r", 1, -1, 1)
 Str = Replace(Str, "mid", "m&#105;d", 1, -1, 1)
 Str = Replace(Str, "truncate", "trunc&#097;te", 1, -1, 1)
 Str = Replace(Str, "nchar", "nch&#097;r", 1, -1, 1)
 Str = Replace(Str, "char", "ch&#097;r", 1, -1, 1)
 Str = Replace(Str, "alter", "alt&#101;r", 1, -1, 1)
 Str = Replace(Str, "cast", "ca&#115;t", 1, -1, 1)
 Str = Replace(Str, "exists", "e&#120;ists", 1, -1, 1)
 Str = Replace(Str,Chr(13),"<br>", 1, -1, 1)
 HTMLEncode = Replace(Str,"'","''", 1, -1, 1)
End Function

該文章在 2010/8/19 22:33:22 編輯過
關(guān)鍵字查詢
相關(guān)文章
正在查詢...
點(diǎn)晴ERP是一款針對(duì)中小制造業(yè)的專業(yè)生產(chǎn)管理軟件系統(tǒng),系統(tǒng)成熟度和易用性得到了國(guó)內(nèi)大量中小企業(yè)的青睞。
點(diǎn)晴PMS碼頭管理系統(tǒng)主要針對(duì)港口碼頭集裝箱與散貨日常運(yùn)作、調(diào)度、堆場(chǎng)、車隊(duì)、財(cái)務(wù)費(fèi)用、相關(guān)報(bào)表等業(yè)務(wù)管理,結(jié)合碼頭的業(yè)務(wù)特點(diǎn),圍繞調(diào)度、堆場(chǎng)作業(yè)而開發(fā)的。集技術(shù)的先進(jìn)性、管理的有效性于一體,是物流碼頭及其他港口類企業(yè)的高效ERP管理信息系統(tǒng)。
點(diǎn)晴WMS倉(cāng)儲(chǔ)管理系統(tǒng)提供了貨物產(chǎn)品管理,銷售管理,采購(gòu)管理,倉(cāng)儲(chǔ)管理,倉(cāng)庫(kù)管理,保質(zhì)期管理,貨位管理,庫(kù)位管理,生產(chǎn)管理,WMS管理系統(tǒng),標(biāo)簽打印,條形碼,二維碼管理,批號(hào)管理軟件。
點(diǎn)晴免費(fèi)OA是一款軟件和通用服務(wù)都免費(fèi),不限功能、不限時(shí)間、不限用戶的免費(fèi)OA協(xié)同辦公管理系統(tǒng)。
Copyright 2010-2025 ClickSun All Rights Reserved

主站蜘蛛池模板: 国产a∨精品一区二区三区不 | 国产美女视频国产视视频 | 亚洲色大成 | 电视剧免费在线观看 | 最新精品亚洲成a人在线观看 | 日本乱偷| 欧美高清国产一区二区三区 | 欧美日韩亚 | 亚洲v高清免费在线观看 | 手机韩剧天天更新韩剧免费看 | 亚洲欧美中文日韩v在线观看 | 欧美三级在线观看国产 | 精品区在线观看 | 五月天激情综合网 | 银杏影院 | 怡红院熟女| 亚洲综合一区三区 | 国产主播福利 | 亚洲a日本一区二区 | 国产伦理一区二区 | 南瓜影视 | 1000部夫妻午夜免费 | 亚洲精品偷拍区 | 费精品国产一区国产精品剧情在线 | 欧美日韩精品一区 | 亚洲色成人www永久网站 | 天堂8在线天堂资源 | 国产午夜亚洲精品理论片八戒 | 免费一区二区三区视频 | 成年免费国产大片 | 超级乱婬片国语对白 | 国产二区三区午夜免费视频 | 2025年国产 | 日韩伦理福利免费 | 日韩欧美综合一区二区三区 | 亚洲色熟女图激情另类图区 | 伊人成年网站综合网 | 欧美激情一区二区三区高清视 | 日本一区二区在线视频 | 好吊妞在线视频免费观看综合网 | 亚洲人成网站18 |