a亚洲精品_精品国产91乱码一区二区三区_亚洲精品在线免费观看视频_欧美日韩亚洲国产综合_久久久久久久久久久成人_在线区

首頁 > 網(wǎng)站 > 網(wǎng)頁設(shè)計(jì) > 正文

一份代碼編寫標(biāo)準(zhǔn)

2019-09-08 23:43:03
字體:
供稿:網(wǎng)友
一、通用源代碼格式規(guī)則
1.1 開發(fā)工具

推薦使用Microsoft  公司的Visual InterDev 來書寫ASP 代碼,使用Macromedia ? 公司的Dreamweaver 來書寫HTML代碼,也可以使用UltraEdit、ASPEdit 2000等開發(fā)工具。

1.2 縮進(jìn)空格

縮進(jìn)空格是指在每一級(jí)有兩到四個(gè)空格。不要在源代碼中保留TAB字符,這是因?yàn)門AB字符會(huì)隨著不同用戶的不同設(shè)置和不同的資源管理工具(打印、文檔、版本控制等)而代表不同的寬度。

1.3 數(shù)據(jù)合法性檢查

所有表單提交頁面中,表單上必須填寫項(xiàng)目和填寫項(xiàng)目中非法輸入的判斷都在頁面中用javascript在客戶端判斷,如果必須和服務(wù)器端數(shù)據(jù)比較才能判斷輸入項(xiàng)目是否正確不在此例。
所有提交的信息(GET方式及POST方式)都必須在服務(wù)器端重新進(jìn)行數(shù)據(jù)合法性校驗(yàn),并過濾非法字符(& ; ` ' / " | * ? ~ < > ^ ( ) [ ] { } $ /n /r),例如,將"'"替換成"''" (兩個(gè)單引號(hào))號(hào)(替換字符串的工作將統(tǒng)一使用公共的CheckInputString(str) 函數(shù));而對(duì)于數(shù)字型變量,要檢查輸入的數(shù)據(jù)是否全為數(shù)字(javascript中使用isFinite或isNaN, VbScript中使用IsNumeric)。

1.4 參數(shù)傳遞

建議使用POST方法,而不推薦使用GET方法;
嚴(yán)禁使用GET方法、SESSION或其它方式傳遞SQL語句;
禁止使用GET方式傳遞大量的查詢字符串,特別是未經(jīng)編碼的漢字,HTTP協(xié)議傳送表單域比查詢字符串效率要高,而且?guī)в幸粋€(gè)大的查詢字符串的頁面在某些瀏覽器上會(huì)失效;
禁止使用SESSION、COOKIE傳遞非會(huì)話期間必要的參數(shù)。

1.5 URL

包含頭文件,頁面的鏈接,提交的頁面,用到的圖片,如果引用的是如"include"、"image"等公共部分,必須使用絕對(duì)路徑,即以虛根目錄"/"開始的路徑,以提高運(yùn)行效率。例如:

6.4 使用最簡(jiǎn)單的游標(biāo)類型和記錄鎖定方式

在 ADO 中定義了四種不同的游標(biāo)類型:
l動(dòng)態(tài)游標(biāo)(adOpenForwardOnly) - 用于查看其他用戶所作的添加、更改和刪除,并用于不依賴書簽的 Recordset 中各種類型的移動(dòng)。如果提供者支持,可使用書簽。
l鍵集游標(biāo)(adOpenKeyset) - 其行為類似動(dòng)態(tài)游標(biāo),不同的只是禁止查看其他用戶添加的記錄,并禁止訪問其他用戶刪除的記錄,其他用戶所作的數(shù)據(jù)更改將依然可見。它始終支持書簽,因此允許 Recordset 中各種類型的移動(dòng)。
l靜態(tài)游標(biāo)(adOpenDynamic) - 提供記錄集合的靜態(tài)副本以查找數(shù)據(jù)或生成報(bào)告。它始終支持書簽,因此允許 Recordset 中各種類型的移動(dòng)。其他用戶所作的添加、更改或刪除將不可見。這是打開客戶端 (ADOR) Recordset 對(duì)象時(shí)唯一允許使用的游標(biāo)類型。
l僅向前游標(biāo)(adOpenStatic) - 除僅允許在記錄中向前滾動(dòng)之外,其行為類似動(dòng)態(tài)游標(biāo)。這樣,當(dāng)需要在 Recordset 中單程移動(dòng)時(shí)就可提高性能。

在打開 Recordset 之前設(shè)置 CursorType 屬性來選擇游標(biāo)類型,或使用 Open 方法傳遞 CursorType 參數(shù)。部分提供者不支持所有游標(biāo)類型。請(qǐng)檢查提供者的文檔。如果沒有指定游標(biāo)類型,ADO 將默認(rèn)打開僅向前游標(biāo)。

在 ADO 中定義了四種不同的游標(biāo)類型:
ladLockReadOnly - 默認(rèn)值,只讀。無法更改數(shù)據(jù)。
ladLockPessimistic - 保守式記錄鎖定(逐條)。提供者執(zhí)行必要的操作確保成功編輯記錄,通常采用編輯時(shí)立即鎖定數(shù)據(jù)源的記錄的方式。
ladLockOptimistic - 開放式記錄鎖定(逐條)。提供者使用開放式鎖定,只在調(diào)用 Update 方法時(shí)鎖定記錄。
ladLockBatchOptimistic - 開放式批更新。用于與立即更新模式相反的批更新模式。

打開 Recordset 前設(shè)置 LockType 屬性可指定打開時(shí)提供者應(yīng)該使用的鎖定類型。讀取該屬性可返回在打開的 Recordset 對(duì)象上正在使用的鎖定類型。Recordset 關(guān)閉時(shí) LockType 屬性為讀/寫,打開時(shí)該屬性為只讀。

在實(shí)際使用過程中應(yīng)該使用適合于處理任務(wù)的最簡(jiǎn)單的游標(biāo)類型和記錄鎖定方式。例如:

僅打開一個(gè)靜態(tài)的記錄集并輸出:
Rs.Open sql,Conn,0,1 ' adOpenForwardOnly, adLockReadOnly
打開的記錄集中有text類型的字段:
Rs.Open sql,Conn,1,1 'adOpenKeyset, adLockReadOnly

6.4 SQL字符串過濾

所有的字符串輸入框在向數(shù)據(jù)庫提交查詢、插入、刪除或修改一條記錄時(shí)必須用字符串過濾函數(shù)檢查,即:
字符型:復(fù)寫提交內(nèi)容中的"'"、"''"等(使用公共函數(shù)的CheckInputString()。),并檢查字符串的長(zhǎng)度是否超長(zhǎng)。
數(shù)值型:使用IsNumeric()判斷輸入是否為數(shù)字。
整 型:使用Int(), Fix(),Round() 截取其整數(shù)值。
日期型:使用isDate()函數(shù)判斷是否為正確的日期輸入。

6.5 SQL事務(wù)執(zhí)行

對(duì)數(shù)據(jù)庫操作的事務(wù)一般應(yīng)當(dāng)使用SQL的存儲(chǔ)過程執(zhí)行。對(duì)于需要在ASP頁面中執(zhí)行的數(shù)據(jù)庫操作,所有插入、刪除、修改數(shù)據(jù)庫不得使用RecordSet對(duì)象,必須使用Connect對(duì)象用SQL語句執(zhí)行,RecordSet只在執(zhí)行查詢時(shí)使用。所有檢索數(shù)據(jù)庫的操作禁止使用"SELECT * FROM …",而要使用"SELECT 字段一, 字段二, 字段三, … FROM…"。

6.6 ADO對(duì)象的關(guān)閉

所有連接數(shù)據(jù)庫頁面中,Connect和Recordset等ADO對(duì)象必須在用完后立即關(guān)閉(Close),然后將其對(duì)象釋放(Set ***=nothing)。


發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表

圖片精選

主站蜘蛛池模板: 国产精品呻吟av | 久草在线2 | 欧美日韩一区电影 | 亚洲免费成人av | 日韩成人在线播放 | 国产精品一区在线看 | 国产精品成人3p一区二区三区 | 久久视频在线 | 精品一区二区免费视频 | 久久久综合网 | 午夜影院在线观看 | 天堂一区二区三区在线 | 精品亚洲一区二区三区 | 香蕉在线视频免费 | 国产一区二区在线看 | 久久久精品免费观看 | 午夜小视频在线观看 | 天堂va蜜桃一区二区三区 | 一区二区视频 | 欧美一级h | 天天干天天操 | 中文字幕日韩欧美一区二区三区 | 一级毛片免费播放 | 日本一区二区精品视频 | 十八岁禁看网站 | 亚洲看片| 九九视频这里只有精品 | 国产免费av大片 | 精品亚洲永久免费精品 | 日本在线天堂 | 在线免费看黄网站 | 免费黄频在线观看 | 国产香蕉视频在线播放 | 亚洲一区二区av | 免费看一区二区三区 | 成人av免费观看 | 日韩久久久久 | 黄页网站在线免费观看 | avsex国产| 十环传奇在线观看完整免费高清 | 色呦呦视频在线观看 |