




版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
PAGE2網(wǎng)站設(shè)計(jì)與管理教案
ASP概述教學(xué)時(shí)間:第一周教學(xué)課時(shí):4節(jié)任課教師柳明池教學(xué)進(jìn)度:正常教學(xué)目標(biāo):1.對(duì)asp語(yǔ)言有一個(gè)初步概念,知道學(xué)習(xí)asp語(yǔ)言該學(xué)什么?怎么學(xué)?學(xué)了有什么用?2.介紹asp語(yǔ)言的特點(diǎn)、作用,以及Asp的運(yùn)行環(huán)境3.區(qū)分動(dòng)態(tài)網(wǎng)頁(yè)與靜態(tài)網(wǎng)頁(yè)4.建立第一個(gè)簡(jiǎn)單的asp程序helloworld.asp教學(xué)重點(diǎn):1.區(qū)分動(dòng)態(tài)網(wǎng)頁(yè)與靜態(tài)網(wǎng)頁(yè)2.建立第一個(gè)簡(jiǎn)單的asp程序helloworld.asp教學(xué)難點(diǎn):第一個(gè)簡(jiǎn)單的asp程序helloworld.asp教學(xué)過(guò)程:一、動(dòng)態(tài)網(wǎng)頁(yè)與靜態(tài)網(wǎng)頁(yè)的區(qū)別分析以下幾個(gè)網(wǎng)站:網(wǎng)站一、網(wǎng)站二、網(wǎng)站三靜態(tài)”網(wǎng)站的致命弱點(diǎn)就是不易維護(hù),為了不斷更新網(wǎng)頁(yè)內(nèi)容,你必須不斷地重復(fù)制作HTML文檔,隨著網(wǎng)站內(nèi)容和信息量的日益擴(kuò)增,你就會(huì)感到工作量大得出乎想象。那么什么是動(dòng)態(tài)網(wǎng)站呢?簡(jiǎn)單的講,由網(wǎng)頁(yè)應(yīng)用程序反饋至瀏覽器上生成的網(wǎng)頁(yè)即是動(dòng)態(tài)網(wǎng)頁(yè),該網(wǎng)頁(yè)是服務(wù)器與用戶(hù)進(jìn)行交互的界面。最常見(jiàn)的動(dòng)態(tài)網(wǎng)頁(yè)效果例如下圖所示,用戶(hù)在某個(gè)網(wǎng)頁(yè)中的文本框輸入相關(guān)的內(nèi)容,然后單擊其旁邊的確認(rèn)按鈕后,即可打開(kāi)一個(gè)相關(guān)的網(wǎng)頁(yè)。所謂“動(dòng)態(tài)”,并不是指那幾個(gè)放在網(wǎng)頁(yè)上的GIF動(dòng)態(tài)圖片,在這里我們?yōu)閯?dòng)態(tài)頁(yè)面的概念制定了以下幾條規(guī)則:1、“交互性”即網(wǎng)頁(yè)會(huì)根據(jù)用戶(hù)的要求和選擇而動(dòng)態(tài)改變和響應(yīng),將瀏覽器作為客戶(hù)端界面,這將是今后WEB發(fā)展的大事所趨。2、“自動(dòng)更新”即無(wú)須手動(dòng)地更新HTML文檔,便會(huì)自動(dòng)生成新的頁(yè)面,可以大大節(jié)省工作量。3、“因時(shí)因人而變”,即當(dāng)不同的時(shí)間、不同的人訪問(wèn)同一網(wǎng)址時(shí)會(huì)產(chǎn)生不同的頁(yè)面,是不是很酷?二、什么是asp語(yǔ)言Asp,全名activeserverpage,是一種服務(wù)器端腳本編寫(xiě)環(huán)境,可以用來(lái)創(chuàng)建和運(yùn)行動(dòng)態(tài)網(wǎng)頁(yè)或Web應(yīng)用程序。ASP網(wǎng)頁(yè)可以包含HTML標(biāo)記、普通文本、腳本命令以及COM組件等。1、學(xué)什么?1)課本第2,3,4三章,掌握asp的語(yǔ)法,包括語(yǔ)句格式,條件語(yǔ)句,循環(huán)語(yǔ)句,內(nèi)置函數(shù)和自編函數(shù)2)重點(diǎn)學(xué)習(xí)asp的對(duì)象,以及它們的屬性、方法、事件2、怎么學(xué)?1)掌握語(yǔ)法,注重理解2)認(rèn)真做作業(yè),調(diào)試程序,理解每一語(yǔ)句的作用3)利用網(wǎng)上資料和手冊(cè)解答簡(jiǎn)單問(wèn)題4)所謂“師傅領(lǐng)進(jìn)門(mén),修行靠自己”,關(guān)鍵要自己善于思索,課外多下功夫3、如何用?1)應(yīng)用到實(shí)際的網(wǎng)站中去,可完成留言、調(diào)查、注冊(cè)、博客、新聞管理與發(fā)布、音樂(lè)下載、聊天室等功能2)具體詳見(jiàn)第5、6、7、8、9、10、11章三、本學(xué)期要求與目標(biāo)1.認(rèn)真按時(shí)完成作業(yè)2.認(rèn)真做好聽(tīng)課筆記3.做好課前預(yù)習(xí)和課后復(fù)習(xí)4.B類(lèi)學(xué)分成績(jī):課堂表現(xiàn)(40%)+課堂筆記(20%)+作業(yè)(40%)四、怎么運(yùn)行asp程序?ASP程序是運(yùn)行于網(wǎng)絡(luò)服務(wù)器端的一種應(yīng)用程序,想要正常運(yùn)行ASP程序,還需要在完成Internet服務(wù)器IP地址的設(shè)置工作后建立ASP的運(yùn)行環(huán)境。常用的支持ASP的網(wǎng)絡(luò)服務(wù)器有PWS(PersonalWebServer)和IIS(InternetInformationServer)。因?yàn)閼?yīng)用PWS的Windows95/98操作系統(tǒng)目前已經(jīng)被淘汰,下面我們將重點(diǎn)介紹在Windows2000/XP這2種常用的操作系統(tǒng)中安裝與配置IIS的方法。運(yùn)行環(huán)境說(shuō)明操作系統(tǒng):win2000,win2003,winxp,Unix,linux等非windows系統(tǒng)是無(wú)法運(yùn)行iis那么什么是iis?iis是微軟出品的www服務(wù)器,也叫http服務(wù)器。全稱(chēng):internet信息服務(wù)器。iis作用:接收用戶(hù)發(fā)出的網(wǎng)頁(yè)瀏覽申請(qǐng),為用戶(hù)提供網(wǎng)頁(yè)信息。安裝iis過(guò)程,請(qǐng)看一段視頻五、運(yùn)行第一個(gè)asp程序:helloworld.asp新建一個(gè)asp文檔,加入以下一段代碼<%response.write"helloworld!"%>保存到新建站點(diǎn)下,再在地址欄中打入http://localhost/[站點(diǎn)名稱(chēng)]/[路徑]或/[站點(diǎn)名稱(chēng)]/[路徑]或http://本機(jī)ip地址/[站點(diǎn)名稱(chēng)]/[路徑]。<%..%>作為asp的一個(gè)標(biāo)記,并嵌入到html里;ASP語(yǔ)句和ASP腳本命令必須使用“<%”和“%>”表示腳本的開(kāi)始和結(jié)束,可以每一行ASP語(yǔ)句界定一次,也可以多行語(yǔ)句界定一次。response.write什么意思?運(yùn)行代碼<%response.write(date())%>思考:我要輸出以下內(nèi)容,可以如何寫(xiě)程序?asp是很有用我一定好好學(xué)六、程序如何工作?<%response.write("好好學(xué)習(xí)<br>")response.write("天天向上<br><br>")%><%response.write("天天向上<br><br>")response.write("好好學(xué)習(xí)<br>")%>比較這兩段代碼的輸出-程序是按順序執(zhí)行的。再看代碼:<%response.write("天天向上<br><br>"):response.write("好好學(xué)習(xí)<br>")%>如果把多條語(yǔ)句放在同一行中,就要用冒號(hào)將他們分開(kāi)。
常量、變量、運(yùn)算符教學(xué)時(shí)間:第二周教學(xué)課時(shí):4節(jié)教學(xué)進(jìn)度:正常教學(xué)目標(biāo):掌握常量、變量、運(yùn)算符的概念,和數(shù)據(jù)類(lèi)型。教學(xué)重點(diǎn):常量、變量、運(yùn)算符教學(xué)難點(diǎn):數(shù)組變量教學(xué)過(guò)程:一、常量常量是用來(lái)取代固定數(shù)字或固定字符串的名稱(chēng)。它的語(yǔ)法如下:constpi=3.14159consthtml="hypertextmaruplanguage"constcreatdate=#11-12-2000#其中字符串常數(shù)需以雙引號(hào)""表示,日期表達(dá)式則必須使用#將日期的值括起來(lái)運(yùn)行:<%constpi=3.14159response.write(pi)%>如果改成<%constpi=3.14159response.write(pi)pi=5%>注:常數(shù)的值在執(zhí)行期間不得改變,故稱(chēng)為常數(shù)。若在程序中不小心改變了常數(shù)值,會(huì)顯示命令不合法的信息。二、變量什么是變量?先看一個(gè)例子。<%response.write("asp很有用,我一定好好學(xué)")%>比較:<%a="asp很有用,我一定好好學(xué)"response.write(a)%>把a(bǔ)看成一個(gè)盒子,a="asp很有用,我一定好好學(xué)"http://相當(dāng)于將字符串"asp很有用,我一定好好學(xué)"裝進(jìn)了盒子a里response.write(a)//相當(dāng)于將盒子a里的東西輸出a即為一個(gè)變量變量為計(jì)算機(jī)內(nèi)存位置的一塊空間,在這個(gè)空間中,可以保存程序執(zhí)行過(guò)程中所產(chǎn)生的信息。注:asp變量中所有的變量都是沒(méi)有數(shù)據(jù)類(lèi)型的變量,也就是說(shuō)變量的類(lèi)型都是可變的數(shù)據(jù)類(lèi)型。當(dāng)我們將整數(shù)數(shù)據(jù)指定給變量,該變量就是整數(shù)變量,指定日期給該變量,該變量就是日期類(lèi)型的變量。變量的定義用dim如:dimx,y,z變量里面的內(nèi)容稱(chēng)為變量的值=稱(chēng)為賦值運(yùn)算符例:<%a="asp很有用"a="我一定好好學(xué)"response.write(a)%> <%a="asp很有用,我一定好好學(xué)"response.write("a")%>請(qǐng)問(wèn)上面兩個(gè)例子的結(jié)果是什么?變量的命名規(guī)則必須以英文字母開(kāi)頭,且只可以使用字母、數(shù)字和下劃線的組合變量名稱(chēng)不能包含句點(diǎn)(.)變量名稱(chēng)的長(zhǎng)度不能超過(guò)255個(gè)字符在定義的有效范圍中必須是惟一的三、運(yùn)算符1、算術(shù)運(yùn)算符(1)我們先來(lái)看這么一個(gè)例子<%a=1b=2c=a+bresponse.write(c)%>其中等號(hào)我們稱(chēng)為賦值運(yùn)算符,+稱(chēng)為算術(shù)運(yùn)算符算術(shù)運(yùn)算符有以下幾種:+正號(hào)-負(fù)號(hào)+加法-減法*乘法/除法\整數(shù)除法Mod余數(shù)思考:當(dāng)前變量a的值是5,我還想把變量a的值增加2,該怎么辦?(2)運(yùn)行程序;<%a=2b="計(jì)算機(jī)專(zhuān)業(yè)"response.write(a+b)%> a是數(shù)值類(lèi)型b是字符類(lèi)型,加上引號(hào)不同類(lèi)型的變量最好不要進(jìn)行運(yùn)算變量的類(lèi)型有整型,單精度,字符,時(shí)間類(lèi)型我們來(lái)看下時(shí)間類(lèi)型,會(huì)出現(xiàn)什么結(jié)果呢?<%a=#2006-9-1b=13response.write(a+b)%>2、比較運(yùn)算符:=等于<>不等于<小于>大于<=小于等于>=大于等于3、邏輯運(yùn)算符:NOT將邏輯值加以反向AND“和”或者說(shuō)“且”運(yùn)算OR“或”運(yùn)算XOR“異或”運(yùn)算四、數(shù)組實(shí)例:計(jì)算全班40個(gè)同學(xué)的平均成績(jī)定義40個(gè)變量,逐個(gè)相加??我們可以用數(shù)組存儲(chǔ)數(shù)據(jù),再對(duì)他們進(jìn)行循環(huán)相加。什么是數(shù)組?簡(jiǎn)單地說(shuō)數(shù)組就是一堆變量。dima(2)//其中a是數(shù)組名,這里定義了3個(gè)數(shù)組變量dim數(shù)組名(元素?cái)?shù)量)a(0)=4a(1)=7a(2)=5//對(duì)3個(gè)數(shù)組變量進(jìn)行賦值response.write((a(0)+a(1)+a(2))/3)以上是對(duì)3個(gè)變量求平均值對(duì)40個(gè)變量求平均值?對(duì)以上程序可以改成<%dima(2)a(0)=4a(1)=7a(2)=5fori=0to2b=b+a(i)nextresponse.write(b/3)%>
條件語(yǔ)句教學(xué)時(shí)間:第三周教學(xué)課時(shí):4節(jié)教學(xué)進(jìn)度:正常教學(xué)目標(biāo):1、掌握單分支if語(yǔ)句的格式與執(zhí)行流程2、雙分支if語(yǔ)句的格式與執(zhí)行流程3、多分支if語(yǔ)句的格式與執(zhí)行流程4、條件式的書(shū)寫(xiě)教學(xué)重點(diǎn):if語(yǔ)句的格式與執(zhí)行流程教學(xué)難點(diǎn):程序編寫(xiě)教學(xué)過(guò)程:一、條件式語(yǔ)法if條件1then語(yǔ)句1[elseif條件2then語(yǔ)句2][else語(yǔ)句n]endif1、由用戶(hù)輸入2個(gè)數(shù),輸出其中較大的一個(gè)數(shù)ifa>bthenmax=aelsemax=bendifresponse.write(max)ifa>bthenresponse.Write("<center><h2>a>b</h2></center>")elseresponse.Write("a<b")endif觀察與左邊代碼的區(qū)別所在,怎樣改動(dòng)代碼使之顯示較大的數(shù)。2、輸出一個(gè)數(shù),如果是偶數(shù),顯示“偶數(shù)”,是奇數(shù),顯示“奇數(shù)”dima(1)_____________if(2)_____________thenresponse.write(3)______________elseresponse.write(4)______________endif1、請(qǐng)?jiān)谟疫叺目招兄刑顚?xiě)語(yǔ)句,使之能運(yùn)行顯示正確結(jié)果。2、要求結(jié)果顯示如下,“30是偶數(shù)!”3、思考用第二種方法來(lái)判斷該數(shù)是奇數(shù)還是偶數(shù)。二、利用條件語(yǔ)句編寫(xiě)程序程序1要求:早上的時(shí)候?yàn)g覽器頁(yè)面顯示“早上好”,下午的時(shí)候頁(yè)面顯示“下午好”,晚上的時(shí)候顯示“晚上好”提示:(1)取系統(tǒng)當(dāng)前的日期:Date(2)取系統(tǒng)當(dāng)前的時(shí)間:Time(3)取系統(tǒng)當(dāng)前的日期及時(shí)間:Now如:response.write(Date)結(jié)果為:2005-7-12response.write(Time)結(jié)果為:16:27:42response.write(Now)結(jié)果為:2005-7-1216:28:18程序2要求:早上的時(shí)候頁(yè)面的顏色是銀色,下午的時(shí)候頁(yè)面的顏色是藍(lán)色,晚上的時(shí)候頁(yè)面的顏色是紅色提示:頁(yè)面顏色的變量是bgcolor銀色:#666666藍(lán)色:#000066紅色:#ff0000三、與表單結(jié)合表單與動(dòng)態(tài)網(wǎng)站設(shè)計(jì)是分不開(kāi)的,現(xiàn)在上網(wǎng)凡是要求用戶(hù)輸入信息的基本上都由表單實(shí)現(xiàn)。表單的最直接的作用就是它可以從客戶(hù)端瀏覽器收集信息,并將所收集的信息指定一個(gè)處理的方法。此處理方法可以為ASP的程序,也可為其他的如JSP、PHP等程序。因此掌握好表單的使用是制作動(dòng)態(tài)網(wǎng)站的基礎(chǔ),也是至關(guān)重要的一步。表單是實(shí)現(xiàn)與用戶(hù)進(jìn)行信息交流的主要方式,它可以細(xì)分成以下兩塊。(1)Form標(biāo)記(表單):用于指明處理數(shù)據(jù)的方法。(2)表單域:提供手機(jī)用戶(hù)信息的方式,如產(chǎn)生文本框還是選擇框等。我們來(lái)看一個(gè)表單元素:文本域。這個(gè)是最基本的,傳送的是文本信息,一般用戶(hù)名,密碼都要用這個(gè)傳送,不過(guò)要是密碼的話要在類(lèi)型里面選擇密碼,這樣就會(huì)以*代替顯示出來(lái)的字符,文本域的名字很重要,以后會(huì)用到這個(gè)名字所以一般不用默認(rèn)的名字?,F(xiàn)在舉一個(gè)例子,程序3:先在dw中制作如下表單:姓名:密碼:性別:男女城市:如果要讓輸入的結(jié)果顯示在當(dāng)前網(wǎng)頁(yè)上,則需要Request語(yǔ)句,來(lái)獲取瀏覽器傳遞的數(shù)據(jù);同時(shí)再加上Response語(yǔ)句來(lái)顯示數(shù)據(jù)這樣就形成了一個(gè)從客戶(hù)端到瀏覽器再回到客戶(hù)端的過(guò)程。代碼如下所示:<%name=request.form("name")psw=request.form("psw")sex=request.form("sex")city=request.form("city")response.write(name)response.write(psw)response.write(sex)response.write(city)%>如果要讓結(jié)果顯示在新的網(wǎng)頁(yè)中,則需要把上述代碼添加到新的網(wǎng)頁(yè)中,并且原來(lái)網(wǎng)頁(yè)中的表單事件中也需要設(shè)置好:當(dāng)表單提交后,數(shù)據(jù)將傳遞給哪一個(gè)文件。程序4:與表單結(jié)合姓名:性別:男女點(diǎn)提交按鈕,如果是男士,頁(yè)面出現(xiàn)“歡迎你,***先生!”,如果是女士,頁(yè)面出現(xiàn)“歡迎你,***女士”其中***代表登錄者的姓名三、選做實(shí)例:計(jì)算器操作數(shù)1:操作數(shù)2:選擇你要進(jìn)行的操作加減乘除CLng函數(shù)用于進(jìn)行從其他數(shù)據(jù)類(lèi)型到Long子類(lèi)型的的國(guó)際公認(rèn)的格式轉(zhuǎn)換。注意CLng函數(shù)與Fix和Int函數(shù)功能不同,后兩者函數(shù)對(duì)數(shù)值的小數(shù)部分進(jìn)行截尾取整而不是四舍五入。當(dāng)小數(shù)部分恰好等于0.5時(shí),CLng函數(shù)通常向與此數(shù)最接近的偶數(shù)取整。例如,0.5取整為0、1.5取整為2。
循環(huán)語(yǔ)句教學(xué)時(shí)間:第四周教學(xué)課時(shí):4節(jié)教學(xué)進(jìn)度:正常教學(xué)目標(biāo):1、掌握f(shuō)or循環(huán)語(yǔ)句的格式及執(zhí)行流程;2、學(xué)會(huì)編寫(xiě)簡(jiǎn)單小程序。教學(xué)重點(diǎn):for循環(huán)出口和循環(huán)的次數(shù)教學(xué)難點(diǎn):程序編寫(xiě)教學(xué)過(guò)程:一、for...next語(yǔ)句的語(yǔ)法循環(huán)是指在指定情況下多次重復(fù)執(zhí)行一組語(yǔ)句。最常用的兩種循環(huán)語(yǔ)句是:do...loopfornext我們主要來(lái)學(xué)習(xí)for...next語(yǔ)句,語(yǔ)法:for變量=初值to終值[step步長(zhǎng)]循環(huán)體語(yǔ)句nextfor..next語(yǔ)句通常用于執(zhí)行某固定次數(shù)的程序代碼時(shí)使用。1、求1+2+3++100的值sum=0fori=1to100sum=sum+inextresponse.write(sum)知識(shí)點(diǎn):◎當(dāng)變量被放置在循環(huán)語(yǔ)句中時(shí)就被稱(chēng)為“循環(huán)變量”,它能每次自動(dòng)加1,to就是“到”的意思?!虼硕未a的循環(huán)終點(diǎn)值為100,即當(dāng)i被累加到100時(shí),就不再執(zhí)行for循環(huán)語(yǔ)句,而是執(zhí)行next以后的代碼?!蛉粢箫@示結(jié)果“1+2+3++100=****",則如何修改代碼?2、求1*3*5*7**99的值a=1fori=1to99step2a=a*inextresponse.write(a)3、看語(yǔ)句寫(xiě)結(jié)果:<%fori=0to9response.write(i)response.write("<br>")next%>二、程序1:金字塔程序三、循環(huán)嵌套程序2墻程序1、利用單重循環(huán)語(yǔ)句<%fori=0to9a="*********"response.write(a)response.write("<br>")next%>2、利用多重循環(huán)語(yǔ)句(循環(huán)嵌套)格式:for變量=初值1to終值[step步長(zhǎng)]for變量=初值2to終值[step步長(zhǎng)]循環(huán)體語(yǔ)句nextnext注意:嵌套循環(huán)中,循環(huán)變量不能同上一層循環(huán)的變量相同。四、利用for...next循環(huán)語(yǔ)句編寫(xiě)程序程序3要求:在頁(yè)面中央顯示6個(gè)笑臉表示問(wèn)候。注:這是一個(gè)最最基本的循環(huán)語(yǔ)句,它將一個(gè)笑臉圖片重復(fù)調(diào)用六次并顯示在頁(yè)面上。當(dāng)然此例的效果完全可以用HTML做到,但是不難發(fā)現(xiàn)使用ASP大大縮短了代碼的重復(fù)編寫(xiě),使得程序具有良好的可閱讀性。另外,當(dāng)你制作一個(gè)諸如根據(jù)用戶(hù)投票來(lái)給所評(píng)測(cè)的對(duì)象評(píng)定星級(jí)的評(píng)測(cè)站點(diǎn)時(shí),使用此法,你就完全不需要為每一個(gè)星級(jí)制作一幅圖片。如果一個(gè)對(duì)象被評(píng)為4星級(jí),那只需將一顆星的圖片循環(huán)顯示4次,以此類(lèi)推即可。當(dāng)然,當(dāng)工作量較小的時(shí)候你不會(huì)感覺(jué)到ASP的好處,然而一旦數(shù)據(jù)量巨增,你將會(huì)深刻的體會(huì)到ASP動(dòng)態(tài)網(wǎng)站給你帶來(lái)的前所未有的輕、爽感受!
內(nèi)置函數(shù)一教學(xué)時(shí)間:第五周教學(xué)課時(shí):4節(jié)教學(xué)進(jìn)度:正常教學(xué)目標(biāo):1、復(fù)習(xí)函數(shù)的概念;2、掌握字符串函數(shù),數(shù)值函數(shù);3、對(duì)內(nèi)置函數(shù)的應(yīng)用。教學(xué)重點(diǎn):字符串函數(shù)、數(shù)值函數(shù)教學(xué)難點(diǎn):函數(shù)格式、內(nèi)置函數(shù)的應(yīng)用教學(xué)過(guò)程:一、什么是函數(shù)?函數(shù)的功能先來(lái)看一段代碼<%a="helloworld"b=ucase(a)response.write(a)response.write("<br>")response.write(b)%>輸出結(jié)果helloworldHELLOWORLD函數(shù)是一些預(yù)先編好的代碼。函數(shù)可以幫助我們簡(jiǎn)化編程,有些工作不用我們親自去做,而交給函數(shù)去做。比如,我們剛剛使用到的ucase()函數(shù),它里面包含了一些能把大寫(xiě)字母字母變成小寫(xiě)字母的代碼。一調(diào)用這個(gè)函數(shù),它就會(huì)自動(dòng)執(zhí)行。函數(shù)是有返回值的,我們把參數(shù)給一個(gè)函數(shù),函數(shù)執(zhí)行完后會(huì)得到一個(gè)結(jié)果。有參數(shù)的函數(shù):ucase(x),len(x),有些函數(shù)有多個(gè)參數(shù),如instr(字符串,子字符串)等。沒(méi)有參數(shù)的函數(shù):now(),time(),date()asp提供了許多系統(tǒng)內(nèi)置的函數(shù),對(duì)于這些函數(shù)我們不用特別定義,就可以直接引用。二、字符串函數(shù)1、len函數(shù)語(yǔ)法:len(字符串)功能:取得字符串的長(zhǎng)度返回值:字符串的長(zhǎng)度范例:n=len("互聯(lián)網(wǎng)絡(luò)internet")'n=12,中文字長(zhǎng)度與英文字同。注:asp中,中英文字、標(biāo)點(diǎn)符號(hào)各代表一個(gè)字,如"互聯(lián)。in/·#¥ternet"字符串長(zhǎng)度為15。2、instr函數(shù)語(yǔ)法:instr(字符串,子字符串)功能:從字符串中找出子字符串第一個(gè)出現(xiàn)的位置。返回值:子字符串在str值中第一個(gè)出現(xiàn)的位置范例:p=instr("crispin@hlfff.cpm","@")'p=8,請(qǐng)大家分別嘗試當(dāng)子字符串沒(méi)出現(xiàn)、為空值時(shí)的情況。3、left函數(shù)語(yǔ)法:left(字符串,n)功能:從字符串左邊算起取出n個(gè)字符返回值:指定的字符串范例:user=left("c14@",3)'user=c144、right函數(shù)語(yǔ)法:right(字符串,n)功能:從字符串右邊算起取出n個(gè)字符返回值:指定的字符串范例:a=right("c14@",11)'a=5、mid函數(shù)語(yǔ)法:mid(字符串,開(kāi)始字符,n)功能:從字符串的開(kāi)始字符開(kāi)始,取出n個(gè)字符返回值:指定的字符串范例:a=mid("c14@",4,1)'a=@,當(dāng)n值大于剩余字符串的長(zhǎng)度時(shí),會(huì)出現(xiàn)什么情況。程序1:取出電子郵件賬號(hào)演示提示:電子郵件地址是用戶(hù)賬號(hào)名稱(chēng)及郵件主機(jī)名稱(chēng)所組成,中間以"@"字符分隔,若我們要取出用戶(hù)賬號(hào),我們可以用instr函數(shù)先取得"@"所在的位置,然后利用left函數(shù)取出"@"前面的所有字符,就可以取得用戶(hù)賬號(hào)。<%a="c14@"p=instr(a,"@")b=left(a,p-1)response.write("郵件賬號(hào)是:"&b)%>程序2:取出電子郵件的主機(jī)名演示提示:用instr函數(shù)取得"@"字符的位置,然后以len函數(shù)取得用戶(hù)賬號(hào),最后再利用mid或right函數(shù)取得郵件主機(jī)名。
內(nèi)置函數(shù)二教學(xué)時(shí)間:第六周教學(xué)課時(shí):4節(jié)教學(xué)進(jìn)度:正常教學(xué)目標(biāo):1、掌握數(shù)值函數(shù),隨機(jī)函數(shù);2、對(duì)內(nèi)置函數(shù)的應(yīng)用。教學(xué)重點(diǎn):數(shù)值函數(shù)、隨機(jī)函數(shù)教學(xué)難點(diǎn):隨機(jī)函數(shù)編寫(xiě)教學(xué)過(guò)程:回顧:作業(yè):取出電子郵件的賬號(hào)、主機(jī)名新課:一、數(shù)值函數(shù)1、int函數(shù)語(yǔ)法:int(數(shù))功能:取整返回值:浮點(diǎn)數(shù)值的整數(shù)部分范例:觀察與clng函數(shù)的區(qū)別:CLng函數(shù)通常向與此數(shù)最接近的偶數(shù)取整。2、round函數(shù)語(yǔ)法round(數(shù))功能:四舍五入返回值:依據(jù)要求返回四舍五入后的數(shù)值范例:利用round函數(shù)計(jì)算小數(shù)點(diǎn)兩位以下四舍五入提示:取小數(shù)點(diǎn)以下兩位,要先乘以100后四舍五入,再除以100。思考:計(jì)算小數(shù)點(diǎn)后4位以下四舍五入呢?3、abs函數(shù)語(yǔ)法:abs(數(shù))功能:取絕對(duì)值返回值:數(shù)的絕對(duì)值二、隨機(jī)函數(shù)隨機(jī)函數(shù)是由計(jì)算機(jī)的隨機(jī)器產(chǎn)生的一個(gè)數(shù)字。隨機(jī)數(shù)的應(yīng)用非常廣泛,如,平常我們看到的抽獎(jiǎng)的促銷(xiāo)活動(dòng)就是隨機(jī)數(shù)的應(yīng)用之一。(1)函數(shù)rnd()是一個(gè)非常重要的函數(shù)。如果你想建立一個(gè)隨機(jī)的問(wèn)候語(yǔ),一個(gè)日期的隨機(jī)提示,或者甚至一個(gè)游戲,你將要使用這個(gè)函數(shù)。rnd()返回一個(gè)0到1之間的隨機(jī)數(shù)。這里有這個(gè)函數(shù)的一個(gè)例子:<%=rnd()%>典型情況下,你更感興趣的是用這個(gè)函數(shù)來(lái)返回處在一定范圍內(nèi)的整數(shù)。要返回一個(gè)大于等于0而小于某個(gè)特定整數(shù)的數(shù)字,你可以使用如下的語(yǔ)句:<%=int((upperbound+1)*rnd)%>用你想產(chǎn)生的最大隨機(jī)數(shù)代替表達(dá)式upperbound。例如,下面的腳本返回一個(gè)0和5之間的數(shù),包括0和5:<%=int(5+1)*rnd)%>如果你想產(chǎn)生一個(gè)處在某個(gè)范圍內(nèi)的隨機(jī)數(shù),該范圍有一個(gè)大于0的下界,可以使用如下的腳本:<%=int((upperbound–lowerbound+1)*rnd+lowerbound)%>例如,下面的腳本產(chǎn)生一個(gè)50到75之間的隨機(jī)數(shù)(包括50和75):<%=int((75-50+1)*rnd+50)%>程序1:結(jié)合條件語(yǔ)句和rnd函數(shù),使網(wǎng)頁(yè)隨機(jī)顯示三條問(wèn)候語(yǔ):"hello!"、"welcome!"、"Howareyou!"提示:可以用數(shù)字0,1,2分別對(duì)應(yīng)三條問(wèn)候語(yǔ),利用rnd函數(shù)隨機(jī)獲得0、1、2之間的任一數(shù)。(2)程序1腳本建立并顯示一個(gè)條機(jī)的問(wèn)候語(yǔ)。但是,大家會(huì)發(fā)現(xiàn)它并不按你想象的方式工作。無(wú)論何時(shí)有人下載了包含這段腳本的網(wǎng)頁(yè),將有同樣的隨機(jī)問(wèn)候語(yǔ)被打印。如果有人多次回到這個(gè)網(wǎng)頁(yè),他或她將得到同樣的問(wèn)候。一個(gè)隨機(jī)數(shù)產(chǎn)生了,但是每次都是同樣的隨機(jī)數(shù)。有一個(gè)特殊的語(yǔ)句可以幫助解決這個(gè)問(wèn)題。randomize語(yǔ)句用來(lái)強(qiáng)制函數(shù)rnd()使用一個(gè)新的隨機(jī)數(shù)序列。randomize語(yǔ)句通過(guò)計(jì)算機(jī)的系統(tǒng)計(jì)時(shí)器,為函數(shù)rnd()提供一個(gè)新的種子值。大家可以修改前面的程序,觀察效果,會(huì)發(fā)現(xiàn)此時(shí)腳本可以正確工作。每次執(zhí)行這個(gè)腳本時(shí),將會(huì)產(chǎn)生一個(gè)新的隨機(jī)問(wèn)候。程序2:利用for..next循環(huán)隨機(jī)產(chǎn)生5個(gè)1到100之間隨機(jī)數(shù)
面向?qū)ο缶幊探虒W(xué)時(shí)間:第七周教學(xué)課時(shí):4節(jié)教學(xué)進(jìn)度:正常教學(xué)目標(biāo):1、了解什么是面向?qū)ο缶幊碳笆裁词菍?duì)象;2、掌握asp的response對(duì)象的屬性;3、函數(shù)復(fù)習(xí)。教學(xué)重點(diǎn):buffer屬性和contenttype屬性。教學(xué)難點(diǎn):面向?qū)ο缶幊趟枷?。教學(xué)過(guò)程:教學(xué)過(guò)程:回顧復(fù)習(xí),綜合提高1、定義一個(gè)函數(shù),功能是計(jì)算圓面積2、結(jié)合條件語(yǔ)句和rnd函數(shù),使網(wǎng)頁(yè)隨機(jī)顯示三條問(wèn)候語(yǔ):"hello!"、"welcome!"、"Howareyou!"程序1:石頭、剪刀、布游戲知識(shí)要點(diǎn):1、隨機(jī)函數(shù)2、自編函數(shù)3、表單4、ifthen語(yǔ)句新課:一、什么是對(duì)象?對(duì)象就是由具有屬性、方法、事件三要素所組合而成的東西。那么什么是屬性?方法?事件?舉例:對(duì)象--手機(jī)屬性方法事件天線撥號(hào)電話響了材質(zhì)接聽(tīng)電話無(wú)信號(hào)顏色撥號(hào)電話占線重量掛斷語(yǔ)音通知號(hào)碼電話號(hào)碼電信1、屬性就是對(duì)象的特征。2、方法就是該對(duì)象所能采取的行為。3、事件就是對(duì)象與外界溝通的方法。如:“電話響了”就是一個(gè)事件,然后利用“接聽(tīng)”的方法來(lái)聽(tīng)電話。思考:一臺(tái)電腦是一個(gè)對(duì)象,它的屬性?方法?事件?4、數(shù)據(jù)集數(shù)據(jù)集合是一數(shù)據(jù)結(jié)構(gòu)。例如:電腦里面還有一些集合,我們可以把主板看成一個(gè)集合。那么這個(gè)集合里面有一些cpu,內(nèi)存,控制部件,這些部件也有它們的屬性和方法。cpu屬性:速度、外形、品牌。cpu方法:進(jìn)行運(yùn)算,進(jìn)行控制。二、asp的六個(gè)對(duì)象三、response對(duì)象數(shù)據(jù)集cookies,它是用來(lái)在client端寫(xiě)入相關(guān)數(shù)據(jù),以便以后使用。即將數(shù)據(jù)設(shè)置到瀏覽器。語(yǔ)法:response.write("cookies的名字")="cookies的值"在request對(duì)象中也有cookies的數(shù)據(jù)集合,request中的cookies是用來(lái)取得用戶(hù)的相關(guān)信息。下回將與request中的cookies結(jié)合詳講。屬性response有9個(gè)屬性常用:buffer,contenttype1、buffer屬性比較運(yùn)行兩段代碼,看看有什么不同?思考:為什么會(huì)有不同?注意:對(duì)buffer屬性的設(shè)置必須放在網(wǎng)頁(yè)的第一行。2、contenttyperesponse.contenttype="image/gif"http://指定輸出gif圖片數(shù)據(jù)response.contenttype="text/html"http://指定輸出html文本數(shù)據(jù)
response對(duì)象的方法教學(xué)時(shí)間:第八周教學(xué)課時(shí):4節(jié)教學(xué)進(jìn)度:正常教學(xué)目標(biāo):1、掌握response對(duì)象的方法;2、掌握asp的response對(duì)象的屬性;教學(xué)重點(diǎn):response對(duì)象的屬性。教學(xué)難點(diǎn):clear,end,flush方法。教學(xué)過(guò)程:教學(xué)過(guò)程:一、回顧復(fù)習(xí),綜合提高:1、什么是對(duì)象?2、asp有哪六大對(duì)象?它們分別有什么功能?3、response的屬性有哪些?其中buffer和contenttype屬性分別是什么作用?新課:二、response的方法1、clear,end,flush方法回顧:buffer屬性作用?在response方法中有3個(gè)方法與buffer屬性相關(guān):clear,end,flush他們與buffer的依賴(lài)關(guān)系:clear:buffer屬性必須為true,如果未將Response.Buffer設(shè)置為T(mén)RUE,則該方法將導(dǎo)致運(yùn)行時(shí)錯(cuò)誤。end:無(wú)依賴(lài)flush:buffer屬性必須為true,如果未將Response.Buffer設(shè)置為T(mén)RUE,則該方法將導(dǎo)致運(yùn)行時(shí)錯(cuò)誤。程序1-3:運(yùn)行以下3段代碼,看看有什么不同?思考:為什么會(huì)不同?2、redirect方法response.redirect告訴瀏覽器轉(zhuǎn)向另一個(gè)網(wǎng)頁(yè)程序4:課堂練習(xí)1:回答以下代碼的運(yùn)行結(jié)果會(huì)是什么?為什么?運(yùn)行驗(yàn)證。3、binarywrite方法用來(lái)輸出二進(jìn)制數(shù)據(jù)到瀏覽器,所輸出的數(shù)據(jù)不經(jīng)過(guò)任何字符集的轉(zhuǎn)換。
request對(duì)象的方法教學(xué)時(shí)間:第九周教學(xué)課時(shí):4節(jié)教學(xué)進(jìn)度:正常教學(xué)目標(biāo):1、掌握request對(duì)象的數(shù)據(jù)集;2、了解totalbytes、binaryread;教學(xué)重點(diǎn):request對(duì)象的屬性。教學(xué)難點(diǎn):request對(duì)象的應(yīng)用教學(xué)過(guò)程:教學(xué)過(guò)程:一、request的概念request對(duì)象是用來(lái)取得用戶(hù)端的相關(guān)信息,通常包括瀏覽器種類(lèi),表頭信息,表單參數(shù)及cookies等。二、request對(duì)象的數(shù)據(jù)集1、clientcertificate用來(lái)取得瀏覽器端的身份驗(yàn)證2、cookiesrequest.cookies與response.cookies剛好相對(duì),response.cookies是將cookies寫(xiě)入,而它則是將cookies的值取出。語(yǔ)法:變量=request.cookies("cookies的名字")3、formform是用來(lái)取得由表單所發(fā)送的值。4、querystringquerystring和form一樣,都是取得前一頁(yè)所發(fā)送的值。不同的是,form是利用表單取得數(shù)據(jù),而querystring則是利用參數(shù)來(lái)取得數(shù)據(jù)。5、servervariablesservervariables是用來(lái)存儲(chǔ)環(huán)境變量及http標(biāo)題。這些我們?cè)谡搲谐R?jiàn),就是使用servervariables數(shù)據(jù)集。(演示2)幾個(gè)常用Request.ServerVariables的變量:本文件ip路徑:<%="http://"&request.servervariables("server_name")&request.servervariables("script_name")%><br/>本機(jī)ip:<%=request.servervariables("remote_addr")%><br/>服務(wù)器名:<%=Request.ServerVariables("SERVER_NAME")%><br/>服務(wù)器IP:<%=Request.ServerVariables("LOCAL_ADDR")%><br/>服務(wù)器端口:<%=Request.ServerVariables("SERVER_PORT")%><br/>服務(wù)器時(shí)間:<%=now%><br/>IIS版本:<%=Request.ServerVariables("SERVER_SOFTWARE")%><br/>本文件路徑:<%=server.mappath(Request.ServerVariables("SCRIPT_NAME"))%><br/>服務(wù)器CPU數(shù)量:<%=Request.ServerVariables("NUMBER_OF_PROCESSORS")%><br/>服務(wù)器操作系統(tǒng):<%=Request.ServerVariables("OS")%><br/>支持的文件類(lèi)型:<%=Request.ServerVariables("HTTP_Accept")%><br/>訪問(wèn)的文件路徑:<%=Request.ServerVariables("HTTP_url")%><br/>用戶(hù)代理的信息:<%=Request.ServerVariables("HTTP_USER_AGENT")%><br/>獲取url中的文件名和傳過(guò)來(lái)的值:request.ServerVariables("script_name")+"?"+request.ServerVariableS("QUERY_STRING")<br/>重點(diǎn)掌握cookies,querystring,form
Request對(duì)象(2)教學(xué)時(shí)間:第十周教學(xué)課時(shí):4節(jié)教學(xué)進(jìn)度:正常教學(xué)目標(biāo):1、鞏固掌握request語(yǔ)句;2、學(xué)會(huì)結(jié)合request,response語(yǔ)句編寫(xiě)小程序。教學(xué)重點(diǎn):request語(yǔ)句的應(yīng)用教學(xué)難點(diǎn):應(yīng)用程序的編寫(xiě)教學(xué)過(guò)程:回顧:【ASP中,Request對(duì)象獲取數(shù)據(jù)的3種方法:】Request.Form:獲取以POST方式提交的數(shù)據(jù)(接收Form提交來(lái)的數(shù)據(jù));演示1關(guān)鍵代碼:<%Fori=1ToRequest.Form("hobby").CountResponse.WriteRequest.Form("hobby")(i)&"<BR>"Next%>Request.QueryString:獲取地址欄參數(shù)(以及以GET方式提交的數(shù)據(jù));演示2Request:包含以上兩種方式(優(yōu)先獲取GET方式提交的數(shù)據(jù)),它會(huì)在QueryString、Form、ServerVariable中都搜尋一遍。新課:一、request的屬性request的屬性只有一個(gè)totalbytes,用來(lái)存儲(chǔ)由瀏覽器送到服務(wù)器的字節(jié)數(shù)。語(yǔ)法:request.totalbytes舉例:<%Response.Write“從客戶(hù)端接收的數(shù)據(jù)字節(jié)大小為:"&Request.TotalBytes%>二、request方法request方法只有一個(gè)binaryread,當(dāng)瀏覽器以post方式發(fā)送數(shù)據(jù)時(shí),使用這個(gè)方法可以將數(shù)據(jù)以二進(jìn)制格式讀取,并存儲(chǔ)于一個(gè)數(shù)組中。語(yǔ)法:數(shù)組名=request.binaryread(數(shù)組)與binarywrite相對(duì)應(yīng)。
cookies數(shù)據(jù)集合教學(xué)時(shí)間:第十一周教學(xué)課時(shí):4節(jié)教學(xué)進(jìn)度:正常教學(xué)目標(biāo):1、了解cookies的作用及現(xiàn)實(shí)應(yīng)用;2、學(xué)會(huì)結(jié)合cookies語(yǔ)句編寫(xiě)應(yīng)用小程序。教學(xué)重點(diǎn):cookies數(shù)據(jù)集合的應(yīng)用教學(xué)難點(diǎn):應(yīng)用程序的編寫(xiě)教學(xué)過(guò)程:新課知識(shí)點(diǎn):1、Cookies的設(shè)置你可以在IE的"工具/Internet選項(xiàng)"的"常規(guī)"選項(xiàng)卡中,選擇"設(shè)置/查看文件",查看所有保存到你電腦里的Cookies。這些文件通常是以u(píng)ser@domain格式命名的,user是你的本地用戶(hù)名,domain是所訪問(wèn)的網(wǎng)站的域名。如果你使用NetsCape瀏覽器,則存放在"C:/PROGRAMFILES/NETS-CAPE/USERS/"里面,與IE不同的是,NETSCAPE是使用一個(gè)Cookie文件記錄所有網(wǎng)站的Cookies。request對(duì)象——其cookies集合用來(lái)取得用戶(hù)的相關(guān)信息。response對(duì)象——其cookies集合負(fù)責(zé)將數(shù)據(jù)設(shè)置到瀏覽器。案例分析:什么是Cookie?Cookie其實(shí)是一個(gè)標(biāo)簽,經(jīng)常可能聽(tīng)到的中文翻譯:小舔餅。當(dāng)你訪問(wèn)一個(gè)需要唯一標(biāo)識(shí)你的站址的WEB站點(diǎn)時(shí),它會(huì)在你的硬盤(pán)上留下一個(gè)標(biāo)記,下一次你訪問(wèn)同一個(gè)站點(diǎn)時(shí),站點(diǎn)的頁(yè)面會(huì)查找這個(gè)標(biāo)記。??每個(gè)WEB站點(diǎn)都有自己的標(biāo)記,標(biāo)記的內(nèi)容可以隨時(shí)讀取,但只能由該站點(diǎn)的頁(yè)面完成。每個(gè)站點(diǎn)的Cookie與其他所有站點(diǎn)的Cookie存在同一文件夾中的不同文件內(nèi)(你可以在win98的Windows目錄下的Cookie文件夾中找到它們,而win2k則在?DocumentsandSettings文件夾下特定用戶(hù)的cookies文件夾中)。??一個(gè)Cookie就是一個(gè)唯一標(biāo)識(shí)客戶(hù)的標(biāo)記,Cookie可以包含在一個(gè)對(duì)話期或幾個(gè)對(duì)話期之間某個(gè)WEB站點(diǎn)的所有頁(yè)面共享的信息,使用Cookie還可以在頁(yè)面之間交換信息。這項(xiàng)功能經(jīng)常被使用在要求認(rèn)證客戶(hù)密碼以及電子公告板、WEB聊天室等ASP程序中。??盡管現(xiàn)在聽(tīng)起來(lái)cookie沒(méi)有什么激動(dòng)人心的,但實(shí)際上利用它,你能實(shí)現(xiàn)許多有意義的功能!比如說(shuō):你可以在站點(diǎn)上放置一個(gè)調(diào)查問(wèn)答表,詢(xún)問(wèn)訪問(wèn)者最喜歡的顏色和字體,然后根據(jù)這些定制用戶(hù)的web界面。并且,你還可以保存訪問(wèn)者的登錄密碼,這樣,當(dāng)訪問(wèn)者再次訪問(wèn)這個(gè)站點(diǎn)時(shí),不用再輸入密碼進(jìn)行登錄。??當(dāng)然,cookie也有一些不足。首先,由于利用cookie的功能可以編程實(shí)現(xiàn)一些不良企圖,所以大多數(shù)的瀏覽器中都有安全設(shè)定,其中可以設(shè)置是否允許或者接受cookie(IE瀏覽器中“工具”--“Internet選項(xiàng)...”--“安全”--“自定義級(jí)別”--“Cookie的使用”;Netscape瀏覽器中“工具”--“Cookie管理器”--“管理貯存的Cookie”即可),因此這就不能保證隨時(shí)能使用cookie。再者,訪問(wèn)者可能有意或者無(wú)意地刪除cookie。當(dāng)訪問(wèn)者的機(jī)器遇到“藍(lán)屏”死機(jī)時(shí),或者重新格式化硬盤(pán)、安裝系統(tǒng)后,原來(lái)保存的cookie將全部丟失。最后一點(diǎn),有一些最初始的瀏覽器并不能支持cookie。◆怎樣利用cooklie?有2種使用cookie的基本方式:1、將cookie寫(xiě)入訪問(wèn)者的計(jì)算機(jī)(使用Response命令)2、從訪問(wèn)者的計(jì)算機(jī)中取回cookie(使用Request命令)◆創(chuàng)建cookie的基本語(yǔ)法:Response.Cookies(cookie)[(key)|.attribute]=value這里的cookie是指定cookie的名稱(chēng)。而如果指定了key,則該cookie就是一個(gè)字典。(測(cè)試一cookie是否為一個(gè)字典可用后面代碼顯示布爾值:<%=Request.Cookies("cookiename").HasKeys%>。為true是字典,false則不是。)Attribute指定cookie自身的有關(guān)信息。Attribute參數(shù)可以是下列之一:?①Domain?若被指定,則cookie將被發(fā)送到對(duì)該域的請(qǐng)求中去。域?qū)傩员砻鱟ookie由哪個(gè)網(wǎng)站產(chǎn)生或者讀取,默認(rèn)情況下,cookie的域?qū)傩栽O(shè)置為產(chǎn)生它的網(wǎng)站,但你也可以根據(jù)需要改變它。(Response.Cookies("CookieName").Domain=?"")?②Path為一路徑屬性,該屬性可以實(shí)現(xiàn)更多的安全要求,通過(guò)設(shè)置網(wǎng)站上精確的路徑,就能限制cookie的使用范圍。如果未設(shè)置該屬性,則使用應(yīng)用程序的路徑。(Response.Cookies("CookieName").Path=?"/maindir/subdir/path")?③Expires指定cookie的過(guò)期日期。為了在會(huì)話結(jié)束后將?cookie存儲(chǔ)在客戶(hù)端磁盤(pán)上,或在許多時(shí)候,我們希望能更長(zhǎng)時(shí)間地在訪問(wèn)者的計(jì)算機(jī)上保存cookie。必須設(shè)置該日期。若此項(xiàng)屬性的設(shè)置未超過(guò)當(dāng)前日期,則在任務(wù)結(jié)束后cookie將到期。??后面的代碼,就可以設(shè)置cookie的使用到期時(shí)間為“2010年1月1日”:Response.Cookies("CookieName").Expires=#January01,2010#??后面的代碼,將設(shè)定cookie的過(guò)期時(shí)間為“cookie的創(chuàng)建時(shí)間+365天”:Response.Cookies("CookieName").Expires=Date+365??但最好不要隨便寫(xiě)Response.Cookies("CookieName").Expires=Date,這樣頁(yè)面之間的調(diào)用時(shí)值會(huì)為空。執(zhí)行下面的代碼將會(huì)在訪問(wèn)者的計(jì)算機(jī)中創(chuàng)建一個(gè)cookie,名字=VisitorName,值=Ken:Response.Cookies("VisitorName")="Ken"執(zhí)行下面的代碼將會(huì)在訪問(wèn)者的計(jì)算機(jī)中創(chuàng)建一個(gè)cookie,名字=VisitorName,值=表單中UserName的值Response.Cookies("VisitorName")=Request.Form("UserName")你可以擴(kuò)展下面的代碼成為Cookie子關(guān)鍵值(CookieSubName),即cookie字典的生成。代碼如下:Response.Cookies("VisitorName")("FirstName")="Ken"Response.Cookies("VisitorName")("LastName")="Baumbach"◆讀取cookie的基本語(yǔ)法:Request.Cookies(cookie)[(key)|.attribute]cookie指定要檢索其值的cookie。key可選參數(shù),用于從cookie字典中檢索子關(guān)鍵字的值。attribe指定cookie自身的有關(guān)信息。如:HasKeys只讀,指定cookie是否包含關(guān)鍵字。??如果客戶(hù)端瀏覽器發(fā)送了兩個(gè)同名的cookie,那么Request.Cookie將返回其中路徑結(jié)構(gòu)較深的一個(gè)。例如,如果有兩個(gè)同名的的?cookie,但其中一個(gè)的路徑屬性為/www/而另一個(gè)為/www/home/,客戶(hù)端瀏覽器同時(shí)將兩個(gè)cookie都發(fā)送到?/www/home/目錄中,那么Request.Cookie將只返回第二個(gè)cookie?!鬾um.asp(通過(guò)留在本地磁盤(pán)上的cookie記錄一年內(nèi)訪問(wèn)本站的次數(shù),第一次顯示“首次訪問(wèn)”,以后顯示“第幾次訪問(wèn)”)<%dimnumnum=request.cookies("visitnum")ifnum>"0"thennum=num+1Response.write"您已是第"&num&"次訪問(wèn)本站點(diǎn)了。"elseResponse.write"歡迎您首次訪問(wèn)本站。"num=1endifresponse.cookies("visitnum")=numresponse.cookies("visitnum").expires=date+365%>◆showcookie.asp(從Cookies文件夾中遍歷出瀏覽器所有的Cookiename,以及相關(guān)的字典Cookie的顯示(藍(lán)字顯示))<%ForeachcookieinRequest.CookiesifRequest.cookies(cookie).HasKeys=falsethenResponse.writecookie&"="&Request.Cookies(cookie)Response.write("")ElseforeachkeyinRequest.Cookies(cookie)Response.write("<fontcolor=blue>")Response.writecookie&".("&key&")"&"="&Request.Cookies(cookie)(key)Response.write("</font>")nextendifnext%>◆check.asp'首先,設(shè)置頁(yè)面。然后,檢查表單變量(在同一個(gè)頁(yè)面中)。如果表單變量存在,就創(chuàng)建cookie,并設(shè)置到期時(shí)間。<%@LANGUAGE="VBSCRIPT"%><%bgcolor=Request.Form("bgcolor")fgcolor=Request.Form("fgcolor")pwd=Request.form("pwd")Ifbgcolor<>""orfgcolor<>""thenResponse.cookies("check")("bgcolor")=bgcolorResponse.Cookies("check")("fgcolor")=fgcolorResponse.Cookies("check")("pwd")=pwdResponse.Cookies("check").Expires=#may01,2004#Endif'接著,讀取cookiebgcolor=request.cookies("check")("bgcolor")fgcolor=request.cookies("check")("fgcolor")pwd=request.cookies("check")("pwd")'如果cookie在訪問(wèn)者的計(jì)算機(jī)上不存在,就創(chuàng)建一個(gè)表單,詢(xún)問(wèn)相關(guān)信息Ifbgcolor=""andfgcolor=""andpwd=""then%><HTML><HEAD></HEAD><body><DIVALIGN="CENTER"><Formaction="check.asp"method="POST">Bgcolor:<inputtype="text"name="bgcolor"><BR>Fgcolor:<inputtype="text"name="fgcolor"><BR>Password:<inputtype="password"name="pwd"><BR>??<inputtype="submit"value="Submit"></Form></DIV></BODY><%Endif'如果cookie已經(jīng)存在,并且bgcolor存在,就跳轉(zhuǎn)到color.asp。Ifbgcolor<>""thenResponse.Redirect"color.asp"Endif%>◆color.asp(顯示用戶(hù)愛(ài)好顏色的頁(yè)面特性)<%bgcolor=request.cookies("check")("bgcolor")fgcolor=request.cookies("check")("fgcolor")pwd=request.cookies("check")("pwd")%><%response.write("<bodybgcolor="&bgcolor&"><fontcolor="&fgcolor&">")%>你的密碼是:<%response.write(""&pwd&"")%>
調(diào)查系統(tǒng)教學(xué)時(shí)間:第十二周教學(xué)課時(shí):4節(jié)教學(xué)進(jìn)度:正常教學(xué)目標(biāo):1、理解調(diào)查系統(tǒng)的重要性;2、熟練表單控件的使用;3、SQL語(yǔ)句的學(xué)習(xí)4、結(jié)合調(diào)查系統(tǒng)的制作,熟練掌握系統(tǒng)設(shè)計(jì)的流程。教學(xué)重點(diǎn):SQL語(yǔ)句的學(xué)習(xí)教學(xué)難點(diǎn):記錄集高級(jí)模式的設(shè)置教學(xué)過(guò)程:新課知識(shí)點(diǎn):網(wǎng)上調(diào)查是企業(yè)實(shí)施市場(chǎng)策略的重要手段之一。通過(guò)開(kāi)展行業(yè)問(wèn)卷調(diào)查,可以迅速了解社會(huì)不同層次、不同行業(yè)人員的需求,客觀地收集需求信息,調(diào)查產(chǎn)品策略與營(yíng)銷(xiāo)策略,滿(mǎn)足不同的需求以促進(jìn)公司產(chǎn)品銷(xiāo)售,同時(shí)使企業(yè)擁有了更多的長(zhǎng)期用戶(hù)。這種系統(tǒng)具有運(yùn)行穩(wěn)定,操作簡(jiǎn)單和調(diào)查的問(wèn)題不受限制、實(shí)時(shí)顯示和易統(tǒng)計(jì)等的優(yōu)點(diǎn)。今天所要學(xué)習(xí)的簡(jiǎn)單調(diào)查系統(tǒng)就是用于了解與某一產(chǎn)品、某一事件相關(guān)的情況,一般是針對(duì)一件事的幾種選擇來(lái)作的評(píng)判及看法的統(tǒng)計(jì)。一、需求分析與設(shè)計(jì)思路常見(jiàn)的調(diào)查系統(tǒng)由兩個(gè)功能模塊組成(如下圖所示):一個(gè)是提供輸入個(gè)人信息的調(diào)查信息頁(yè)面,此頁(yè)面需要被調(diào)查對(duì)象填寫(xiě)內(nèi)容;另一個(gè)是顯示調(diào)查結(jié)果的頁(yè)面,該頁(yè)面主要用于統(tǒng)計(jì)共有多少人參加了調(diào)查,并且記錄每個(gè)被調(diào)查的對(duì)象的個(gè)人信息。調(diào)查系統(tǒng)調(diào)查信息頁(yè)面(xinxi.asp)調(diào)查結(jié)果頁(yè)面(jieguo.asp)二、設(shè)計(jì)數(shù)據(jù)庫(kù)數(shù)據(jù)庫(kù)的設(shè)計(jì)非常關(guān)鍵。用戶(hù)填寫(xiě)的個(gè)人信息是以記錄的形式保存在一個(gè)數(shù)據(jù)庫(kù)表中的,由于zau調(diào)查系統(tǒng)中需要將個(gè)人信息分為姓名和性別等類(lèi)別,所以相應(yīng)的每一類(lèi)信息在數(shù)據(jù)庫(kù)表中也對(duì)應(yīng)著一個(gè)字段。設(shè)計(jì)一個(gè)名為diaocha的數(shù)據(jù)庫(kù),該數(shù)據(jù)庫(kù)中包含一張名為diaocha的表,表中含有以下字段:字段名數(shù)據(jù)類(lèi)型說(shuō)明name(主鍵)文本姓名sex是/否性別age數(shù)字年齡lujing數(shù)字路徑fchh是/否非常好hao是/否好yiban是/否一般buhao是/否不好調(diào)查數(shù)據(jù)庫(kù)表的字段三、創(chuàng)建數(shù)據(jù)庫(kù)的連接1、創(chuàng)建數(shù)據(jù)庫(kù)連接前,需要用戶(hù)定義一個(gè)本地站點(diǎn)。如圖所示:2、定義系統(tǒng)DSN、建立系統(tǒng)DSN連接:(1)打開(kāi)數(shù)據(jù)庫(kù)面板,并選擇“數(shù)據(jù)源名稱(chēng)(DSN)”(2)在“數(shù)據(jù)源名稱(chēng)(DSN)”中單擊“定義”->“系統(tǒng)DSN”選項(xiàng)卡(3)創(chuàng)建新數(shù)據(jù)源后,單擊“完成”(4)文本框中輸入“diaocha”,并選擇數(shù)據(jù)庫(kù)所在路徑,確定(5)新數(shù)據(jù)庫(kù)文件已添加,確定(6)在“連接名稱(chēng)”中輸入“l(fā)iuyan”,在“數(shù)據(jù)源名稱(chēng)”下拉框中選“l(fā)iuyan”。(7)連接成功后的“數(shù)據(jù)庫(kù)”面板四、具體頁(yè)面制作詳見(jiàn)課本P112~P128。五、SQL語(yǔ)句運(yùn)用數(shù)據(jù)集可以對(duì)數(shù)據(jù)庫(kù)完成簡(jiǎn)單的查詢(xún),但是當(dāng)查詢(xún)條件復(fù)雜的時(shí)候,就需要使用SQL語(yǔ)句了。SQL語(yǔ)句回顧:SELECT使用格式一(簡(jiǎn)單查詢(xún))(1)SELECT[Distinct][TOPn]字段名列表FROM數(shù)據(jù)表名功能:從數(shù)據(jù)表中選出指定字段的數(shù)據(jù)。說(shuō)明:1、如果指定多個(gè)字段名,在字段名之間用逗號(hào)(,)分隔;如果指定表中的所有字段,可以用*表示。2、TOPn表示只選出前n條數(shù)據(jù),n必須為一個(gè)正整數(shù)。3、關(guān)鍵詞DISTINCT用于返回唯一不同的值。SELECT語(yǔ)句會(huì)從表的列中返回信息。但是假如我們僅僅希望獲取唯一不同的元素呢?通過(guò)SQL,我們所要做到所有事情就是向SELECT語(yǔ)句添加DISTINCT關(guān)鍵詞:SELECT語(yǔ)句使用格式二(條件查詢(xún))(2)SELECT[Distinct][TOPn]字段名列表FROM數(shù)據(jù)表名WHERE條件功能:從數(shù)據(jù)表中選出滿(mǎn)足條件的指定字段的數(shù)據(jù)。說(shuō)明:1、條件就是指ACCESS中講到的查詢(xún)準(zhǔn)則。2、單個(gè)條件一般格式是:字段名關(guān)系運(yùn)算符表達(dá)式3、多條件時(shí)各條件之間用邏輯運(yùn)算符連接,即條件1邏輯運(yùn)算符條件24、關(guān)系運(yùn)算符有:>、<、>=、<=、=、<>、like、in5、邏輯運(yùn)算符有:not、and、or例:根據(jù)下圖所給的數(shù)據(jù)表,按照?qǐng)D下的條件寫(xiě)出語(yǔ)句:(數(shù)據(jù)庫(kù)下載)1.選擇所有學(xué)生記錄的字段2.選擇所有記錄的姓名和郵箱字段3.選擇姓名為“高明華”的所有記錄4.選擇使用163信箱的所有記錄5.選擇年齡最小的5個(gè)記錄六、通過(guò)SQL語(yǔ)言讀取數(shù)據(jù)庫(kù)信息1.修改student數(shù)據(jù)庫(kù),把表名改為"stu",字段名分別改成字母表示。<%@LANGUAGE="VBSCRIPT"CODEPAGE="936"%><!DOCTYPEhtmlPUBLIC"-//W3C//DTDXHTML1.0Transitional//EN""/TR/xhtml1/DTD/xhtml1-transitional.dtd">2.創(chuàng)建數(shù)據(jù)庫(kù)連接:<%dimconnconn="driver={MicrosoftAccessDriver(*.mdb)};dbq="&Server.MapPath("student.mdb")setbb=server.CreateObject("adodb.connection")bb.openconn%><htmlxmlns="/1999/xhtml"><head><metahttp-equiv="Content-Type"content="text/html;charset=gb2312"/><title>讀取部分信息</title></head>3.打開(kāi)記錄集<%setrs=server.CreateObject("adodb.recordset")rs.open"select*fromstu",bb,1,1%>4.讀取并顯示所有記錄<body><%ifrs.eofandrs.bofthenresponse.Write("暫時(shí)還沒(méi)有學(xué)生記錄")elsefori=1to3response.Write("學(xué)號(hào):"&rs("no"))response.Write("<br>姓名:"&rs("name"))response.Write("<br>性別:"&rs("sex"))response.Write("<br>生日:"&rs("birth"))response.Write("<br>地址:"&rs("addr"))response.Write("<br>電話:"&rs("tel"))response.Write("<br>郵箱:"&rs("email"))response.Write("<hr>")'每條記錄輸出完畢后顯示一條水平線rs.movenextnextendif%>5.關(guān)閉數(shù)據(jù)庫(kù)并斷開(kāi)連接<%rs.close'關(guān)閉數(shù)據(jù)庫(kù)setbb=nothing'斷開(kāi)連接%></body></html>
注冊(cè)登陸系統(tǒng)教學(xué)時(shí)間:第十三周教學(xué)課時(shí):4節(jié)教學(xué)進(jìn)度:正常教學(xué)目標(biāo):1、了解制作注冊(cè)登錄系統(tǒng)的流程;2、掌握檢查表單行為的添加;3、掌握用戶(hù)登陸行為的設(shè)置;4、掌握檢查新用戶(hù)名行為的設(shè)置。教學(xué)重點(diǎn):系統(tǒng)需求分析及服務(wù)器行為的設(shè)置,教學(xué)難點(diǎn):系統(tǒng)需求分析教學(xué)過(guò)程:新課知識(shí)點(diǎn):注冊(cè)帳號(hào)與密碼是網(wǎng)站確認(rèn)用戶(hù)身份的標(biāo)記。當(dāng)用戶(hù)注冊(cè)完帳號(hào)后,才能以自己的名義在該網(wǎng)站上發(fā)布信息。進(jìn)入大部分商業(yè)網(wǎng)站都需要進(jìn)行注冊(cè),如果不注冊(cè),則網(wǎng)站管理系統(tǒng)將不允許用戶(hù)在其網(wǎng)頁(yè)上發(fā)布信息,或者不能使用全部功能。本周,我們將一起來(lái)學(xué)習(xí)如何搭建注冊(cè)系統(tǒng)。【素材下載】一、需求分析與設(shè)計(jì)思路當(dāng)用戶(hù)訪問(wèn)系統(tǒng)時(shí),首先需要進(jìn)行身份驗(yàn)證,這個(gè)功能需要通過(guò)會(huì)員登陸系統(tǒng)的頁(yè)面來(lái)實(shí)現(xiàn)。如果輸入的用戶(hù)名和密碼與數(shù)據(jù)庫(kù)中已有的用戶(hù)名和密碼相匹配,則登陸成功并進(jìn)入登陸成功頁(yè)面(dlcg.asp)。如果輸入的用戶(hù)名和密碼與數(shù)據(jù)庫(kù)中已有的用戶(hù)名和密碼不匹配,則登陸失敗并進(jìn)入登陸失敗頁(yè)面(dlsb.asp)。相同的,需要有會(huì)員身份,則需要一個(gè)使用該系統(tǒng)的身份/帳號(hào),詳細(xì)見(jiàn)下圖。注冊(cè)登錄系統(tǒng)用戶(hù)注冊(cè)頁(yè)面(yhzc.asp)用戶(hù)登錄頁(yè)面(yhdl.asp)注冊(cè)成功頁(yè)面(zccg.asp)注冊(cè)失敗頁(yè)面(zcsb.asp)登錄成功頁(yè)面(dlcg.asp)登陸失敗頁(yè)面(dlsb.asp)二、設(shè)計(jì)數(shù)據(jù)庫(kù)及創(chuàng)建數(shù)據(jù)庫(kù)連接三、具體頁(yè)面設(shè)計(jì)大多數(shù)情況與前面的系統(tǒng)類(lèi)似,關(guān)鍵在于下面幾點(diǎn):【注冊(cè)頁(yè)面】1、驗(yàn)證表單當(dāng)作是需要自己添加一段代碼,用于驗(yàn)證密碼是否有誤。2、添加服務(wù)器行為,用于檢查新注冊(cè)的用戶(hù)有沒(méi)有和已經(jīng)注冊(cè)在數(shù)據(jù)庫(kù)中的用戶(hù)名重復(fù),若檢查到相同項(xiàng),則跳轉(zhuǎn)到注冊(cè)失敗頁(yè)面。步驟如下:?jiǎn)螕簟胺?wù)器行為”面板中的+按鈕,依次選擇“用戶(hù)身份驗(yàn)證”,“檢查新用戶(hù)”選項(xiàng)“檢查新用戶(hù)名”對(duì)話框“檢查新用戶(hù)名”選項(xiàng)【登錄頁(yè)面】3、在“服務(wù)器行為”面板的“用戶(hù)身份驗(yàn)證”選項(xiàng)中,還有另一個(gè)“登錄用戶(hù)”的功能。通過(guò)此選項(xiàng)的設(shè)置,可以自動(dòng)添加用戶(hù)是否成功登錄的代碼段。步驟如圖:?jiǎn)螕簟胺?wù)器行為”面板中的+按鈕,依次選擇“用戶(hù)身份驗(yàn)證”,“用戶(hù)登錄”選項(xiàng)“登錄用戶(hù)”對(duì)話框【其他頁(yè)面】4、其他頁(yè)面均為靜態(tài)頁(yè)面,由于界面一樣,因此大家可以將網(wǎng)頁(yè)另存為一個(gè)模版文件,以便制作其他網(wǎng)頁(yè)時(shí)使用。知識(shí)補(bǔ)充:1、完成下面頁(yè)面的制作。【演示】【數(shù)據(jù)庫(kù)下載】并觀察數(shù)據(jù)庫(kù)中圖片字段的數(shù)據(jù)類(lèi)型及值。2、代碼提示:圖一:連接數(shù)據(jù)庫(kù)和打開(kāi)查詢(xún)對(duì)象(記錄集):圖二:顯示圖片,并為其添加超鏈接,通過(guò)傳遞編號(hào)(id)來(lái)篩選數(shù)據(jù)。圖三:如果系統(tǒng)中有多個(gè)頁(yè)面需要與數(shù)據(jù)庫(kù)連接,則可以將圖一中1~7行代碼封裝到conn.asp文件中,并用下圖第一行代碼來(lái)進(jìn)行頁(yè)面加載。
聊天室教學(xué)時(shí)間:第十四周教學(xué)課時(shí):4節(jié)教學(xué)進(jìn)度:正常教學(xué)目標(biāo):1、掌握聊天室的制作流程;2、掌握框架集的設(shè)計(jì)制作;3、掌握記錄集的綁定中篩選條件的設(shè)置;4、掌握隱藏域的使用5、理解和掌握代碼的編寫(xiě)。教學(xué)重點(diǎn):掌握應(yīng)用程序的添加教學(xué)難點(diǎn):代碼的編寫(xiě)教學(xué)過(guò)程:新課知識(shí)點(diǎn):一、開(kāi)發(fā)背景如何與別人更好地交流,是當(dāng)前人們普遍關(guān)心的問(wèn)題。人們通過(guò)網(wǎng)站可以展示產(chǎn)品,發(fā)布最新動(dòng)態(tài),與用戶(hù)進(jìn)行交流和溝通,與合作伙伴建立聯(lián)系,以及開(kāi)展電子商務(wù)等。其中網(wǎng)上聊天系統(tǒng)是構(gòu)成網(wǎng)站的一個(gè)重要組成部分,為人們之間進(jìn)行交流和聯(lián)系提供的一個(gè)平臺(tái)。目前,聊天室已成為各網(wǎng)站提供的一個(gè)標(biāo)準(zhǔn)服務(wù),是吸引網(wǎng)民和提高人氣的一種重要方式。二、需求分析與設(shè)計(jì)思路1.聊天室總體設(shè)計(jì)如下圖:2.會(huì)員登錄頁(yè)面(denglu.asp)中輸入用戶(hù)名和密碼后,便可以進(jìn)入聊天室的主頁(yè)面了。3.在線用戶(hù)統(tǒng)計(jì)頁(yè)面(online.asp)主要用來(lái)顯示使用聊天室的用戶(hù)名,可使每個(gè)用戶(hù)知道自己的與誰(shuí)聊天4.用戶(hù)的用戶(hù)發(fā)言頁(yè)面(chatform.asp)提交發(fā)言時(shí),則會(huì)由顯示發(fā)言頁(yè)面(main.asp)顯示出來(lái)。5.聊天室主頁(yè)面是一個(gè)框架頁(yè)面,主要由三個(gè)框架頁(yè)組成,包括在線用戶(hù)統(tǒng)計(jì)頁(yè)面、用戶(hù)發(fā)言頁(yè)面、顯示發(fā)言頁(yè)面。三、創(chuàng)建數(shù)據(jù)庫(kù)1.因?yàn)榱奶焓业挠脩?hù)都是在線用戶(hù),所以必須設(shè)計(jì)兩個(gè)數(shù)據(jù)庫(kù)表。第一個(gè)表作為用戶(hù)信息表,它記錄了用戶(hù)的基本信息;第二個(gè)表作為聊天記錄表,記錄了此聊天室的所有聊天記錄。2.注意登陸時(shí)間和說(shuō)話時(shí)間的默認(rèn)值設(shè)置。3.Isonline字段用于表示用戶(hù)是否在線,字段類(lèi)型為是/否,即true/false。四、具體頁(yè)面設(shè)計(jì)1.會(huì)員登錄頁(yè)面:設(shè)置“登錄用戶(hù)”的服務(wù)器行為,在相應(yīng)位置輸入以下代碼:MM_rsUser.CloseMM_editQuery=""MM_editConnection=MM_liaotian_STRINGMM_editQuery="updateliaotiansetisonline=1whereuserid='"&Session("MM_Username")&"'"SetMM_editCmd=Server.CreateObject("ADODB.Command")MM_editCmd.ActiveConnection=MM_editConnectionMM_editCmd.CommandText=MM_editQueryMM_editCmd.ExecuteMM_editCmd.ActiveConnection.Close2.聊天室主頁(yè)面:①框架集的設(shè)計(jì):詳見(jiàn)P208~P209②階段變量的添加:3.在線用戶(hù)統(tǒng)計(jì)頁(yè)面:①建立記錄集Rs1,注意數(shù)據(jù)庫(kù)表格的選擇,篩選條件的設(shè)置。②添加動(dòng)態(tài)數(shù)據(jù):總記錄數(shù)。③在相應(yīng)的位置輸入以下代碼:<%If(Rs1_total=-1)ThenRs1_total=0While(NotRs1.EOF)Rs1_total=Rs1_total+1Rs1.MoveNextWendIf(Rs1.CursorType>0)ThenRs1.MoveFirstElseRs1.RequeryEndIfIf(Rs1_numRows<0OrRs1_numRows>Rs1_total)ThenRs1_numRows=Rs1_totalEndIfRs1_first=1Rs1_last=Rs1_first+Rs1_numRows-1If(Rs1_first>Rs1_total)ThenRs1_first=Rs1_totalEndIfIf(Rs1_last>Rs1_total)ThenRs1_last=Rs1_totalEndIfEndIf%>④為在線的用戶(hù)名添加“重復(fù)區(qū)域”的服務(wù)器行為4.用戶(hù)發(fā)言頁(yè)面①添加插入記錄集Rs1的行為。②創(chuàng)建動(dòng)態(tài)列表的服務(wù)器行為:③添加插入記錄集Rs2的行為,添加SQL語(yǔ)句,下圖紅框中的SQL語(yǔ)句是用來(lái)查詢(xún)num最大記錄的num編號(hào)。④插入隱藏域,設(shè)置好名稱(chēng)和值:上圖中的代碼表示:在num的值上加1,則將其作為插入記錄的新num值。⑤類(lèi)似第④步插入隱藏域puttime,值為<%=now()%>,表示獲得當(dāng)前的時(shí)間。⑥插入隱藏域,將其與Session選項(xiàng)中的MMussername字段綁定。⑦添加“插入記錄”服務(wù)器行為。⑧在相應(yīng)的位置輸入以下代碼:<metahttp-equiv="refresh"content="10;URL=chatform.asp">這些代碼表示每一秒鐘刷新一次。由于聊天時(shí)輸入的記錄會(huì)很多,因此必須從數(shù)據(jù)庫(kù)中獲得最新的num號(hào),以隨時(shí)刷新頁(yè)面。5.顯示發(fā)言頁(yè)面①添加插入記錄集Rs4的行為,添加SQL語(yǔ)句,下圖紅框中的SQL語(yǔ)句是用來(lái)查詢(xún)num最大的50條記錄,即最新的50條聊天記錄。②將sayto、saycontent、puttime三個(gè)字段綁定到相應(yīng)的位置。③添加“重復(fù)區(qū)域”服務(wù)器行為。
搜索系統(tǒng)教學(xué)時(shí)間:第十五周教學(xué)課時(shí):4節(jié)教學(xué)進(jìn)度:正常教學(xué)目標(biāo):1、掌握搜索系統(tǒng)的制作流程;2、掌握通過(guò)編寫(xiě)SQL語(yǔ)言來(lái)查詢(xún)數(shù)據(jù)庫(kù)的方法;3、掌握記錄集中篩選條件的設(shè)置;4、A3考試分析。教學(xué)重點(diǎn):查詢(xún)記錄集的創(chuàng)建教學(xué)難點(diǎn):查詢(xún)語(yǔ)言的編寫(xiě)教學(xué)過(guò)程:出現(xiàn)問(wèn)題:1、頁(yè)面之間的關(guān)系不熟悉,導(dǎo)致插入記錄或是用戶(hù)登錄后頁(yè)面跳轉(zhuǎn)錯(cuò)誤;2、檢查表單、重復(fù)區(qū)域的范圍選定不準(zhǔn)確;3、記錄集中數(shù)據(jù)列選擇概念模糊,綁定插入沒(méi)有一一對(duì)應(yīng);4、更新頁(yè)面中文本控件內(nèi)無(wú)數(shù)據(jù),且內(nèi)容控件應(yīng)為文本區(qū)域,而不是文本字段。新課知識(shí)點(diǎn)一、搜索系統(tǒng)開(kāi)發(fā)背景隨著互聯(lián)網(wǎng)的高速發(fā)展,網(wǎng)上的信息量已經(jīng)極其龐大。假如你擁有一個(gè)龐大的網(wǎng)站,內(nèi)容又多,那么來(lái)訪者往往很難找到自己所需要的信息,這時(shí)候你就需要一個(gè)站內(nèi)搜索來(lái)幫助來(lái)訪者更快的找到索要的資料了!現(xiàn)在你就可以用asp輕易的實(shí)現(xiàn)這種功能,何況現(xiàn)在支持asp的站點(diǎn)這么多,利用這個(gè)搜索引擎可以搜索到你的主頁(yè)里面任何一個(gè)文件或者軟件資料,它的出現(xiàn)大大地方便用戶(hù)對(duì)資源進(jìn)行定位與查找。二、需求分析與設(shè)計(jì)思路1.總體設(shè)計(jì)如下圖:2.用戶(hù)在搜索系統(tǒng)首頁(yè)的表單文本域中輸入需要查詢(xún)的關(guān)鍵字,然后單擊“查詢(xún)”按鈕提交表彰,搜索結(jié)果便可以顯示在文檔中。三、創(chuàng)建數(shù)據(jù)庫(kù)(略)四、具體頁(yè)面設(shè)計(jì)(素材下載)1.搜索頁(yè)面:關(guān)鍵是表單的添加和設(shè)置。2.按名稱(chēng)搜索結(jié)果頁(yè)面:①記錄集的添加:注意下圖中篩選條件的設(shè)定。大家可以按“高級(jí)”按鈕,查看SQL語(yǔ)句,并學(xué)會(huì)分析每一行的含義。②綁定記錄集內(nèi)容:③為新插入的四條記錄集內(nèi)容設(shè)置“重復(fù)區(qū)域”,來(lái)顯示多條查詢(xún)結(jié)果。注意必須選中該行,若無(wú)法選中,可以點(diǎn)選對(duì)應(yīng)的<tr>標(biāo)簽,或者可以在代碼區(qū)域中選擇對(duì)應(yīng)的代碼段,但需要注意的是,必須選在<tr>和</tr>外。3.按價(jià)格搜索結(jié)果頁(yè)面:①建立記錄集shangp,注意數(shù)據(jù)庫(kù)表格的選擇,篩選條件的設(shè)置。切換到高級(jí)模式后,將變量中的“默認(rèn)值”設(shè)置為0。②選中表格中shangp.jiage字段,在其綁定面板中進(jìn)行如下設(shè)置:知識(shí)拓展:1、網(wǎng)站中搜索引擎的制作(一),首先利用Access建立一個(gè)名為list.mdb的數(shù)據(jù)庫(kù),在里面建立一個(gè)名為list的表,然后在list表里面輸入一些你想要被查詢(xún)的文件名字,關(guān)鍵的搜索詞還有相對(duì)應(yīng)的鏈接,下面建立了四個(gè)項(xiàng)目ID(編號(hào)),title(主題),Word(關(guān)鍵詞),url(鏈接地址),如下表所示:IDtitlewordurl1cgi教程本地調(diào)試cgicgi/testcgi.htm2下載中心聊天室,留言本download/index.htm(二),建立了數(shù)據(jù)庫(kù)以后就可以建立你的asp搜索頁(yè)面了,下面是一個(gè)文件名為search.htm的asp搜索頁(yè)面的源程序,這個(gè)搜索引擎可以同時(shí)搜索title和word里面的內(nèi)容,當(dāng)然如果你有需要的話可以建立更多的搜索:<!--#INCLUDEfile="ADOVBS.inc"--><%"建立數(shù)據(jù)庫(kù)的連接con="DBQ="+server.mappath("list.mdb")+";DefaultDir=;DIRVER={microsoftAccessDriver(*.mdb)};""建立CONNECTION對(duì)象并打開(kāi)數(shù)據(jù)庫(kù)setmycon=server.createobject("ADODB.CONNECTION")mycon.open.con%>"創(chuàng)建Recordset對(duì)象的例程,打開(kāi)Recordset對(duì)象傳遞SQL串以及所有的連接信息<%setrs=server.createobject("ADODB.Recordset")rs.open"SELECT*FORMlistwheretitleandwordlike'%'&request.form("word")&"%'",MyCon,adOpenStatie%>"建立查詢(xún)后的顯示信息和查詢(xún)頁(yè)面,你想取什么名字都可以<Html><head><title>查詢(xún)結(jié)果</title></head><bodybgcolor="#ffffff"><palign="center"><br>"統(tǒng)計(jì)查詢(xún)共有<%Response.Write(RS.RecordCount)%>條紀(jì)錄</p><br><divalign="center"><center><tableborder="1"align="center"bordercolor="000000"berdorcoorlight="#000000"bordercolordark="#ffffff"><tralign="center"><tdwidth="20%"align="center"bgcolor="#ffffff">ID</td><tdwidth="60%"align="center"bgcolor="#ffffff">主題</td><tdwidth="20%"align="center"bgcolor="#ffffff">查看</td></table><tableborder="1"align="center"bordercolor="000000"berdorcoorlight="#000000"bordercolordark="#ffffff"><tralign="center"><!--從數(shù)據(jù)庫(kù)提取信息--><%whilenotrs.eof%><tralign="center"><tdwidth="20%"align="center"bgcolor="#ffffff"><%=rs("id")%></td><tdwidth="60%"align="center"bgcolor="#ffffff"><%=rs("title")%></td><tdwidth="20%"align="center"bgcolor="#ffffff"><ahref="<%=rs("url")%>">GO</a></td><%rs.movenext%></tr><%wend%></table></center></div><%rs.close%><%mycon.close%>"關(guān)閉鏈接</body></html>下面我們來(lái)建立搜索頁(yè)面<html><head><title>搜索頁(yè)面</title></head><!--創(chuàng)建搜索表格--><frommetho
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 建筑渣土污染防治方案(3篇)
- 2025-2026年人教版(2024)生物學(xué)第一輪復(fù)習(xí):生物圈的人能力提高綜合強(qiáng)化練習(xí) 1(含解析)
- 水泥安全生產(chǎn)監(jiān)管方案(3篇)
- 2025年西班牙語(yǔ)DELEYN級(jí)寫(xiě)作沖刺試卷:藝術(shù)鑒賞與評(píng)價(jià)
- 教育行業(yè)如何利用大數(shù)據(jù)提升學(xué)生個(gè)性化學(xué)習(xí)體驗(yàn)
- 探索國(guó)際合作對(duì)教育基金的推動(dòng)作用
- 探索教育技術(shù)在特殊教育領(lǐng)域的應(yīng)用
- 教育技術(shù)與兒童智力開(kāi)發(fā)的探討
- 2025年桐鄉(xiāng)社區(qū)專(zhuān)職工作人員招聘真題
- 2024年成都市公安局溫江區(qū)分局招聘警務(wù)輔助人員真題
- 對(duì)新員工保密基本培訓(xùn)
- 2025屆湖北省部分學(xué)校新高三新起點(diǎn)暑期效果聯(lián)合質(zhì)量檢測(cè)數(shù)學(xué)試卷(解析版)
- GB/T 6553-2024嚴(yán)酷環(huán)境條件下使用的電氣絕緣材料評(píng)定耐電痕化和蝕損的試驗(yàn)方法
- 2024年蘇教版四年級(jí)數(shù)學(xué)上冊(cè)全冊(cè)教案
- 2024新科普版英語(yǔ)七年級(jí)上單詞默寫(xiě)表
- 金融行業(yè)高質(zhì)量發(fā)展專(zhuān)題研究報(bào)告
- 2024年首屆全國(guó)“紅旗杯”班組長(zhǎng)大賽考試題庫(kù)(單選、多選、判斷題)
- 知識(shí)題庫(kù)-人社練兵比武競(jìng)賽測(cè)試題及答案(五)
- 五年級(jí)上冊(cè)科學(xué)青島版全冊(cè)教案
- 出入境證件承諾書(shū)
- 合理膳食 均衡營(yíng)養(yǎng)課件
評(píng)論
0/150
提交評(píng)論