首先,建立
數據庫:
一、在我的文檔下面新建一個(gè)文件夾,起名為“研究所”。當然你也可以在其他地方新建,起其他名字。
二、打開(kāi)acess,新建一
數據庫db1,建立兩張表 leibie 和 tushu ,表與表之間的聯(lián)系字段為“類(lèi)別名稱(chēng)”。
表leibie結構為兩個(gè)字段:
?。?)類(lèi)別號,文本類(lèi)型,字段長(cháng)度為6位,必填字段,不允許輸入空白字符串;
?。?)類(lèi)別名稱(chēng),文本類(lèi)型,字段長(cháng)度為20位,必填字段,不允許輸入空白字符串。
表tushu結構為九個(gè)字段:
?。?)編號,文本類(lèi)型,字段長(cháng)度為6位;
?。?)書(shū)名,文本類(lèi)型,字段長(cháng)度為60位,必填字段,不允許輸入空白字符串。
?。?)作者,文本類(lèi)型,字段長(cháng)度為50位;
?。?)出版者,文本類(lèi)型,字段長(cháng)度為60位;
?。?)版次,文本類(lèi)型,字段長(cháng)度為15位;
?。?)單價(jià),貨幣類(lèi)型,允許小數位數2位,默認值為0元;
?。?)類(lèi)別名稱(chēng),文本類(lèi)型,字段長(cháng)度為20位,必填字段,不允許輸入空白字符串。
?。?)是否借出,文本類(lèi)型,字段長(cháng)度為4位,必填字段,不允許輸入空白字符串,默認值為 No 。
?。?)備注,備注類(lèi)型。
三、根據表結構輸入各項數據。
其次,設置站點(diǎn)及連接
數據庫:
?。?)設置站點(diǎn)。打開(kāi)dw ,選擇 site 菜單下的 new site ,彈出設置站點(diǎn)面板,站點(diǎn)名輸入研究所,目錄就是我們剛才建立的目錄,如圖1,Testing Server選項中的Server Model選擇Asp VBScript,Access選擇Local/Network。
圖1
?。?)新建一網(wǎng)頁(yè),因為查詢(xún)是動(dòng)態(tài)頁(yè)面,因此在彈出的面板中選擇Dynamic page和Asp VBScript,如圖2。按create按鈕回到頁(yè)面。
圖2
?。?)連接數據庫。展開(kāi)右邊的Application 面板,選擇Databases標簽,按"+"按鈕,選擇Data Source Name (DSN),如圖3。
圖3
?。?)在彈出的Data Source Name (DSN)面板上(如圖4)選擇define...按鈕進(jìn)入ODBC數據源管理器,選擇系統DSN標簽,點(diǎn)擊添加按鈕,選擇"Driver do Microsoft Access(*.mdb)"數據驅動(dòng)程序,點(diǎn)擊完成按鈕。
圖4
?。?)在隨后的面板上選擇數據庫路徑(就是我們剛才建立的目錄),選中db1,數據源名輸入db1,如圖5。
圖5
?。?)單擊確定按鈕,返回ODBC數據源管理器面板。再單擊確定按鈕,返回Data Source Name (DSN)面板。點(diǎn)擊test按鈕,如果彈出如圖6的成功面板,就表明一切ok,
數據庫已經(jīng)連接好了,右邊Application面板的Databases標簽就會(huì )相應的出現我們新建的數據源db1。
圖6
現在準備工作一切就緒,可以建立動(dòng)態(tài)查詢(xún)網(wǎng)頁(yè)了。
一、建立主頁(yè)。主頁(yè)很簡(jiǎn)單,就是建立兩個(gè)查詢(xún)鏈接,“按圖書(shū)類(lèi)別查詢(xún)”鏈接到chaxun.asp,“按圖書(shū)名稱(chēng)查詢(xún)”鏈接到chaxun1.asp,這兩個(gè)網(wǎng)頁(yè)就是我們下面要建立的查詢(xún)網(wǎng)頁(yè)。主頁(yè)因不需要動(dòng)態(tài)編程,可存為htm格式,文件保存到研究所目錄下,取名為index,具體如圖7。
圖7
二、建立按圖書(shū)類(lèi)別查詢(xún)網(wǎng)頁(yè)。
1、新建一動(dòng)態(tài)網(wǎng)頁(yè),取名chaxun.asp。
2、建立記錄集。選擇右邊的Application面板中的Bindings標簽,按加號按鈕,選擇Recordset(Query),如圖8,彈出Recordset對話(huà)框,里面的設置如圖9,Name就取默認值 Recordset1,Connection選擇我們剛剛建立的連接db1,因為顯示的是圖書(shū)類(lèi)別,因此Table選擇表leibie。
圖8
圖9
3、設置完畢后,點(diǎn)擊test按鈕,大家可以看到leibie表的內容全顯示出來(lái)了。點(diǎn)擊OK回到頁(yè)面,這時(shí)我們可以看到Binding標簽下方顯示出我們剛剛建立的名為Recordset1的查詢(xún)。
4、輸入網(wǎng)頁(yè)上靜態(tài)顯示的內容,如圖10,其中“返回”鏈接到主頁(yè)index.htm 。
圖10
5、點(diǎn)擊Binding標簽下方Recordset1旁邊的"+"號,展開(kāi)字段,用鼠標按住“類(lèi)別名稱(chēng)”字段不放,直接拖到頁(yè)面上的單元格中,松開(kāi)鼠標, 這樣單元格就包含了一個(gè)動(dòng)態(tài)文本,頁(yè)面效果如圖11。
圖11
只是現在這個(gè)單元格還只能顯示一行(大家可以先在
瀏覽器里看一看是不是這樣的顯示效果),那么如何才能將所有的字段內容顯示出來(lái)呢?
6、選中表格,再選擇右邊的Application面板中的Server Behaviors標簽,按加號按鈕,選擇Repeat Region(循環(huán)區域),這樣就可以控制一頁(yè)顯示多少記錄了。在這里,因為圖書(shū)類(lèi)別不多,因此在對話(huà)框中選擇All Records(顯示所有記錄),不分頁(yè)顯示了,具體如圖12。
圖12
7、運行pws,設置好路徑,用
瀏覽器打開(kāi)此網(wǎng)頁(yè),看看屏幕上是不是將
數據庫里的類(lèi)別名稱(chēng)都顯示出來(lái)了,只是現在還不能點(diǎn)擊進(jìn)去。好,下面我們就來(lái)做相應的顯示圖書(shū)的頁(yè)面。
三、制作按類(lèi)別查詢(xún)顯示的頁(yè)面
1、新建一動(dòng)態(tài)網(wǎng)頁(yè),取名xianshi.asp。
2、建立記錄集。選擇Application面板中的Bindings標簽,按加號按鈕,選擇Recordset(Query),彈出Recordset對話(huà)框,里面的設置如圖13,名字為Recordset2,
數據庫表選擇tushu,因為網(wǎng)頁(yè)顯示的圖書(shū)信息是根據前面查詢(xún)條件來(lái)顯示的,因此就需要設置一個(gè)限制條件來(lái)選擇符合條件的圖書(shū),那么這個(gè)條件是通過(guò)什么來(lái)實(shí)現傳遞和接受的呢?這就需要用到URL Parameter(URL參數)了,利用這個(gè)參數可以從查詢(xún)網(wǎng)頁(yè)傳遞查詢(xún)條件,然后在顯示網(wǎng)頁(yè)中接受這個(gè)參數來(lái)顯示符合的記錄。具體使用方法如下:
圖13
?。?)先讓我們回到查詢(xún)頁(yè)chaxun.asp。用鼠標選中表格中的字段,再選擇Application面板上Server Behaviors標簽,按加號按鈕,選擇Go To Detail Page(到細節頁(yè)),彈出Go To Detail Page對話(huà)框,具體設置如圖14。Detail Page就是我們的顯示網(wǎng)頁(yè)xianshi.asp,Pass URL Parameter文本框里輸入的就是要通過(guò)URL傳遞到細節頁(yè)中的參數名,為便于理解,我們輸入“類(lèi)別名稱(chēng)”,這個(gè)名字可要和后面顯示網(wǎng)頁(yè)里設置的參數名一樣。Recordset意為從哪個(gè)記錄集里傳遞出去的,我們選擇Recorset1,Column意思為URL參數值的來(lái)源,要與查詢(xún)網(wǎng)頁(yè)上的查詢(xún)條件一致,因此選擇“類(lèi)別名稱(chēng)”,Pass Existing Parameters這兩個(gè)選項于表單有關(guān),而在這個(gè)查詢(xún)網(wǎng)頁(yè)上并沒(méi)有用到表單,因此可以不選。點(diǎn)擊ok按鈕,大家可以看到表格中的字段已變成一個(gè)包含動(dòng)態(tài)內容的超文本連接了。
圖14
?。?)好,URL Parameter已設置,現在再回到顯示網(wǎng)頁(yè)xianshi.asp來(lái)接受這個(gè)參數。選擇Recordset(Query),彈出Recordset對話(huà)框,在Filter中設置如上圖13,意思是:查詢(xún)條件為表tushu中的字段“類(lèi)別名稱(chēng)”要等于傳遞過(guò)來(lái)的URL Parameter參數“類(lèi)別名稱(chēng)”,這樣查詢(xún)網(wǎng)頁(yè)和顯示網(wǎng)頁(yè)就聯(lián)系起來(lái)了。
?。?)點(diǎn)擊test按鈕來(lái)測試。大家可以輸入某一個(gè)類(lèi)別名稱(chēng),dw 就會(huì )顯示出相應的圖書(shū)記錄。
?。?)點(diǎn)擊ok按鈕回到頁(yè)面,至此記錄集建立好了。
3、輸入網(wǎng)頁(yè)中的靜態(tài)內容,如圖15,其中“返回”鏈接到查詢(xún)網(wǎng)頁(yè)chaxun.asp,因為有的類(lèi)別圖書(shū)比較多,因此將顯示設為分頁(yè)顯示。
圖15
4、用上面介紹的方法,將記錄集的字段分別拖到頁(yè)面上相應的位置中,如圖16。
圖16
5、選中表格中的第二行,點(diǎn)擊Application面板中的Server Behaviors標簽,按加號按鈕,選擇Repeat Region,彈出Repeat Region對話(huà)框,因為要分頁(yè)顯示,所以選擇每次顯示幾條,在這里我輸入的是10,意思為每頁(yè)顯示10條記錄,大家可以根據情況自由輸入,如圖17。點(diǎn)擊ok鍵回到頁(yè)面。
圖17
6、因為是分頁(yè)顯示,需要翻頁(yè),那么在dw里如何實(shí)現呢?很簡(jiǎn)單,大家先選中“首頁(yè)”,然后點(diǎn)擊Application面板中的Server Behaviors標簽,按加號按鈕,可以看到有一個(gè)Recordset Paging選項,將鼠標滑到這選項,顯示出下拉菜單,這些菜單的含義我想大家應該明白了吧,如圖18。選擇第一條“Move To First Record”,彈出對話(huà)框,如圖19,點(diǎn)擊ok按鈕回到頁(yè)面,這樣“首頁(yè)”的動(dòng)態(tài)鏈接就做好了,其他的“上一頁(yè)”、“下一頁(yè)”、“末頁(yè)”依次類(lèi)推,做好與其相對應的動(dòng)態(tài)鏈接。
圖18
圖19
7、那么用戶(hù)如何知道記錄已經(jīng)到最后一條,而不應再往下翻了呢?在這里,我是這樣解決的,如果記錄已到最后一條,則“下一頁(yè)”、“末頁(yè)”在頁(yè)面上自動(dòng)隱藏,同理,記錄已到第一條,則“首頁(yè)”、“上一頁(yè)”自動(dòng)隱藏。下面是具體實(shí)現方法:
?。?)大家先選中“首頁(yè)”,然后點(diǎn)擊Application面板中的Server Behaviors標簽,按加號按鈕,將鼠標滑到Show Region選項,顯示出下拉菜單,如圖20。
圖20
?。?)選擇“Show Region If Not First Record”,意思為如果不是第一條記錄則顯示,反過(guò)來(lái)就是如果是第一條記錄則不顯示,隱藏起來(lái)。
?。?)在彈出的對話(huà)框上直接點(diǎn)擊ok按鈕回到頁(yè)面,這樣“首頁(yè)”的自動(dòng)隱藏功能就做好了。
?。?)同理,做好其他幾個(gè)的自動(dòng)隱藏功能?!吧弦豁?yè)”與“首頁(yè)”一樣,選擇“Show Region If Not First Record”;“下一頁(yè)”與“末頁(yè)”一樣,選擇“Show Region If Not Last Record”。
至此,按類(lèi)別查詢(xún)顯示的頁(yè)面終于制作完成了,我們來(lái)看看具體效果。運行pws,用IE打開(kāi)chaxun.asp,點(diǎn)擊某一個(gè)類(lèi)別名稱(chēng),如“新藥 藥品”,IE就會(huì )自動(dòng)顯示出該類(lèi)別的圖書(shū),點(diǎn)擊“下一頁(yè)”,“上一頁(yè)”等等鏈接,看看IE會(huì )不會(huì )自動(dòng)翻頁(yè),具體效果如圖21、22。
圖21
圖22
四、制作根據圖書(shū)名稱(chēng)來(lái)查詢(xún)的網(wǎng)頁(yè)
1、新建一動(dòng)態(tài)網(wǎng)頁(yè),取名chaxun1.asp。
2、輸入網(wǎng)頁(yè)上靜態(tài)顯示的內容,如圖23,其中“返回”鏈接到主頁(yè)index.htm ,紅色虛線(xiàn)表明這是個(gè)表單,表單的屬性設置如圖24,意思為post(傳遞)一個(gè)表單變量名到xianshi1.asp網(wǎng)頁(yè),并執行這個(gè)網(wǎng)頁(yè),這樣查詢(xún)網(wǎng)頁(yè)和顯示網(wǎng)頁(yè)就通過(guò)變量名聯(lián)系起來(lái)了;文本框取名ts,這個(gè)名字請記住,因為這就是要通過(guò)表單傳遞的變量名,后面的顯示網(wǎng)頁(yè)還要用到。
圖23
圖24
五、制作按圖書(shū)名稱(chēng)顯示的網(wǎng)頁(yè)
1、新建一動(dòng)態(tài)網(wǎng)頁(yè),取名xianshi1.asp。
2、輸入網(wǎng)頁(yè)上靜態(tài)顯示的內容,如圖25,其中“返回”鏈接到查詢(xún)頁(yè)chaxun1.htm ,紅色虛線(xiàn)同樣表明這是個(gè)表單。
圖25
3、建立記錄集。選擇Application面板中的Bindings標簽,按加號按鈕,選擇Recordset(Query),彈出Recordset對話(huà)框,里面的設置如圖26,名字為Recordset1,
數據庫表選擇tushu,Filter過(guò)濾條件設置為表tushu中的字段“書(shū)名”要contains(包含)傳遞過(guò)來(lái)的Form Variable(表單變量)ts,這個(gè)ts變量就是查詢(xún)網(wǎng)頁(yè)chaxun1.asp里文本框的名字。點(diǎn)擊ok按鈕回到頁(yè)面。
圖26
4、將記錄集的字段分別拖到頁(yè)面上相應的位置中。
5、選中表格的第二行,點(diǎn)擊Application面板中的Server Behaviors標簽,按加號按鈕,選擇Repeat Region,彈出Repeat Region對話(huà)框,設置為全部顯示。
最終頁(yè)面效果如圖27。
圖27
至此,按圖書(shū)名稱(chēng)查詢(xún)顯示的頁(yè)面終于制作完成了,我們來(lái)看看具體效果。運行pws,用IE打開(kāi)chaxun1.asp,輸入某個(gè)名稱(chēng),如“質(zhì)量管理”,IE就會(huì )自動(dòng)顯示出所有書(shū)名含有“質(zhì)量管理”的圖書(shū),具體效果如圖28、29。
圖28