基于BS架構(gòu)的網(wǎng)站制作論文

2023-01-20    分類(lèi): 網(wǎng)站制作

內(nèi)容提要:
本文基于數(shù)計(jì)學(xué)院網(wǎng)站實(shí)施過(guò)程,概述了 HTML、ASP、數(shù)據(jù)庫(kù)的相關(guān)技術(shù),使用 WIN2000+ASP+ACCESS 平臺(tái),分析、設(shè)計(jì)數(shù)計(jì)學(xué)院網(wǎng)站過(guò)程。
該文的研究將著重?cái)?shù)據(jù)庫(kù)的設(shè)計(jì)、運(yùn)用 ASP 實(shí)現(xiàn)信息管理系統(tǒng)中各個(gè)功能模塊,是程 序——數(shù)據(jù)庫(kù)——網(wǎng)站技術(shù)的典型應(yīng)用。本文設(shè)計(jì)內(nèi)容主要有以下幾個(gè)方面:
1.系統(tǒng)概述
2.系統(tǒng)設(shè)計(jì)
3.數(shù)據(jù)庫(kù)設(shè)計(jì)與實(shí)現(xiàn)
4.后臺(tái)系統(tǒng)和數(shù)據(jù)庫(kù)的配置
5.前端網(wǎng)站制作與設(shè)計(jì)
關(guān)鍵詞:互聯(lián)網(wǎng)、HTML、ASP、數(shù)據(jù)庫(kù)設(shè)計(jì)
Abstract:
This article outlined one whole process of THE ONLINE SJXY, and outlined some technologies about HTML, ASP and Accessing the Data Base. And outlined the whole process of how to analyses, design, empolder and debug the application for the ONLINE SJXY.
This thesis stresses the functional modules applied in the design of database, the use of ASP, showing a typical application of technologies from program to databases to network, this thesis is divided into five parts primarily, one by one in order for:1 the discuss of the using software,2 The design of the system design, 3 database of the website with realize, 4 the backstage system installs with database, 5 the development of the head network and design
Key words:Internet, HTML, ASP, Data Base
作者簡(jiǎn)介:農(nóng)皓 貴州民族學(xué)院 數(shù)學(xué)與計(jì)算機(jī)科學(xué)學(xué)院 計(jì)算機(jī)科學(xué)與技術(shù)專(zhuān)業(yè)
1. 前言
Internet(國(guó)際互聯(lián)網(wǎng))是由分布在世界各地的大量計(jì)算機(jī)遵照共同的傳輸控制協(xié)議
/互聯(lián)網(wǎng)絡(luò)協(xié)議(Transmission Control Protocol/Internet Protocol;TCP/IP)聯(lián)接而 成,因此被稱(chēng)為"網(wǎng)中網(wǎng)"或國(guó)際網(wǎng)。Internet 是人類(lèi)歷史發(fā)展中的一個(gè)偉大的里程碑,它 是未來(lái)信息高速公路的雛形,人類(lèi)正由此進(jìn)入一個(gè)前所未有的信息化社會(huì)。人們用各種名 稱(chēng)來(lái)稱(chēng)呼 Internet,如國(guó)際互聯(lián)網(wǎng)絡(luò)、因特網(wǎng)、交互網(wǎng)絡(luò)、網(wǎng)際網(wǎng)等等,它正在向全世界 各大洲延伸和擴(kuò)散,不斷增添吸收新的網(wǎng)絡(luò)成員,已經(jīng)成為世界上覆蓋面最廣、規(guī)模大、 信息資源最豐富的計(jì)算機(jī)信息網(wǎng)絡(luò)。在 Internet 飛速發(fā)展的今天,互聯(lián)網(wǎng)成為人們快速 獲取、發(fā)布和傳遞信息的重要渠道,它在人們政治、經(jīng)濟(jì)、生活等各個(gè)方面發(fā)揮著重要的 作用。2006年1月 17 日,中國(guó)互聯(lián)網(wǎng)絡(luò)信息中心(CNNIC)發(fā)布了第十七次“中國(guó)互聯(lián)網(wǎng) 絡(luò)發(fā)展?fàn)顩r統(tǒng)計(jì)報(bào)告”。調(diào)查報(bào)告顯示,截止到 2005 年 12 月 31 日,我國(guó)網(wǎng)民總?cè)藬?shù)達(dá) 到 1.1 億。
而 Internet 上發(fā)布信息主要是通過(guò)網(wǎng)站來(lái)實(shí)現(xiàn)的,獲取信息也是要在 Internet“海 洋”中按照一定的檢索方式將所需要的信息從網(wǎng)站上下載下來(lái)。因此網(wǎng)站建設(shè)在 Internet 應(yīng)用上的地位顯而易見(jiàn),它已成為政府、企事業(yè)單位信息化建設(shè)中的重要組成部分,從而 倍受人們的重視。
1.1 數(shù)計(jì)學(xué)院網(wǎng)站需求分析
數(shù)計(jì)學(xué)院辦院以來(lái)各方面建設(shè)發(fā)展迅速,成績(jī)顯赫。向社會(huì)各界展示學(xué)院優(yōu)異成績(jī)、 學(xué)院風(fēng)采,提高學(xué)院知名度等工作越來(lái)越迫切。
在 Internet 日益普及的今天,人們每天通過(guò)互聯(lián)網(wǎng)獲取最快最全的信息資訊,所以 構(gòu)建貴州民族學(xué)院數(shù)學(xué)與計(jì)算機(jī)科學(xué)學(xué)院網(wǎng)站。是一個(gè)很好的宣傳窗口,不但可以向社會(huì) 各界展示我院教研科研成果,展示師生風(fēng)采、淵源歷史,還可以實(shí)現(xiàn)新聞、通知等院務(wù)在 線即時(shí)發(fā)布,提高辦學(xué)效率。
1.2 當(dāng)前動(dòng)態(tài)網(wǎng)設(shè)計(jì)技術(shù)發(fā)展?fàn)顩r和當(dāng)前形勢(shì)
1.2.1 動(dòng)態(tài)網(wǎng)技術(shù)的現(xiàn)狀 絕大多數(shù)商業(yè)網(wǎng)站都具有大量的數(shù)據(jù)和信息,而建網(wǎng)的初衷也就是在于方便客戶(hù)查詢(xún)
企業(yè)資料,方便同客戶(hù)的交流,及時(shí)獲得信息反饋。那么,就必然會(huì)面臨如何讓使用者在
瀏覽器界面中,通過(guò)互聯(lián)網(wǎng)或內(nèi)聯(lián)網(wǎng)(Intranet)查詢(xún) WEB 數(shù)據(jù)庫(kù)的資料,甚至輸入、更 新和刪除 WEB 服務(wù)器上的資料。下面是幾種常用的“動(dòng)態(tài)”技術(shù)發(fā)展現(xiàn)狀
ASP 全名 Active Server Pages,是一個(gè) WEB 服務(wù)器端的開(kāi)發(fā)環(huán)境,利用它可以產(chǎn)生 和執(zhí)行動(dòng)態(tài)的、互動(dòng)的、高性能的 WEB 服務(wù)應(yīng)用程序。ASP 采用腳本語(yǔ)言 VBScript(Java script)作為自己的開(kāi)發(fā)語(yǔ)言。
PHP 是一種跨平臺(tái)的服務(wù)器端的嵌入式腳本語(yǔ)言。它大量地借用 C,Java 和 Perl 語(yǔ)言 的語(yǔ)法, 并耦合 PHP 自己的特性,使 WEB 開(kāi)發(fā)者能夠快速地寫(xiě)出動(dòng)態(tài)產(chǎn)生頁(yè)面。它支持目 前絕大多數(shù)數(shù)據(jù)庫(kù)。還有一點(diǎn),PHP 是完全免費(fèi)的,不用花錢(qián),你可以從 PHP 官方站點(diǎn) (http://www.php.net)自由下載。而且你可以不受限制地獲得源碼,甚至可以從中加進(jìn)你 自己需要的特色。
JSP 是 Sun 公司推出的新一代網(wǎng)站開(kāi)發(fā)語(yǔ)言,Sun 公司借助自己在 Java 上的不凡造詣, 將 Java 從 Java 應(yīng)用程序和 Java Applet 之外,又有新的碩果,就是 JSP,Java Server Page。 JSP 可以在 Serverlet 和 JavaBean 的支持下,完成功能強(qiáng)大的站點(diǎn)程序。
三者都提供在 HTML 代碼中混合某種程序代碼、由語(yǔ)言引擎解釋執(zhí)行程序代碼的能力。 但 JSP 代碼被編譯成 Servlet 并由 Java 虛擬機(jī)解釋執(zhí)行,這種編譯操作僅在對(duì) JSP 頁(yè)面 的第一次請(qǐng)求時(shí)發(fā)生。在 ASP 、PHP、JSP 環(huán)境下,HTML 代碼主要負(fù)責(zé)描述信息的顯示樣 式,而程序代碼則用來(lái)描述處理邏輯。普通的 HTML 頁(yè)面只依賴(lài)于 Web 服務(wù)器,而 ASP 、 PHP、JSP 頁(yè)面需要附加的語(yǔ)言引擎分析和執(zhí)行程序代碼。程序代碼的執(zhí)行結(jié)果被重新嵌入 到 HTML 代碼中,然后一起發(fā)送給瀏覽器。ASP 、PHP、JSP 三者都是面向 Web 服務(wù)器的技 術(shù),客戶(hù)端瀏覽器不需要任何附加的軟件支持。
1.2.2 數(shù)計(jì)學(xué)院網(wǎng)站的技術(shù)定位和當(dāng)前發(fā)展形勢(shì)
目前全國(guó)各大院校都有自己的網(wǎng)站,這是 Internet 時(shí)代的必然產(chǎn)物,在研究過(guò)程中, 當(dāng)前類(lèi)似數(shù)計(jì)學(xué)院網(wǎng)站的宣傳性站點(diǎn)不在少數(shù):
(1)、發(fā)展較快,數(shù)量增加較多。隨著互聯(lián)網(wǎng)的發(fā)展以及現(xiàn)代教育技術(shù)的運(yùn)用,許多 大中院校都建立了自己的網(wǎng)站(頁(yè)),有的甚至建立了有自己?jiǎn)为?dú)域名的網(wǎng)站。筆者利用 Google 搜索引擎填入關(guān)鍵詞“學(xué)院 大學(xué)”進(jìn)行搜索,可以搜索到許多相關(guān)的各個(gè)高等院 校網(wǎng)站。
(2)、網(wǎng)站制作的技術(shù)水平不斷提高,但是整體水平還較低。許多院校網(wǎng)站利用動(dòng)力
網(wǎng)絡(luò)系統(tǒng)或者運(yùn)用 Asp 等技術(shù)來(lái)實(shí)現(xiàn)在線管理。當(dāng)然更多的網(wǎng)站還是停留在簡(jiǎn)單的少數(shù)幾
個(gè)頁(yè)面形式。 (3)、網(wǎng)站發(fā)展不平衡,質(zhì)量普遍不高。這是由于地區(qū)現(xiàn)代教育技術(shù)發(fā)展的不平衡以
及教師的信息技術(shù)水平等原因造成的。筆者通過(guò) Google 搜索然后訪問(wèn)各個(gè)高等院校發(fā)現(xiàn), 在開(kāi)通宣傳性網(wǎng)站的各個(gè)院校,以江蘇省、浙江省、福建省、廣東省等沿海地區(qū)為多。這 些地區(qū)屬于我國(guó)的經(jīng)濟(jì)發(fā)達(dá)地區(qū),現(xiàn)代教育技術(shù)的發(fā)展也較快,教師的信息技術(shù)水平也較 高。
1.3 開(kāi)發(fā)工具的選用及其優(yōu)勢(shì)介紹
1、 ASP (Active Server Pages)
ASP 簡(jiǎn)單而易于維護(hù),是小型網(wǎng)站應(yīng)用的好選擇,通過(guò) DCOM 和 MTS 技術(shù),ASP 甚至 還可以完成中等規(guī)模的企業(yè)應(yīng)用。所以,在數(shù)計(jì)學(xué)院網(wǎng)站中采用 ASP 技術(shù)構(gòu)建動(dòng)態(tài)互動(dòng)站 點(diǎn)。
ASP 的優(yōu)勢(shì):
Active Server Pages:“動(dòng)態(tài)服務(wù)器網(wǎng)頁(yè)”,一般簡(jiǎn)稱(chēng)為“ASP”,ASP 之所以能受到大 家的重視與使用的原因,主要在于所產(chǎn)生的執(zhí)行結(jié)果都是標(biāo)準(zhǔn)的 HTML 格式,而且這些程 序是在網(wǎng)絡(luò)服務(wù)端中執(zhí)行,使用一般的瀏覽器(如 IE 或 Netscape)都可以正確地獲得 ASP 的“執(zhí)行”結(jié)果,并且將這 ASP 執(zhí)行的結(jié)果直接在瀏覽器中“瀏覽”,不像 VBScript 或 JavaScript 是在客戶(hù)端(Client)的瀏覽器上執(zhí)行,若使用 VBScript 來(lái)設(shè)計(jì)程序,客戶(hù) 端(Client)在 IE 瀏覽器中可以顯示程序執(zhí)行的結(jié)果,可是,客戶(hù)端(Client)若使用 Netscape 瀏覽器就無(wú)法顯示 VBScript 的執(zhí)行結(jié)果。
2、Dreamweaver MX 中文版
Dreamweaver MX 中文版的出現(xiàn),使制作一個(gè)功能強(qiáng)大的網(wǎng)站,變得很容易,可以輕易 的做出以前被認(rèn)為很復(fù)雜的 ASP,PHP 網(wǎng)站。
Dreamweaver MX 是一款專(zhuān)業(yè)的 HTML 編輯器,用于對(duì) Web 站點(diǎn)、Web 頁(yè)和 Web 應(yīng)用程 序進(jìn)行設(shè)計(jì)、編碼和開(kāi)發(fā)。無(wú)論直接編寫(xiě) HTML 代碼的駕馭感還是偏愛(ài)在可視化編輯環(huán)境 中工作,Dreamweaver 都會(huì)提供幫助良多的工具,豐富 Web 創(chuàng)作體驗(yàn)。
利用 Dreamweaver 中的可視化編輯功能,可以快速地創(chuàng)建頁(yè)面而無(wú)需編寫(xiě)任何代碼。 不過(guò),如果喜歡用手工直接編碼,Dreamweaver 還包括許多與編碼相關(guān)的工具和功能。并
且,借助 Dreamweaver,還可以使用服務(wù)器語(yǔ)言(例如 ASP、ASP.NET、ColdFusion 標(biāo)記語(yǔ)
言(CFML)、JSP 和 PHP)生成支持動(dòng)態(tài)數(shù)據(jù)庫(kù)的 Web 應(yīng)用程序。
使用 Dreamweaver 也可以制作出整個(gè)網(wǎng)站,只是 Dreamweaver 本身不適合處理圖片, 需要 Photoshop 或者 Fireworks 的配合。使用 Dreamweaver 制作靜態(tài)站點(diǎn)的流程:新建站 點(diǎn)→站點(diǎn)文件命名→定義頁(yè)面屬性→插入表格→定義頁(yè)面大小→轉(zhuǎn)換到布局視圖→添加 內(nèi)容→插入導(dǎo)航條→轉(zhuǎn)換到標(biāo)準(zhǔn)視圖工作→添加鏈接→使用代碼片斷→定義及應(yīng)用 CSS→ 添加動(dòng)態(tài)交互→鏈接站點(diǎn)各個(gè)頁(yè)面。
3、Microsoft Windows Access2003
Microsoft 公司推出的 Windows 數(shù)據(jù)庫(kù)管理系統(tǒng) Access 不僅是關(guān)系數(shù)據(jù)庫(kù)管理系統(tǒng), 同時(shí)它也被設(shè)計(jì)為 Windows 圖形用戶(hù)界面應(yīng)用程序生成器。Microsoft 公司采納了 dBASE 和 Foxpro 這兩個(gè)關(guān)系數(shù)據(jù)庫(kù)的特點(diǎn)來(lái)設(shè)計(jì) Access,為其增加了窗體和報(bào)表設(shè)計(jì)功能,并 借鑒 Visual Basic 語(yǔ)言,加入了許多程序設(shè)計(jì)功能。中文版 Access 2003 具有和 Office 2003 中 Word2003、Excel 2003 等相同的操作界面環(huán)境以及與其直接連接的功能,并且提供了 更為方便的操作捷徑方式。Access 2003 是完全面向?qū)ο?、采用事件?qū)動(dòng)機(jī)制的關(guān)系型桌 面數(shù)據(jù)庫(kù)系統(tǒng)。與其他數(shù)據(jù)庫(kù)管理系統(tǒng)相比,它具有如下幾大特點(diǎn):
① 同時(shí)面向數(shù)據(jù)庫(kù)最終用戶(hù)和數(shù)據(jù)庫(kù)開(kāi)發(fā)人員;
② 典型的開(kāi)放式數(shù)據(jù)庫(kù)管理系統(tǒng);
③ 支持多媒體的應(yīng)用與開(kāi)發(fā);
④ 內(nèi)置了大量的函數(shù);
⑤ 提供了許多宏;
⑥ 提供了聯(lián)機(jī)幫助功能;
⑦ 基于 WEB 的智能管理功能;
⑧ 更智能的自動(dòng)拼寫(xiě)與語(yǔ)法檢查器;
⑨ 更符合個(gè)人網(wǎng)絡(luò)用戶(hù)和需求?;?Access 2003 的這些功能與特點(diǎn)我們選擇了它 來(lái)管理本軟件中涉及到的數(shù)據(jù)信息。
所以我選擇了 ASP 結(jié)合 Microsoft Access2003、Macromedia Dreamweaver8 架構(gòu)貴州 民族學(xué)院數(shù)計(jì)學(xué)院網(wǎng)站。
2. B/S 結(jié)構(gòu)下站點(diǎn)設(shè)計(jì)的解決方案
2.1 設(shè)計(jì)思想
通過(guò)數(shù)計(jì)學(xué)院網(wǎng)站,全面宣傳,展示我院辦學(xué)風(fēng)采、優(yōu)點(diǎn)與特色,以及各項(xiàng)教學(xué)科研 成果,發(fā)布學(xué)校的重大活動(dòng)安排與招生政策,增強(qiáng)社會(huì)各界與學(xué)校之間的聯(lián)系,在 Internet 上實(shí)現(xiàn)完成部分校務(wù),提高辦事效率。
因此,我院網(wǎng)站具備以下的一些功能:
1、新聞、信息系統(tǒng): 實(shí)現(xiàn)在線即時(shí)發(fā)布更新、修改、刪改各類(lèi)新聞信息
2、站內(nèi)搜索系統(tǒng): 實(shí)現(xiàn)各類(lèi)文章按關(guān)鍵字搜索
3、會(huì)員系統(tǒng): 會(huì)員分級(jí)管理實(shí)現(xiàn)不同層次權(quán)限要求
4、學(xué)生成績(jī)管理系統(tǒng): 實(shí)現(xiàn)學(xué)生按個(gè)人學(xué)號(hào)在線即時(shí)查詢(xún)相應(yīng)學(xué)科成績(jī)
5、投票系統(tǒng): 實(shí)現(xiàn)第一時(shí)間聽(tīng)取各類(lèi)不同意見(jiàn),亦可用作各類(lèi)投票評(píng)選
2.2 方案設(shè)計(jì)
由于系統(tǒng)定位是一個(gè)信息交互性網(wǎng)站,是一個(gè)新聞性質(zhì)的宣傳站點(diǎn)。傳統(tǒng)的 C/S
(Client/Server)架構(gòu)很明顯不適合。C/S 通常適合于開(kāi)發(fā)面向企業(yè)內(nèi)部的應(yīng)用,例如管 理信息系統(tǒng)。作為面向 Internet 上的 Web 應(yīng)用,需要的是 B/S(Browser/Server)架構(gòu)。 B/S 架構(gòu)的客戶(hù)端使用是人們上網(wǎng)沖浪實(shí)必不可少的瀏覽器。這種方法的客戶(hù)端簡(jiǎn)單易學(xué), 培訓(xùn)成本低,其大的特點(diǎn)是客戶(hù)端是輕量級(jí)的,即常說(shuō)的“瘦客戶(hù)端”,因此 B/S 架構(gòu) 迅速拓展未來(lái)。伴隨著 Internet 的繁榮,互聯(lián)網(wǎng)信息發(fā)布蓬勃發(fā)展,B/S 甚至已經(jīng)侵蝕掉 了許多傳統(tǒng)的 C/S 市場(chǎng)。
瀏覽器
請(qǐng)求
Web Server
結(jié)果 (IIS/PWS)
請(qǐng)求
Database
結(jié)果 Server
請(qǐng)求 瀏覽器
結(jié)果
2.3 B/S 模式的構(gòu)成和數(shù)據(jù)處理方式
根據(jù)上面的分許,確定系統(tǒng)運(yùn)行在微軟的 Windows NT 系列平臺(tái)上,使用 IIS 信息服 務(wù)器作為 Web 服務(wù)器,使用 ASP 完成動(dòng)態(tài)交互功能,網(wǎng)站需要頻繁的存儲(chǔ)數(shù)據(jù),所以采用
數(shù)據(jù)庫(kù)管理系統(tǒng)來(lái)管理數(shù)據(jù),后臺(tái)數(shù)據(jù)庫(kù)則使用 Microsoft 的 Access,對(duì)于一般的小型應(yīng)
用應(yīng)該可以滿(mǎn)足要求。
2.4 系統(tǒng)模塊功能分析
數(shù)計(jì)學(xué)院網(wǎng)站包括如下幾個(gè)主要功能模塊:
1、新聞信息分類(lèi)發(fā)布系統(tǒng)功能 新聞信息發(fā)布系統(tǒng)整體分為前臺(tái)和后臺(tái)兩部分。前臺(tái)的主要功能是為用戶(hù)提供快速查
看各種新聞。后臺(tái)主要是針對(duì)管理員,包括新聞信息的添加、修改、刪除。并且在后臺(tái)可 以按需要添加、修改、刪除新聞信息分類(lèi),目前數(shù)計(jì)學(xué)院網(wǎng)站分為院內(nèi)新聞、院內(nèi)通知、 圖文信息、精品課件四大類(lèi),如院內(nèi)通知?jiǎng)t細(xì)分有學(xué)工委通知和院辦通知等。
2、用戶(hù)登錄、注銷(xiāo)和注冊(cè)管理 用向?qū)У姆绞綖樾掠脩?hù)提供注冊(cè)功能,用戶(hù)輸入用戶(hù)名、密碼和其他個(gè)人信息,經(jīng)過(guò)
系統(tǒng)的合法性驗(yàn)證成為正式用戶(hù)。管理員通過(guò)后臺(tái)系統(tǒng)審核,給予注冊(cè)用戶(hù)相應(yīng)的權(quán)限。 如果用戶(hù)忘記密碼,可以通過(guò)系統(tǒng)提問(wèn)的方式,由向?qū)б徊讲秸业矫艽a。
3、留言板、新聞評(píng)論管理功能
用戶(hù)可以在站內(nèi)與管理員進(jìn)行留言溝通,提出自己的意見(jiàn)和建議。還可以針對(duì)某個(gè)新
聞信息進(jìn)行評(píng)論,提出自己的見(jiàn)解,并由管理員后臺(tái)審核認(rèn)可后發(fā)布在該條信息相應(yīng)位置。
4、站內(nèi)信息查詢(xún)、搜索功能 站內(nèi)信息檢索必然需要的是提供給用戶(hù)快捷方便的方式查找自己需要的新聞和公告
等信息。通常新聞?wù)军c(diǎn)都會(huì)根據(jù)一些標(biāo)準(zhǔn)進(jìn)行分類(lèi),數(shù)計(jì)學(xué)院網(wǎng)站采用了常用的“按標(biāo)題”、 “按作者”、“按內(nèi)容”等分類(lèi)法。
5、投票、評(píng)選系統(tǒng)功能 投票系統(tǒng)是站內(nèi)做一些小調(diào)查的工具,很直觀的反映出當(dāng)前調(diào)查結(jié)果。亦可作為一些
不記名投票評(píng)選活動(dòng)。
3. 站點(diǎn)設(shè)計(jì)分析與功能實(shí)現(xiàn)
3.1 網(wǎng)站數(shù)據(jù)庫(kù)設(shè)計(jì)
3.1.1 網(wǎng)站數(shù)據(jù)庫(kù)需求分析 數(shù)計(jì)學(xué)院網(wǎng)站的數(shù)據(jù)庫(kù)的需求分析是進(jìn)行系統(tǒng)功能劃分和系統(tǒng)設(shè)計(jì)最重要的一個(gè)環(huán)
節(jié),根據(jù)系統(tǒng)數(shù)據(jù)流程圖,可以得到 5 個(gè)數(shù)據(jù)庫(kù)表:用戶(hù)信息表(admin.db)、新聞信息 信息表(News.db)、投票信息表(vote.db)、留言簿和新聞評(píng)論管理(Review.db)、和公 告欄信息表(board.db),以下為系統(tǒng)所需的數(shù)據(jù)項(xiàng)和數(shù)據(jù)結(jié)構(gòu)的使用情況:
1、用戶(hù)管理:用戶(hù)信息表,生成包括用戶(hù)名、用戶(hù)密碼、用戶(hù)性別和密碼提示等信息。
2、新聞系統(tǒng):新聞編號(hào)、新聞標(biāo)題、新聞?lì)愋?、新聞點(diǎn)擊數(shù)、作者、發(fā)布時(shí)間、相關(guān)鏈 接等。
3、投票系統(tǒng):投票信息表和投票內(nèi)容、投票選項(xiàng)信息等。
4、留言簿和新聞評(píng)論管理:調(diào)用留言簿信息和新聞評(píng)論信息表,留言(評(píng)論)內(nèi)容、署 名、郵件地址等。
5、公告欄:包括公告編號(hào)、公告標(biāo)題、公告內(nèi)容、發(fā)布時(shí)間等。
3.1.2 數(shù)計(jì)學(xué)院網(wǎng)站數(shù)據(jù)庫(kù)
有些實(shí)體只是單獨(dú)的存在,沒(méi)有與它實(shí)體的關(guān)系,例如用來(lái)保存系統(tǒng)最初始配置的 config 表。但是有些實(shí)體之間存在著相互關(guān)系的,數(shù)據(jù)庫(kù) E-R 圖如圖所示。圖中箭頭所指 的方向按照約定是指 1:n 關(guān)系的 1 方。如果兩邊都沒(méi)有箭頭,則是 n:m 關(guān)系。
3.1.3 使用 ADO 訪問(wèn)數(shù)計(jì)學(xué)院網(wǎng)站數(shù)據(jù)庫(kù)
在 ASP 中,訪問(wèn)數(shù)據(jù)庫(kù)是通過(guò)內(nèi)置的數(shù)據(jù)庫(kù)訪問(wèn)組件(DataBase Access Component) 的 ADO(ActiveX Data Object)對(duì)象來(lái)實(shí)現(xiàn)的。它是對(duì)當(dāng)前微軟所支持的數(shù)據(jù)庫(kù)進(jìn)行操作 的最有效、最簡(jiǎn)單的方法,是一種功能強(qiáng)大的數(shù)據(jù)訪問(wèn)編輯模式,從而使得大部分?jǐn)?shù)據(jù)源 可編程的屬性得以直接擴(kuò)展到 Active Server 上。
ADO 提供了簡(jiǎn)單的程序模型和完善的功能來(lái)處理數(shù)據(jù),ADO 能夠通過(guò)利用 ODBC(Open Database Connectivity)或 OLEDB(Object Link & Embedding Database)驅(qū)動(dòng)程序編寫(xiě) 應(yīng)用程序來(lái)訪問(wèn)和操作數(shù)據(jù)庫(kù)。如圖所示,無(wú)論采用的是 Access、SQL Server、Visual FoxPro、dBase 或其他的數(shù)據(jù)庫(kù),只要該數(shù)據(jù)庫(kù)具有對(duì)應(yīng)的 ODBC 或 OLE DB 驅(qū)動(dòng)程序,ADO 對(duì)象就能加以存取。ADO 具有運(yùn)行速度快、容易使用、占用內(nèi)存和磁盤(pán)空間小的優(yōu)點(diǎn),特 別是對(duì)于大量用戶(hù)同時(shí)訪問(wèn)時(shí)的 Web 站點(diǎn)時(shí),這些優(yōu)點(diǎn)顯得更加重要。
1、創(chuàng)建和配置 ODBC 數(shù)據(jù)源
ODBC(Open Database Connectivity)即為開(kāi)發(fā)數(shù)據(jù)庫(kù)系統(tǒng)互連,它是微軟開(kāi)發(fā)的一
套用于開(kāi)發(fā)數(shù)據(jù)庫(kù)系統(tǒng)應(yīng)用程序接口規(guī)范。ODBC 規(guī)范為應(yīng)用程序提供了一套高層調(diào)用接口 規(guī)范和基于動(dòng)態(tài)鏈接庫(kù)的運(yùn)行支持環(huán)境。使用 ODBC 開(kāi)發(fā)數(shù)據(jù)庫(kù)的應(yīng)用程序時(shí),只需要應(yīng) 用程序調(diào)用標(biāo)準(zhǔn)的 ODBC 函數(shù)和 SQL 語(yǔ)句,而數(shù)據(jù)庫(kù)的底層操作由各個(gè)數(shù)據(jù)庫(kù)的 ODBC 驅(qū)動(dòng) 程序來(lái)完成。所以,使用 ODBC 接口的數(shù)據(jù)庫(kù)應(yīng)用程序具有很好的適應(yīng)和可移植性,并且 具備同時(shí)訪問(wèn)多種數(shù)據(jù)庫(kù)的能力,徹底的扔掉了傳統(tǒng)應(yīng)用程序的缺陷。ODBC 驅(qū)動(dòng)程序類(lèi)似 于 Windows 下面的硬件驅(qū)動(dòng)程序,對(duì)于使用者來(lái)說(shuō),驅(qū)動(dòng)程序掩蓋了不同的硬件間的差異
2、創(chuàng)建和配置 ODBC 數(shù)據(jù)源
當(dāng)數(shù)據(jù)源創(chuàng)建后,必須提供一條使 ADO 定位,標(biāo)識(shí)和與數(shù)據(jù)庫(kù)通信的途徑,這條途徑 有兩種建立方法:
1) 使用 DSN
創(chuàng)建和配置 DSN 的方法:開(kāi)始/設(shè)置/控制面板/ODBC 數(shù)據(jù)源/System DSN 下單擊“添 加”按鈕,在出現(xiàn)的創(chuàng)建新數(shù)據(jù)源的對(duì)話框中選擇驅(qū)動(dòng)程序,如 Microsoft Access Driver(*.mdb),在彈出的“ODBC Microsoft Access 安裝”窗口中指定數(shù)據(jù)源名 和 路 徑 。 完 成 后 , 在 ASP 程 序 中 指 定 DSN , 如 <% cn.open”DSN=yourdsnname;UID=username;PWD=password”%>
(2) 在 ASP 文件里直接指定數(shù)據(jù)庫(kù)文件所在的位置,對(duì)不同的數(shù)據(jù)源要設(shè)置的參數(shù)略
有不同。
如 Microsoft Access ODBC 參數(shù)的設(shè)置:
<% conn=”driver={Microsoft Access
Driver(*.mdb)};dbq=”&_server.mappath(“source.mdb”)%>
由于數(shù)據(jù)學(xué)院沒(méi)有自己的 Web 服務(wù)器,數(shù)據(jù)學(xué)院網(wǎng)站放在遠(yuǎn)端的虛擬服務(wù)器上,因此, 建立和修改 DSN 的設(shè)置比較麻煩,而此方法直接指定遠(yuǎn)端數(shù)據(jù)庫(kù)所在的位置恰恰解決了這 一問(wèn)題。
3.1.4 ASP 站點(diǎn)與服務(wù)器端建立連接 當(dāng)我們需要操作服務(wù)器端數(shù)據(jù)庫(kù)時(shí),第一步要做的便是要使數(shù)據(jù)庫(kù)與服務(wù)器端建立連
接。這就需要使用 ADO 對(duì)象的 Connection 對(duì)象。
1、創(chuàng)建 Connection 對(duì)象
<% set cn=Server.CreateObject(“ADODB.Connection”)%>
創(chuàng)建了一個(gè)名為 cn 的 Connection 對(duì)象實(shí)例,通過(guò)這個(gè)個(gè)對(duì)象實(shí)例,就可以使用 Connection 對(duì)象提供的 Open 方法打開(kāi)與數(shù)據(jù)庫(kù)的連接,Excute 方法對(duì)表進(jìn)行 SQL 查 詢(xún)等
2、打開(kāi)與數(shù)計(jì)學(xué)院數(shù)據(jù)庫(kù)的連接 (1)用 Open 方法
<%
set cn=Server.CreateObject(“ADODB.Connection”)%>
cn.open “DSN=score99;UID=admin;PWD=””
%>
(2)用 ConnectionString 屬性
<%
set cn=Server.CreateObject(“ADODB.Connection”)%> cn. Connection “DSN=score99;UID=admin;PWD=”” cn.Open
%>
DSN:指定連接的 ODBC 數(shù)據(jù)源名稱(chēng)
UID:提供用戶(hù)的 ID,用于登錄服務(wù)器端的數(shù)據(jù)庫(kù)。Access 數(shù)據(jù)庫(kù)接收每個(gè)用戶(hù);SQL 服 務(wù)器中的數(shù)據(jù)庫(kù)提供了”admin”用戶(hù)身份,密碼為空
PWD:登錄數(shù)據(jù)庫(kù)的用戶(hù)密碼。 (3)直接在 ASP 中指定連接
對(duì)于 Access 數(shù)據(jù)庫(kù),相應(yīng)的 ASP 程序?yàn)椋?br /><%
Cn.open “Driver={Microsoft Access Driver(*.mdb)};DBQ=數(shù)據(jù)庫(kù)文件名(包含 全路徑);UID=用戶(hù)名; PWD=用戶(hù)密碼”
%>
3、關(guān)閉 Connection 對(duì)象
cn.close
此方法可以切斷 Connection 對(duì)象與數(shù)據(jù)庫(kù)之間的連接,但是此對(duì)象還是存在于內(nèi)存中, 如果要將創(chuàng)建的 Connection 對(duì)象從內(nèi)存中移出,需要用語(yǔ)句
Set cn=nothing
3.1.5 使用 ASP 的 Recordset 對(duì)數(shù)計(jì)學(xué)院數(shù)據(jù)庫(kù)作插入、刪除、更新
在使用 Connection 對(duì)象打開(kāi)數(shù)據(jù)庫(kù)連接后,就可以用 ADO 對(duì)象模塊提供的 Recordset
對(duì)象存取表的記錄,包括讀取、插入、刪除或更新等。 下面先介紹 Recordset 對(duì)象幾個(gè)常用的屬性和方法:
屬性:
AbsolutePosition:目前指針的絕對(duì)位置,其值在 1-ReordCount 屬性之間。 AbsolutePage:當(dāng) Recordset 對(duì)象設(shè)置有分頁(yè)時(shí),該屬性會(huì)返回目前的頁(yè)碼。 BOF:若指針位置位于第一條記錄之前,返回 True,否則返回 False。 EOF:若指針位置位于最后一條記錄之后,返回 True,否則返回 False。 Connection:設(shè)置記錄的存放位置。若 Connection 的值設(shè)為 2(adUseServer),表示
記錄存放在服務(wù)器端;若 Connection 的值設(shè)為 3(adUseServer),表示記錄被下載到瀏覽 器端,這將會(huì)增加網(wǎng)絡(luò)流量。
Filter:篩選記錄。 MaxRecord:返回的最多記錄條數(shù)。
PageCount:返回分頁(yè)總數(shù)。
PageSize:當(dāng) Recordset 對(duì)象設(shè)置有分頁(yè)時(shí),PageSize 為每頁(yè)的記錄條數(shù)。 PageCount:設(shè)置指針在 Recordset 對(duì)象所包含的所有記錄數(shù)。 CursorType:設(shè)置指針在 Recordset 對(duì)象的移動(dòng)方向,
設(shè)置為 0(adOpenForwardOnly)時(shí),表示指針只能向下一條記錄移動(dòng),此為默認(rèn)值; 設(shè)置為 1(adOpenKeyset)時(shí),表示指針可以自由的上下移動(dòng),在之前讀取的 Recordset
對(duì)象可以看到更新的記錄,但看不到新增、刪除的記錄;
設(shè)置為 2(adOpenDynamic)時(shí),指針可以上下移動(dòng),在之前讀取出的 Recordset 對(duì)象可 以看到任何變化,但 Access 不致吃該設(shè)置;
設(shè)置為 3(adOpenStatic)時(shí),是在 CursorLocation=3(記錄下載到瀏覽器端)時(shí)的設(shè) 置,指針可以自由移動(dòng),但看不到讀取后的記錄的更新、添加、刪除。
LockType:設(shè)置能否將記錄寫(xiě)入表。1(adOpenForwardOnly)時(shí),表示所有記錄只讀;
2(adOpenDynamic)時(shí),表示當(dāng)我們開(kāi)始編輯某條記錄的字段時(shí),便鎖定次記錄,待編 輯完畢并調(diào)用 Update 方法進(jìn)行更新之后,再解除鎖定。
3(adOpenStatic)時(shí),只有在調(diào)用 Update 方法進(jìn)行更新的時(shí)候才鎖定記錄,若我們?cè)?編輯某條記錄后沒(méi)有調(diào)用 Update,而繼續(xù)移往其他的記錄作編輯,ADO 會(huì)自動(dòng)調(diào)用 Opdate 方法更新前編輯的記錄,若要取消更新,可以使用 CanceUpate 方法。
4(adLockBatchOptimistic)時(shí),允許以批量的方式進(jìn)行更改記錄 方法:
AddNew:在 Recordset 對(duì)象中插入新的記錄,需要執(zhí)行 Update 方法才算完成新增。 Clone:復(fù)制某個(gè)已存在的 Recordset 對(duì)象。
Delete:刪除 Recordset 對(duì)象中目前指針?biāo)傅降挠涗洝?MoveNext:指針下移一條記錄。 MovePrevious:指針上移一條記錄。 MoveFirs:指針移到第一條記錄。 MoveLast:指針移到最后一條記錄。
Move Num:指針下移 Num 條記錄。
Open:取得 Recordset 對(duì)象,它可能包含表的所有記錄或符合 SQL 查詢(xún)的記錄 Update:完成對(duì) Recordset 對(duì)象中某條記錄的更新
1、創(chuàng)建 Recordset 對(duì)象
Set objRS=Server.CreateObject(“ADODB. Recordset”)
2、Open 方法
objRs.Open Source Connection CursorType LockType CommandType Source:這時(shí)一個(gè) command 對(duì)象或包含指令的字符串。 Connection:用來(lái)打開(kāi)數(shù)據(jù)庫(kù)連接的 Connection 對(duì)象。 CursorType:設(shè)置指針在 Recordset 對(duì)象中的移動(dòng)方向。 LockType:設(shè)置能否將記錄寫(xiě)入表
CommandType:設(shè)置處理參數(shù) Source 的方式。
3、新增表的記錄
objRS.AddNew Title,Content
新增的一條記錄字段名稱(chēng)為 Title,數(shù)據(jù)為 Content,如:
objRS.AddNew Array(“新聞標(biāo)題”,”新聞內(nèi)容”),Aeeay(“測(cè)試新聞”,“測(cè)試 新聞內(nèi)容”)即增加一條為新聞標(biāo)題為“測(cè)試新聞標(biāo)題”,新聞內(nèi)容為“測(cè)試新聞內(nèi)容”的記錄。
4、讀取表的字段名稱(chēng)與數(shù)據(jù) 讀取字段名: 可用表格的方式建立,如:
讀取字段值:
5、使用 Filter 屬性來(lái)篩選記錄
用 objRS.Filter 來(lái)篩選記錄,設(shè)置屬性時(shí),可以包含任何邏輯運(yùn)算,只要返回值為 True或 False。
6、設(shè)置分頁(yè)瀏覽 當(dāng)表包含很多記錄而無(wú)法顯示在同一頁(yè)面時(shí),將記錄設(shè)置多頁(yè)來(lái)分頁(yè)瀏覽是很有必要 的,同時(shí)加上頁(yè)次的超級(jí)鏈接,瀏覽者想看哪個(gè)頁(yè)次的記錄,只要點(diǎn)取其超級(jí)鏈接, 就可以看到該頁(yè)次的記錄。要做到這一點(diǎn),只要充分利用前面已經(jīng)介紹的幾個(gè)屬性
AbsolutePage(返回當(dāng)前頁(yè)碼)、PageCount(分頁(yè)總數(shù))、PageSize(定義每頁(yè)的記錄數(shù))。
3.1.6 ADO 存取數(shù)計(jì)學(xué)院數(shù)據(jù)庫(kù)的實(shí)現(xiàn)
歸納起來(lái),利用 ADO 存取數(shù)據(jù)庫(kù)用以下步驟來(lái)實(shí)現(xiàn), 首先,定義一個(gè) ADO 連接對(duì)象,然后打開(kāi)數(shù)據(jù)源
Set cn=Server.Createobject(“ADODB.Connection”) Cn.open “數(shù)據(jù)源”
數(shù)據(jù)源是在“控制面板”下的“ODBC32”設(shè)定的數(shù)據(jù)源名稱(chēng)。 其次,執(zhí)行 SQL 命令,并將結(jié)果存儲(chǔ)到 RecordSet 對(duì)象變量中
Set rs=cn.Execute(SQLstr)
第三,通過(guò) RecordSet 集合取得記錄的內(nèi)容,其中常用的有: rs(“記錄名稱(chēng)”):讀取某個(gè)記錄的內(nèi)容 rs.eof:是否已指到最后一條,是為 ture,不是為 false rs.MoveNext:將 RecordSet 的指針移到下一條記錄
最后,關(guān)閉數(shù)據(jù)庫(kù),有兩個(gè)動(dòng)作,一是 RecordSet,另一則是 Connection rs.Close
cn.Close
建立對(duì)象實(shí)例
打開(kāi)數(shù)據(jù)源
將記錄集存入 recordset 變量
用 recordset 的方法取得記錄
關(guān)閉數(shù)據(jù)庫(kù)
ADO 存取數(shù)據(jù)庫(kù)
3.1.7 網(wǎng)站數(shù)據(jù)庫(kù)詳細(xì)設(shè)計(jì)
數(shù)計(jì)學(xué)院網(wǎng)站各基礎(chǔ)數(shù)據(jù)庫(kù)使用了 Access 數(shù)據(jù)庫(kù)工具。該數(shù)據(jù)庫(kù)包含 15 個(gè)不同專(zhuān)題 的表。下面是 5 個(gè)主要數(shù)據(jù)表,在這里做一個(gè)簡(jiǎn)要的說(shuō)明。
1、Admin 表該表主要存儲(chǔ)數(shù)據(jù)學(xué)院用戶(hù)信息表,生成包括用戶(hù)名、用戶(hù)密碼、用戶(hù)性別和密碼提
示等信息。
2、News 表該表主要存儲(chǔ)新聞編號(hào)、新聞標(biāo)題、新聞?lì)愋汀⑿侣匋c(diǎn)擊數(shù)、作者、發(fā)布時(shí)間、相關(guān)
鏈接等。
3、vote 表該表主要存儲(chǔ)投票信息表和投票內(nèi)容、投票選項(xiàng)信息等。
4、Review 表該表主要存儲(chǔ)留言簿信息和新聞評(píng)論信息表,留言(評(píng)論)內(nèi)容、署名、郵件地址等。
5、board 表 該表主要存儲(chǔ)公告編號(hào)、公告標(biāo)題、公告內(nèi)容、發(fā)布時(shí)間等
3.2 數(shù)計(jì)學(xué)院網(wǎng)站頁(yè)面設(shè)計(jì)
3.2.1 頭部導(dǎo)航條
任何一個(gè)成果的 Web 應(yīng)用都離不開(kāi)導(dǎo)航功能。系統(tǒng)中的導(dǎo)航條分為兩個(gè)部分:首部導(dǎo) 航條和尾部導(dǎo)航條。在多數(shù) ASP 文件中都可以發(fā)現(xiàn)下 面的語(yǔ)句:
這行代碼的功能是將首部導(dǎo)航條包含到當(dāng)前頁(yè)面中,這種方式可以使網(wǎng)站維持統(tǒng)一的風(fēng)格。如果需要時(shí)對(duì) top.asp 作了修改會(huì)反映到所有的包含其的文件中。
導(dǎo)航條維護(hù)了 Web 應(yīng)用站點(diǎn)統(tǒng)一的風(fēng)格和方便修改,也為瀏覽者能迅速和快捷的在站點(diǎn)內(nèi)跳轉(zhuǎn)提供了基礎(chǔ)。
3.2.2 主體功能展現(xiàn) 數(shù)計(jì)學(xué)院網(wǎng)站是一個(gè)全面展示學(xué)院風(fēng)采、科研成就等信息的站點(diǎn),這就決定了站點(diǎn)的大部分功能都在首頁(yè)中得以實(shí)現(xiàn),如圖所示,數(shù)計(jì)學(xué)院網(wǎng)站的各項(xiàng)重要功能都可以一目了 然:
圖中標(biāo)示 1、2、10 均為站點(diǎn)導(dǎo)航條,3 為站內(nèi)公告欄,4 為站內(nèi)檢索,5 為各類(lèi)新聞
3.3 網(wǎng)站重點(diǎn)代碼的設(shè)計(jì)
3.3.1 強(qiáng)大的 ASP#include 指令
在一個(gè) ASP 頁(yè)面中,可以使用#include 指令把另一個(gè)文件的內(nèi)容插入到當(dāng)前的頁(yè)面中: 這條指令讀取該文件的全部?jī)?nèi)容并插入到該頁(yè)面中,代替一行。這是 一種非常有用的插入 HTML 段落的技術(shù)。
通過(guò)把腳本和內(nèi)容分開(kāi)的方法,給頁(yè)面提供了一個(gè)組成層次。這意味著如果對(duì)腳本進(jìn)
行了修改,在客戶(hù)端再次打開(kāi)該頁(yè)面時(shí),腳本的修改情況自動(dòng)的反映到使用包含文件的每 個(gè)頁(yè)面中。例如,常見(jiàn)數(shù)據(jù)庫(kù)連接的獲取都作為一個(gè)單獨(dú)的模塊包含到所有的 ASP 頁(yè)面中。
index.asp

conn.asp

<%
db=”admin/database/#sjxy.mdb”
set conn = Server.CreateObject(“ADODB.Connection”)
connstr=”Provider=Microsoft.Jet.OLEDB.4.0;Data Source=” & Server. MapPath(“”&db&””)
conn.Open connstr
%>

這樣當(dāng)修改數(shù)據(jù)庫(kù)連接時(shí),所有包含 conn.asp 的頁(yè)面引用的數(shù)據(jù)庫(kù)連接都會(huì)得到修 改,從而大大減輕了代碼開(kāi)發(fā)的工作量。可以更好的保證軟件的質(zhì)量,這也是模塊化和降 低軟件之間耦合性思想的體現(xiàn)。
3.3.2 控制權(quán)限
小類(lèi)管理員。各自有相應(yīng)的權(quán)限管理文章信息。系統(tǒng)管理員擁有本站最高管理權(quán)限:
if session(“rank”)>1 then
response.Write “

response.End
end if
通過(guò)后臺(tái)管理員的 rank 屬性可以跟蹤管理員的權(quán)限,rank 值從數(shù)據(jù)庫(kù)中讀出后是放 在 Session 中的。例如上邊的這個(gè)操作只允許系統(tǒng)管理員具有,而 rank 值大于 1 的根據(jù) 約定不是系統(tǒng)管理員,所以會(huì)顯示一個(gè)如上的報(bào)錯(cuò)頁(yè)面。
系統(tǒng)中所有存儲(chǔ)在系統(tǒng)中的密碼都是可以 MD5 不可逆轉(zhuǎn)的方式進(jìn)行加密。加密的目的是防止通過(guò)打開(kāi) Access 數(shù)據(jù)庫(kù)直接得到各個(gè)賬號(hào)的密碼,包括管理員。
rs(“password”)=md5(trim(request.form(password”)))
3.3.3 驗(yàn)證碼登錄的實(shí)現(xiàn) 為了防止惡意的使用程序不斷猜測(cè)帳號(hào)密碼,系統(tǒng)采用了驗(yàn)證碼。驗(yàn)證碼的的主要思
想就是在用戶(hù)的登錄界面隨機(jī)生成一個(gè)數(shù),在用戶(hù)登錄時(shí)同時(shí)輸入這個(gè)數(shù)。用系統(tǒng)中記錄 的這個(gè)隨機(jī)數(shù)和用戶(hù)的輸入進(jìn)行驗(yàn)證就可以防止惡意請(qǐng)求登錄頁(yè)。
使用驗(yàn)證碼的難點(diǎn)在于如圖將數(shù)字 9587 轉(zhuǎn)換為一個(gè) 9587 的圖片顯示出來(lái)。這個(gè)功能在一個(gè)獨(dú)立的 ASP 頁(yè)面中完成,其中使用了 ADO 的 Stream 對(duì)象讀寫(xiě)文件的內(nèi)容。
<%
Option Explicit //強(qiáng)制申明所有使用的變量 NumCode
Function NumCode()
Response.Expires = -1//若將 Response.Expires 設(shè)置為負(fù)數(shù)或 0,則禁用緩存 Response.AddHeader "Pragma","no-cache"
Response.AddHeader "cache-ctrol","no-cache"http://禁止使用緩存,上面幾行代碼的作
用是保證頁(yè)面能夠自動(dòng)刷新,即使使用后退返回到原先的頁(yè)面
dim zNum,i,j dim Ados,Ados1
Randomize timer
zNum = cint(8999*Rnd+1000) //生成隨機(jī)數(shù)
Session("GetCode") = zNum //將隨機(jī)數(shù)的值使用 session 來(lái)存放
dim zimg(4),NStr NStr=cstr(zNum) For i=0 to 3
zimg(i)=cint(mid(NStr,i+1,1)) //min 函數(shù)表示返回 NSir 字符串的從第 i+1 個(gè)位置開(kāi)始的 1 個(gè)字符,這意味著 zimg(i)對(duì)應(yīng) zNum 的第 i 個(gè)字符
Next dim Pos
set Ados=Server.CreateObject("Adodb.Stream") Ados.Mode=3
Ados.Type=1
Ados.Open
set Ados1=Server.CreateObject("Adodb.Stream") Ados1.Mode=3
Ados1.Type=1
Ados1.Open//ADO 流 對(duì) 象 可 以 讀 取 文 件 內(nèi) 容 , Ados 流 對(duì) 象 就 是 讀 取
include/body.Fix 的內(nèi)容 Ados.LoadFromFile(Server.mappath("include/body.Fix")) Ados1.write Ados.read(1280) //讀出 1280 個(gè)字節(jié)
for i=0 to 3
Ados.Position=(9-zimg(i))*320 //計(jì)算出在 Ados 流中的位置,即 9 減去這 個(gè)值再乘以 320
Ados1.Position=i*320//計(jì)算出應(yīng)該在 Ados 流中寫(xiě)的位置,即 320 個(gè)字節(jié)寫(xiě)
一個(gè)數(shù)Ados1.write ados.read(320)//寫(xiě)從 include/body.Fix 中讀出的 320 個(gè)字節(jié)
Next //循環(huán)處理四位數(shù)上的各個(gè)位
//Ados 流重新指向 include/body.Fix Ados.LoadFromFile(Server.mappath("include/head.fix")) Pos=lenb(Ados.read())//返回 Ados.read()一次讀取的內(nèi)容的字節(jié)長(zhǎng)度 Ados.Position=Pos
for i=0 to 9 step 1
for j=0 to 3 //j 每增加 1,Positiond 的值增加 320,剛好可以和上面的值
對(duì)應(yīng)起來(lái)
Ados1.Position=i*32+j*320
Ados.Position=Pos+30*j+i*120
Ados.write ados1.read(30)
next
next
Response.ContentType = "image/BMP" //寫(xiě)出的類(lèi)型為一個(gè) bmp 圖片 Ados.Position=0
Response.BinaryWrite Ados.read() Ados.Close:set Ados=nothing Ados1.Close:set Ados1=nothing
End Function
%>
3.3.4 CSS 樣式表
CSS 是 Cascading Style Sheets(層疊樣式表單)的簡(jiǎn)稱(chēng)。更多的人把它稱(chēng)作樣式 表。顧名思義,它是一種設(shè)計(jì)網(wǎng)頁(yè)樣式的工具。借助 CSS 的強(qiáng)大功能,網(wǎng)頁(yè)將在您豐富的 想象力下千變?nèi)f化。用很簡(jiǎn)單的 CSS 語(yǔ)句就可以實(shí)現(xiàn)許多需要專(zhuān)業(yè)軟件才可以達(dá)到的效果。 利用屬性可以設(shè)置字體、顏色、背景等頁(yè)面格式;利用定位可以使頁(yè)面布局更加規(guī)范、好 看;利用濾鏡可以使頁(yè)面產(chǎn)生多媒體效果。 在數(shù)計(jì)學(xué)院網(wǎng)站中,就是運(yùn)用了該技術(shù)規(guī)范了站點(diǎn)字體的統(tǒng)一。
3.3.5 MD5 加密算法
MD5 是一種單向加密算法,只是對(duì)數(shù)據(jù)進(jìn)行加密。沒(méi)有辦法對(duì)加密后的數(shù)據(jù)進(jìn)行解密。 在數(shù)計(jì)學(xué)院網(wǎng)站中,MD5 加密運(yùn)用在了用戶(hù)登錄密碼的加密上。使得用戶(hù)帳號(hào)安全得到保 證,數(shù)據(jù)庫(kù)系統(tǒng)更安全。
4. 結(jié)語(yǔ)
當(dāng)前,貴州民族學(xué)院數(shù)學(xué)與計(jì)算機(jī)科學(xué)學(xué)院網(wǎng)站經(jīng)過(guò)測(cè)試,達(dá)到了預(yù)期的目標(biāo),并且 在學(xué)院網(wǎng)絡(luò)小組的維護(hù)下正常使用。
4.1 網(wǎng)站建設(shè)目前存在的問(wèn)題
1、安全隱患,由于數(shù)計(jì)學(xué)院網(wǎng)站是租用遠(yuǎn)端虛擬服務(wù)器端,這就在 IIS、ODBC 等方 面的設(shè)置上有所局限,這是自身無(wú)法保證的安全隱患。
2、網(wǎng)站的內(nèi)容較單調(diào)。除了少數(shù)方面的內(nèi)容比較豐富之外,其它方面內(nèi)容大多只是 本組的簡(jiǎn)單介紹、師資介紹,少數(shù)的政治教學(xué)素材和資源的發(fā)布,內(nèi)容比較單調(diào)。有些網(wǎng) 站的內(nèi)容看似比較豐富,但真正適用的內(nèi)容較少。
3、更新周期長(zhǎng),內(nèi)容老化。網(wǎng)站建設(shè)是一項(xiàng)長(zhǎng)期的復(fù)雜的系統(tǒng)工程,對(duì)網(wǎng)站內(nèi)容進(jìn) 行定期更新、維護(hù)是保持網(wǎng)站生命力的基本要求。但是從調(diào)查的實(shí)際情況看卻不容樂(lè)觀, 許多政治教研組網(wǎng)站是重一次性建設(shè),輕后續(xù)建設(shè),更新周期長(zhǎng)。
4、頁(yè)面死板,形式單一,技術(shù)含量低。表現(xiàn)在網(wǎng)頁(yè)大多為靜止頁(yè)面,缺乏動(dòng)感;大 多為純粹的黑白文字頁(yè)面,缺乏對(duì)眼球的吸引力和沖擊力;頁(yè)面編排大多為將眾多鏈接簡(jiǎn) 單、呆板地堆砌起來(lái),美感不足,使訪問(wèn)者繼續(xù)瀏覽的興趣大減。
5、缺乏交互功能和服務(wù)功能,表現(xiàn)為訪問(wèn)者的被動(dòng)瀏覽,參與性、交互性較差。如 聊天室、BBS 等學(xué)院師生間交流平臺(tái)缺乏。
6、網(wǎng)站的特色不突出。由于時(shí)間倉(cāng)促,站點(diǎn)頁(yè)面設(shè)計(jì)借鑒了其他兄弟學(xué)校的同類(lèi)網(wǎng) 站建立起來(lái)。
4.2 加強(qiáng)數(shù)計(jì)學(xué)院網(wǎng)站建設(shè)的對(duì)策
1、提高學(xué)院師生的信息技術(shù)水平,轉(zhuǎn)變教師教育教學(xué)觀念,適應(yīng)網(wǎng)絡(luò)時(shí)代的特點(diǎn)。 在網(wǎng)絡(luò)時(shí)代,教學(xué)的成效將更多地依賴(lài)于"交互式"的信息傳輸方式,教師之間以及教師與
學(xué)生之間的將會(huì)更加平等的互動(dòng)交流。
2、 加強(qiáng)學(xué)校硬、軟件投入。改變教學(xué)手段信息技術(shù)是一項(xiàng)高投入的工程,也是科技 含量最高、技術(shù)更新相當(dāng)迅速的產(chǎn)業(yè)。
3、要把握好正確的建網(wǎng)原則,這一點(diǎn)很重要。主要包括: 方向性原則——網(wǎng)站資源健康向上、積極有益,在保證資源的統(tǒng)一性和多樣性的同時(shí),
要提倡內(nèi)容能體現(xiàn)本組的特色,例如本組教師的原創(chuàng)成果; 針對(duì)性原則——網(wǎng)站內(nèi)容、欄目設(shè)置、網(wǎng)頁(yè)設(shè)計(jì)等都要針對(duì)師生的特點(diǎn)和本組的特色,
增強(qiáng)網(wǎng)站的親和力和感染力,吸引師生主動(dòng)參與,寓教于樂(lè); 廣泛性原則——網(wǎng)站建設(shè)不僅要調(diào)動(dòng)本組內(nèi)一切信息資源,同時(shí)要發(fā)揮廣大同行與學(xué)
生參與的熱情,擴(kuò)大參與面,讓師生在參與中共同進(jìn)步; 服務(wù)性原則——要將教育與服務(wù)融為一體,增強(qiáng)網(wǎng)絡(luò)服務(wù)功能,如,開(kāi)設(shè)“建模導(dǎo)”、
和“資源共享”等欄目。
4、開(kāi)設(shè)數(shù)計(jì)學(xué)院網(wǎng)站的互動(dòng)與服務(wù)功能。通過(guò)電子郵件、聊天室、BBS 或者留言板等 形式,師生可以在平等、信任的情境中就普遍關(guān)心的熱點(diǎn)、難點(diǎn)問(wèn)題進(jìn)行自由討論、交流 互動(dòng)。我認(rèn)為,數(shù)計(jì)學(xué)院網(wǎng)站,首先應(yīng)該是為本組教師提供一個(gè)網(wǎng)上教研的平臺(tái),這就有 別與其他的院校宣傳性網(wǎng)站,也更能顯示數(shù)計(jì)學(xué)院網(wǎng)站的特色功能——網(wǎng)絡(luò)化的學(xué)院教 研。當(dāng)然,數(shù)計(jì)學(xué)院網(wǎng)站還必須“走出去”,加強(qiáng)校際教研組之間的交流,共同發(fā)展。
各院校在開(kāi)拓和利用網(wǎng)絡(luò)這一新領(lǐng)域來(lái)開(kāi)展宣傳、教學(xué)工作輔助等已經(jīng)做了有益的嘗 試,取得了初步成功。例如,我校的建筑工程系網(wǎng)站建設(shè)可以說(shuō)是成功的,為我們提供了 樣板。數(shù)計(jì)學(xué)院網(wǎng)站只是院務(wù)管理的一個(gè)小模塊,今后我們將進(jìn)一步努力,不斷學(xué)習(xí)和研 究新技術(shù),開(kāi)發(fā)出更多更好的符合我院現(xiàn)代化辦公的站點(diǎn)功能。
本文發(fā)布于成都網(wǎng)站建設(shè)公司創(chuàng)新互聯(lián)http://muchs.cn/

新聞名稱(chēng):基于BS架構(gòu)的網(wǎng)站制作論文
當(dāng)前鏈接:http://muchs.cn/news/231163.html

網(wǎng)站建設(shè)、網(wǎng)絡(luò)推廣公司-創(chuàng)新互聯(lián),是專(zhuān)注品牌與效果的網(wǎng)站制作,網(wǎng)絡(luò)營(yíng)銷(xiāo)seo公司;服務(wù)項(xiàng)目有網(wǎng)站制作

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶(hù)投稿、用戶(hù)轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

搜索引擎優(yōu)化