Download presentation
Presentation is loading. Please wait.
Published byはるまさ とくやす Modified 6年之前
1
彰化縣政府補助辦理網頁設計資料庫應用班 基礎VBScript介紹 建國技術學院資管系 饒瑞佶
2
VBScript 構成ASP程式的基本語法 鑲嵌在HTML標籤之中(不分大小寫),需用
<SCRIPT LANGUAGE=“VBScript”> VB Script語法 </SCRIPT> 加以標示 Visual Basic的簡化版,多用於互動網頁設計上 嵌入HTML標籤中 在HTML標籤外 獨立存在
3
VBScript HTML標籤 VBScript HTML標籤 <HTML>
<HEAD><TITLE>第一個簡單的網頁</TITLE> <SCRIPT LANGUAGE="VBScript"> <!-- Sub Button1_OnClick MsgBox “第一個vbscript網頁" End Sub --> </SCRIPT> </HEAD> <BODY> <H3>第一個簡單的網頁</H3><HR> <FORM><INPUT NAME="Button1" TYPE="BUTTON" VALUE="請按這裡"></FORM> </BODY> </HTML> VBScript HTML標籤
4
設計流程 一般而言: 1. 美工人員先設計版面 2. 交由ASP程式設計人員嵌入程式 會不會有什麼問題?一定是這樣嗎?
5
變數與常數 X=123 X=456 此時x是123 此時x變成456 X會隨著程式執行而改變,所以稱為“變數”
123與456不會隨著程式執行而改變,稱為“常數”
6
基本敘述介紹 指定敘述 X=1 X=X+1 把等號右邊的值或計算結果指定到左邊
7
符號與保留字 符號:如+,-,*,/,% ….等 保留字: VBScript內部所定義,使用變數時 不可使用此些保留字,如 time
(TEXTBOOK P.95) 保留字補充
8
基本敘述介紹 內建函數 配合指定敘述來使用 X=TIME X裡面便存放著現在的時間 TEXTBOOK 附錄A
9
ASP的特點 使用VBScript或Jscript等簡易的Script,結合HTML碼,可快速建構動態網站 不需編譯,完全整合於HTML碼中
使用一般文書編輯器(如記事本)就可以完成 執行結果與用戶端(Client)使用的瀏覽器無關 程式碼不會由用戶端外流 可以透過與ActiveX元件的結合來擴展其功能 檔案需以.asp為副檔名 需要使用<% %>包住程式碼
10
基本輸出與輸入 ASP的輸出(給瀏覽器,不是螢幕) Response.write 參數 (將資料顯示到使用者視窗)
配合HTML碼與VBScript可以有很多變化 ASP的輸入 使用瀏覽器的網址輸入,配合request收集資料 Echo.asp textbook p.109 使用表單輸入 留待後續介紹(textbook 第六章)
11
基本輸出與輸入 echo.asp <HTML>
<HEAD><TITLE>輸出輸入練習</TITLE></HEAD> <BODY BgColor="#FFFFFF"> <Center><H2> <% data1 = Request("Name") data2 = Request("Love") Response.Write data1 Response.Write " 歡迎您,您喜歡的電腦學科是 " Response.Write data2 %> <HR></H2></Center> </BODY> </HTML>
12
輸出與輸入練習 Textbook p.111 練習
13
VBScript資料型態 變數 位元組變數 整數變數 長整數變數 單精確度變數 數值變數 倍精確度變數 貨幣變數 固定長度字串變數 字串變數
變動長度字串變數 字串變數 布林變數 日期變數 物件變數 自由型態變數
14
資料表示法 數值資料 : 2005, +123, -123, 3.1415 字串資料 : 使用雙引號“ ”括起來,“123”,“建國”
字串資料 : 使用雙引號“ ”括起來,“123”,“建國” 日期時間資料 :使用# #括起來,#9:30#,#2003/9/26# 布林資料:True (0以外的任何數值)或False(0) 資料表示法補充
15
資料的運算 算數運算: +, -, *, /, \, mod, ^….等(針對數值資料) 串接運算: 使用+與&符號(針對字串資料)
邏輯運算:AND, OR, NOT (真值表)
16
基本語法 IF IF敘述讓你能夠做邏輯的判別。 IF判別的兩種邏輯,True為真,其數值不為零;False為錯、失效,其數值為零。
If NOT True 為 False(NOT把True變成False,把False變成True) 我們在日常生活裡,若要表示 X > -4 且 X < 12 時,會把他寫成 -4 < X < 12 ,然而這種邏輯式在VB裡是錯誤的因此我們要把他改寫成 -4 < X AND X < 12 才正確。
17
IF的用法(1)當邏輯運算為真,執行Then後的敘述
Ex: A = 10 B = 5 IF A > B Then response.write "A > B" Tmp = "小瓜瓜" TmB = "小呆呆" IF Tmp = TmB Then response.write "兩字串相等" 數字 字串
18
基本語法 IF (2) IF的用法(2)當邏輯運算為真,執行Then後的敘述,若邏輯運算為錯,執行Else後的敘述
Ex: A = 10 B = 5 IF A > B Then response.write "A > B" Else response.write "A <= B" Tmp = "小瓜瓜" TmB = “小呆呆” IF Tmp = TmB Then response.write "兩字串相等" Else response.write "兩字串不相同"
19
基本語法 IF (3) IF的用法(3)與(2)相同功能 IF 邏輯運算式 Then 你的演算法1 你的演算法2 {為真時的程式碼區域}
你的演算法N Else 你的演算法2 {為錯時的程式碼區域} End IF Ex02Ans.asp Textbook p.124
20
基本語法 Select Select與IF兩個雖然都是提供你條件選擇的功用但兩者仍然不一樣 IF提供的是邏輯上的運算選擇,
Select Case 變數名稱 Case 條件1 你的演算法1 Case 條件2, 條件3 你的演算法2 Case 條件4 To 條件5 你的演算法3 ...... Case Else 你的演算法N End Select
21
基本語法 Select 結果?? A = 10 Select Case A Case 0, 1, 2, 3, 4
response.write "A 小於 5" Case 5 response.write "A 等於 5" Case 6 response.write "A 等於 6" Case Else response.write "A 大於 6" End Select 結果?? WeekBg.asp Textbook p.131
22
基本語法 For 大量有規則性的資料要做處理時,我們要把程式碼逐一的打出十分的不符合經濟效益,因此程式語言中會有重覆式的架構敘述來讓使用者簡化程式設計 For ... Next 便是VBScript重覆式架構中的敘述之一 用法是: For 變數 = 起始值 To 最終值 Step 間隔值 你的程式碼 Next [變數] Next [變數]這一行〝[變數]〞表示變數可以寫出或省略
23
基本語法 For 若想要計算1+2+3,使用For Next該怎麼寫? For N = 1 To 3 M yVal = MyVal + N
Response.write MyVal MyVal = MyVal + 1 MyVal = MyVal + 2 MyVal = MyVal + 3 Response.write MyVal
24
蜂巢式迴圈 For N = 1 To 2 ‘第一層 MyVal = MyVal + N For M = 1 To 3 ‘第二層
MyVal = MyVal + M Next '第二層 Next '第一層 Response.write MyVal GenSize.asp Textbook p.137
25
While … Wend While ... Wend是個無限迴圈的敘述,因此會不斷的重覆執行,所以我們要加入判斷敘述以終止這個無窮無盡的迴圈。 用法是: While 條件式 你的程式碼 Wend 若想要計算1+2+3,使用While ... Wend該怎麼寫? T=0 N=1 While N<=3 T = T + N N = N+1 response.write T Love02.asp Textbook p.143
26
Array陣列型態 集合相同屬性的變數所成的集合。
可以是二維、三維或者多維陣列,其中的元素也很自由,可以是 string、integer 或者 double,甚至是 array。 語法:陣列名稱=array(陣列元素) 陣列由第 0 個元素開始配置。 例: a(0) = 1234 a(1) = 567 a = array(1234, 567) $car0 $car1 $car2 $car3 $car4 $car(0) $car(1) $car(2) $car(3) $car(4)
27
陣列 Array X1=Array(168,350,799) X2=Array(“a”,”b”,”c”)
X3=Array(#2003/10/23#,”asp”,123) 使用註標存取陣列元素
28
建立未知元素的陣列 ReDim 陣列名稱(陣列最大標註值) 元素各數=陣列最大標註值+1 可以動態改變陣列大小
ReDim Preserve 陣列名稱 可以保留動態改變前陣列中的值 課本p.159, NameExp.asp
29
多維陣列 ReDim x(4,3) 表示有5列4行,共20筆資料 ReDim x(4,3,3) ??資料
30
副程式 將可以重複使用的程式區塊獨立而成 寫在Sub 函數名稱 副程式碼 End Sub 呼叫副程式 可以使用call或直接使用副程式的姓名
課本p.165, SubStep2.asp
31
副程式的位置 在ASP中因為是獨立的單位,所以可以放在任意位置,當然是要被<%與%>所包括
課本p.168, SubStep5.asp
32
副程式的參數 副程式名稱(參數1,參數2,參數3…) 呼叫方式 副程式名稱 參數1,參數2,參數3
呼叫方式 副程式名稱 參數1,參數2,參數3 課本p.171, 練習Sub ex.asp
33
函數 內定函數,如Time, date 自訂函數 寫在Function 函數名稱 程式碼 函數名稱=傳回值 End Function
可以有傳回值 課本p.175, 練習fun1.asp
34
變數宣告與全域,區域變數 宣告:DIM 變數名稱 影響只有函數或副程式裡的變數 建議函數或副程式內的變數都使用DIM作宣告
p.178, 範例local01.asp, local02.asp 變數是有生命的
35
變數的生命週期 Server (IIS) 變數A誕生 網頁1 區域變數 全域變數 變數A死亡 變數A誕生 網頁2 區域變數 變數A死亡
36
內建字串處理函數 Ucase/Lcase轉換大/小寫 Trim去除空白 Join簡化陣列資料的輸出 Split分割資料
Replace置換字串
37
Ucase/Lcase與Trim 執行p.159, NameExp.asp發現大小寫會影響輸出結果,可以使用Ucase/Lcase轉換大/小寫函數來解決 NameExp2.asp 執行p.159, NameExp.asp發現空白會影響輸出結果,可以使用Trim函數來解決 NameExp3.asp
38
Join 可以將陣列的所有元素串在一起 X=Join(陣列名,”串接字串”) P.184, 實例Books01.asp
39
Split Split分割字串 P.186, splitex.asp Replace取代字串 p.186, replace.asp
40
內建數值處理函數 FormatNumber資料輸出格式設定 p.188, SubTab02.asp CSng/CDbl數值轉換
Rnd亂數產生:產生0~1間的亂數 p.191, Dice1.asp
41
內建日期時間處理函數 Year, Month, Day p.194, ChDate.asp Hour, Minute, Second
p.194, ChTime.asp DateAdd:計算使用期限 p.195, Apply.asp DateDiff:計算時間差 p.196, Y2010.asp
Similar presentations