resultid=split(right(request("resultid"),len(request("resultid"))-2),",")
請問下這句代碼有安全隱患嗎,寫的一個在線考試系統,計算分數的時候出現例外,總共有52道題,resultid是前臺考試每個小題目的id拼接的字串 ,后臺處理的時候變成看102道題,還有的變成了260道題但是幾率很小,百分之一的幾率都不到
uj5u.com熱心網友回復:
錯誤資訊?出錯時的 resultid 值是什么?
Split() 就算給個空字串都不會錯。
Right() 只有第二個引數為負的時候才會錯
即 resultid 的值長度小于2的時候才會錯,你可以前面加個判斷啊。
uj5u.com熱心網友回復:
resultid其實就是每個題目以逗號標記拼接的字串,然后用split分割成沒個小題目的id值一共有52個題目,也就是分割了52,出現的例外就是 超過了52個變成104個260個等等比如有3個小題目 那最初resulid值為",,1,2,3"前面多了2個逗號,所以len(request("resultid"))-2)這個才會減二uj5u.com熱心網友回復:
還是沒懂你的意思你固定52的又前面兩個空,
不明白就自己強制輸出
asp里把資料都暴露出來
"resultid"
len(request("resultid"))-2)
看看出錯的時候這些值都是什么值
為什么會出現錯誤的情況
uj5u.com熱心網友回復:
response.write到頁面里來,看看出錯的時候這些值分別是什么轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/81888.html
標籤:網絡編程
上一篇:請教C# 代碼轉成VB6代碼
下一篇:webservice介面呼叫例外,如何解決?(Exception occurred while trying to invoke service method
