ASP SQL防注入的方法
更新時間:2008年12月25日 12:26:09 作者:
前一篇我們介紹了一種防SQL注入的終極方法,也就是最原始、最簡單、最有效也是最通用的方法,就是數據類型的檢查加單引號的處理,具體的內容前面一篇已經介紹過了,這里我就不重復了
下面我們將要介紹另一種在ASP里防SQL注入攻擊的方法,該方法不僅僅在ASP里適用,實際上可以在任何使用ADO對象模型與數據庫交互的語言中,準確的說稱之為基于ADO對象模型的防SQL注入的方法或許更恰當些。好了廢話不說了,來看看代碼
Dim conn,cmd,pra
set conn=server.createobject("adodb.connection")
conn.Open "…………" '這里省略數據庫連接字
set cmd=server.createobject("adodb.Command")
set pra=server.createobject("adodb.Parameter")
cmd.ActiveConnection = conn
cmd.CommandText = "update news set title=? where id =?"
cmd.CommandType = adCmdText
Set pra = cmd.CreateParameter("title", adVarWChar, adParamInput, 50, "1'2'3")
cmd.Parameters.Append pra
Set pra = cmd.CreateParameter("id", adInteger, adParamInput, , 10)
cmd.Parameters.Append pra
cmd.Execute
news表的id字段是Integer型的,title字段是nvarchar(50)型的,執(zhí)行的結果是把news表中id字段為10的記錄的title字段的內容改成“1'2'3”
復制代碼 代碼如下:
Dim conn,cmd,pra
set conn=server.createobject("adodb.connection")
conn.Open "…………" '這里省略數據庫連接字
set cmd=server.createobject("adodb.Command")
set pra=server.createobject("adodb.Parameter")
cmd.ActiveConnection = conn
cmd.CommandText = "update news set title=? where id =?"
cmd.CommandType = adCmdText
Set pra = cmd.CreateParameter("title", adVarWChar, adParamInput, 50, "1'2'3")
cmd.Parameters.Append pra
Set pra = cmd.CreateParameter("id", adInteger, adParamInput, , 10)
cmd.Parameters.Append pra
cmd.Execute
news表的id字段是Integer型的,title字段是nvarchar(50)型的,執(zhí)行的結果是把news表中id字段為10的記錄的title字段的內容改成“1'2'3”
相關文章
Jquery實現點擊按鈕,連續(xù)地向textarea中添加值的實例代碼
本篇文章主要是對Jquery實現點擊按鈕,連續(xù)地向textarea中添加值的實例代碼進行了介紹,需要的朋友可以過來參考下,希望對大家有所幫助2014-03-03JQuery中判斷一個元素下面是否有內容或者有某個標簽的判斷代碼
網站開發(fā)時,我們時常需要把沒有內容的標簽隱藏或者去掉。在用JQ有兩種好的解決辦法2012-02-02