国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > ASP > 正文

使用ASP開發(fā)web站點_ASP教程

2024-05-04 11:03:57
字體:
供稿:網(wǎng)友

推薦:如何用ASP來獲取客戶端真實IP的地址?
要想透過代理服務(wù)器取得客戶端的真實IP地址,就要使用 Request.ServerVariables("HTTP_X_FORWARDED_FOR") 來讀取。不過要注意的事,并不是每個代理服務(wù)器都能用 Request.ServerVariab

一般的大型網(wǎng)站目前已經(jīng)越來越少的使用ASP來架構(gòu),不過在中小型商務(wù)站點上,ASP依然占據(jù)了較大的市場范圍。ASP以其簡單,開發(fā)周期短,易維護的優(yōu)點受到中小型站點管理員的青睞。不過,據(jù)我所知,完全使用ASP來集成更新維護網(wǎng)站的僅常見于那些真正的商務(wù)站點或者比較成熟的技術(shù)站點,更多的網(wǎng)站僅僅有一些獨立的欄目在使用ASP程序。這樣的特點是站點管理過于分散,比如:每進(jìn)入一個欄目管理都要輸入不同的帳號賀密碼。不僅浪費管理員的精力,更加重了網(wǎng)站的維護困難程度。而我們看見的那些單欄目使用的ASP程序有很多是從網(wǎng)上尋找的源代碼,這樣使你的網(wǎng)站安全性也會受到一定的威脅,因為網(wǎng)上提供的源代碼都是開放的,每個人都可以研究這個代碼,當(dāng)然后果你也知道,ASP的安全性本來就是一個受用戶長期關(guān)注的問題,而被開放的源代碼更是危險。當(dāng)然我并不是不贊成大家使用網(wǎng)上的源代碼,只是希望各位能夠注意這個問題,不要完全信奉拿來主義,該修改的地方還是要修改,該打補丁的地方還是要打上補?。ó?dāng)然絕不是讓你去修改人家的版權(quán)信息)。

綜上所述,我覺得凡是對ASP有一定了解的人都可以自己開發(fā)一套整站系統(tǒng),并且使集成化的。本專題的目的就是為了指引大家如何建立一套完整的web動態(tài)站點。

為了使各個層次的讀者都能看懂本文,有必要先講講下面這些話:

如果你是初學(xué)者,你應(yīng)該掌握什么?
必要的VBScript和JavaScript。VBS作為主要的ASP程序編寫語言來自于Visual Basic,學(xué)過VB的人可以很快的掌握,JavaScript就不用說了,嵌入在網(wǎng)頁里面,客戶端使用平凡的腳本語言。你最好擁有一定的HTML語言知識,不然會覺得很惱火。

SQL語句基礎(chǔ)亦是基礎(chǔ)!
初期你不必掌握全部,基本的就可以了。

前提:我們將用最基本的語句和功能編寫一套web動態(tài)站點的整站系統(tǒng)。

您只要認(rèn)真看完此專題,可以基本掌握web整站開發(fā)的思想,并已能賦予實際應(yīng)用。當(dāng)然,隨學(xué)習(xí)的深入,您可以加入更多的功能或?qū)Τ绦蛩惴ㄟM(jìn)行改進(jìn)。


(1)對網(wǎng)站進(jìn)行需求分析:

很多人都忽略了這一點,他們認(rèn)為開發(fā)web站點程序不需要用軟件工程的思想,實際上最后會導(dǎo)致web站點的無序化,比如:一些人想到要開發(fā)什么站點想都不想,直接開始寫代碼,想到什么就寫什么,直到他們寫完之后,才發(fā)現(xiàn)我還需要什么功能沒有寫,然后就立刻返回加代碼。這樣的話,使得程序極易出錯。所以一開始的時候還是建議你像軟件工程一樣,制定web站點開發(fā)的需求分析,應(yīng)包括所開發(fā)web系統(tǒng)的基本要求,如:功能,性能,用戶群,基本的數(shù)據(jù)流程和處理流程,安全與保密的要求。web系統(tǒng)的目標(biāo),條件、假設(shè)、限制等。

詳細(xì)一點來說,就以我們的站點來說,它是一個技術(shù)型站點,就應(yīng)包括新聞系統(tǒng)、文章系統(tǒng)、下載系統(tǒng)等等,那么這些系統(tǒng)需要具備哪些功能就是我們要分析的問題。

下面我們就從實例來分析要實現(xiàn)的功能:

新聞系統(tǒng):一個新聞系統(tǒng)最重要的一點就是能夠?qū)崟r的把新聞傳達(dá)給用戶,那么新聞系統(tǒng)應(yīng)該具備哪些功能?發(fā)布時間,點擊次數(shù),插入圖片,以及對新聞來源赫作者的一些注釋。當(dāng)然發(fā)布時間這些都是非常容易實現(xiàn)的功能。插入圖片可以使用html功能,ubb轉(zhuǎn)換表或上傳圖片來解決,這些方法本文就不再一一闡述,大家可以參考有關(guān)資料。

實際上,不管對于什么系統(tǒng),當(dāng)你在一開始對其需求進(jìn)行了詳細(xì)分析之后,實現(xiàn)起來肯定比想到哪寫道哪輕松高效。如果方便的話用電腦或者紙將web系統(tǒng)的開發(fā)需求記錄下來,在開發(fā)過程中也可以進(jìn)行參考。這里還不得不提的一個話題是關(guān)于用戶驗證的,一般我們對用戶的驗證使用的是session和cookie,Session變量和cookies是同一類型的。如果某用戶將瀏覽器設(shè)置為不兼容任何cookie,那么該用戶就無法使用這個Session變量及cookies。一般來說,對于網(wǎng)站管理員的操作我個人推薦使用session,因為我們的主題是開發(fā)web整站,那么管理員肯定要在多個管理頁面中跳轉(zhuǎn),在這里session是非常方便的。若是對用戶進(jìn)行驗證,那么可以使用cookies,比如用戶可以設(shè)置強制瀏覽器把cookie存儲在計算機上面,只需要使用response.cookies的Expires屬性就可以輕松的做到,還有一點就是因為sessionID的信息是非常容易丟失的,對于用戶這種長時間訪問的集群,則必須通過在用戶的web瀏覽器中存儲一個專用的cookie,并且把cookie信息保存到數(shù)據(jù)庫中來創(chuàng)建一個用戶標(biāo)識。

上面這一節(jié)我們講到了web整站開發(fā)的先期需求分析,就我個人認(rèn)為是在網(wǎng)站工程中非常重要的一步。


(2)組織和管理站點結(jié)構(gòu)

往往在開發(fā)一個有一定規(guī)模的站點的時候,使站點具有較好的目錄結(jié)構(gòu)是一個值得注意的問題。商業(yè)應(yīng)用的程序往往都要求具有在事務(wù)內(nèi)部運行腳本和組件的能力。事務(wù)是服務(wù)器端的操作,簡單的說就是即便該操作包含了許多步驟,例如:下定單,查看定單,打印訂單等也只能整體返回操作是成功還是失敗。用戶可以創(chuàng)建在事務(wù)內(nèi)部運行的ASP腳本,如果教本的任何一部分操作失敗,那么整個事務(wù)就終止。

這里我們要詳細(xì)說明的并不是事務(wù)性腳本在整站中的應(yīng)用,而是要讓你在開發(fā)中不至于被眾多的文件,眾多的操作攪昏了頭。

合理的對文件名進(jìn)行組織。例如:我們將管理頁面命名為admin.asp,而管理頁面中對各個欄目進(jìn)行操作的頁面可以在admin后面加下劃線然后命以這個欄目的名稱,比如新聞管理頁面admin_news.asp,下載管理頁面admin_download.asp

關(guān)于文件的放置。我這里僅是以我得做法來講解,相信各位能有自己的見解。將所有管理操作頁面放置于同一目錄下面,為的是更加方便的管理和分配權(quán)限。各個欄目用戶頁面可以放在一個目錄下方便于管理。數(shù)據(jù)庫可以放在統(tǒng)一的目錄下面。

怎樣減少文件的數(shù)量。你沒有必要為每個添加,刪除,修改或者別的操作新建許多頁面,你可以使用參數(shù)來減少頁面,打一個比方,在管理頁面admin_news.asp中,當(dāng)admin_news.asp?action=addnew的時候執(zhí)行添加操作,當(dāng)admin_news.asp?action=del的時候執(zhí)行刪除操作,這樣將大大增強你站點集成化程度。

可以重用的代碼。很多代碼是可以重復(fù)使用的,比如UBB的轉(zhuǎn)換表等,可以把它們單獨放在一個目錄中。


(3)開發(fā)后臺管理
我不知道各位開發(fā)者是不是和我一樣,先將后臺開發(fā)完畢后再進(jìn)行前臺開發(fā)?;蛘吣闶腔煸谝黄饋碜?。不過,我認(rèn)為先開發(fā)后臺是比較合適的。前面我們講過先要對系統(tǒng)進(jìn)行分析,要實現(xiàn)哪些功能自己心里要有個底。這樣做起來才會事半功倍,也會減少許多不必要的錯誤。后臺管理無非具有以下這些功能:
1)用戶驗證
2)添加網(wǎng)站數(shù)據(jù)
3)修改網(wǎng)站數(shù)據(jù)
4)刪除網(wǎng)站數(shù)據(jù)
5)站點系統(tǒng)設(shè)置
6)站點訪問統(tǒng)計
7)搜集用戶信息
...
如何把他們同意的集中在一起管理,是我們要解決的問題。比如說用戶驗證我們可以這樣來實現(xiàn):

<%
...
username=replace(trim(request("username")),"'","")
password=replace(trim(Request("password")),"'","")
set rs=server.createobject("adodb.recordset")
sql="select * from admin where password='"&password&"' and username='"&username&"'"
rs.open sql,conn,1,1
if not(rs.bof and rs.eof) then
if password=rs("password") then
session("admin")=rs("username")
session("flag")=rs("f

分享:用ASP木馬實現(xiàn)FTP和解壓縮
在肉雞上放網(wǎng)站最麻煩的可能就是更新和上傳大量的文件了,終端服務(wù)大白天容易被發(fā)現(xiàn),自己開個ftp又不放心.自己在網(wǎng)上轉(zhuǎn)了一圈發(fā)現(xiàn)通過結(jié)合無組件上傳和asp木馬可以輕松實現(xiàn).asp木馬大家都很熟

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 宝应县| 宜兴市| 额尔古纳市| 玉溪市| 高密市| 嘉荫县| 阿坝县| 阿克苏市| 高尔夫| 汶川县| 监利县| 图们市| 巴楚县| 轮台县| 临沂市| 合肥市| 绥德县| 贵溪市| 开鲁县| 榆树市| 仁化县| 抚顺市| 乃东县| 大安市| 松阳县| 八宿县| 冷水江市| 博湖县| 闻喜县| 红桥区| 延安市| 九江县| 绥中县| 怀来县| 五寨县| 通道| 广安市| 临桂县| 康平县| 潞西市| 会同县|