
| 資料庫下載 |
|
看過很多網址列像這樣的『亂象』嗎? http://tw.search.yahoo.com/search?fr=yfp&ei=UTF-8&p=%E5%BC%B5%E9%80%B8%E4%B8%AD 這是網頁通訊中重要的一個機制,稱為 Query String 中文翻譯為查詢字串。 分析一下: Part 1網址:http://tw.search.yahoo.com/search Part 2參數:fr=yfp,並以 ? 與網址區隔 Part 3更多參數:ei=UTF-8...每個參數以 & 區隔。 至於奇怪的亂碼%E5%BC%B5%E9%80%B8%E4%B8%AD是UTF-8編碼的結果,在此例中是老師的名字張逸中。 上例是老師到Yahoo搜尋『張逸中』關鍵字的網址列反應。本單元來看看這種參數傳遞如何幫我們搜尋資料庫。 |
|
試試看使用Yahoo網路字典時網址列的反應。 在網址列直接打入查詢字串,測試網路字典的反應。 |
|
使用查詢字串查詢資料的程式: 說明:以下是一個類似網路字典的搜尋程式,資料庫是校內一些專有名詞的中英文對照表,輸入查詢字串之後使用之前學過的 Like 搜尋機制即可調閱出需要的資料。 1.開啟新網站,下載資料庫到專案內(先看看資料庫的內容) 2.在網頁上佈置一個文字方塊、一個按鍵以及一個資料表 3.設定資料表的Where條件 ![]() 4.執行程式在網址列後面加上『?=Pro』會出現如下畫面,資料庫的英文欄有Pro的資料都會被叫出。 ![]() 5.上述方法對中文可能無效,原因是網址列不會把中文自動轉成UTF-8編碼,但是用程式就可以。 佈置一個文字盒輸入網址,以Button物件送出。範例如下: ![]() 可以讓ASP將中文轉換成應有的資料編碼格式。 試試看依此設計中文搜尋吧! |
|
建立一個可以用學號查詢姓名的網頁 先試試看輸入這個網址:http://ycc.dwu.edu.tw/j2me/?id=學號 在學號處隨便填入一個學號就可以看到姓名的回應! 作法如下: 1.下載這個資料庫 2.開啟專案,將資料庫置入 3.佈置一個GridView,設定資料來源顯示資料表M,只顯示不重複的姓名資料。 4.設定條件 ![]() 5.執行上述網也複製網址加上『?id=學號』就可以查詢了! 想想看反向的查詢,姓名→學號,網頁怎麼作? 提示一:因為中文轉碼的問題必須使用上例的按鍵程式技巧 提示二:顯然不能使用相同的GridView,同時查詢字串(QueryString)的變數名稱也不能相同了! |
|
更複雜的查詢:某同學某天的課 1.開啟新網頁 2.佈置一個文字盒用於輸入學號 3.佈置一個下拉式選單(DropDownList),手動建立選項(Items)從『一』到『五』 4.開啟另一網頁,佈置一個GridView,設定查詢字串變數,學號部份如前,週日部份如下 ![]() 5.佈置一個查詢按鍵(第一個網頁)寫程式如下: Server.Transfer("目標網頁名稱?id=" + Me.TextBox1.Text + "&cday=" + Me.DropDownList1.SelectedValue) |
|
再試試看!班級課表或教室課表如何產生? 提示一:只需提取資料項目的教室、班級、科目與時間。 提示二:須標明不可重複,不然就慘了! |