Make your own free website on Tripod.com
       
 

Web Application เบื้องต้นด้วย ASP :: VBScript ผนวก ASP
 

 

:: เนื้อหาในบทนี้ ::

1 Variable & Constant 4 Decision Structures
2 Array 5 Loop Structures
3 Operator 6 Function & Procedure

ในการทำ ASP ในบทความนี้จะใช้ VB Script ในการจัดการ โดยจะกำหนดไว้ว่า
<%@ Language = "VBScript"%> ถ้าไม่กำหนดจะเป็นค่า Default ให้เองถ้าจะเปลี่ยนเป็น Script อื่นก็แค่เปลี่ยนชื่อ Script เท่านั้น เช่น <%@ Language = "JavaScript"%>


1. Variable & Constant

1.1 การประกาศตัวแปร ใช้ได้กับทุกชนิดข้อมูล มีอยู่ 2 แบบ คือแบบที่ใช้ Dim กับไม่ใช้ Dim
- ชื่อตัวแปรต้องไม่ซ้ำกันในโปรแกรมเดียวกัน
- ชื่อต้องไม่ซ้ำกับ Keyword ของ VB Script เช่น Dim
- ความยาวต้องไม่เกิน 255 ตัว
- จะต้องเริ่มต้นด้วยตัว A-Z หรือ a-z

แบบที่ 1 Dim <ชื่อตัวแปร> // ตัวอย่างการใช้ Dim ==> Dim name, surname
แบบที่ 2 <ชื่อตัวแปร> = <ค่าตัวแปร> // ตัวอย่างการไม่ใช้ Dim ==> name = "jad", surname = 024

1.2 การประกาศค่าคงที่ เป็นการประกาศค่าที่จะใช้ตลอด Application
Const <ชื่อค่าคงที่> = <ค่าคงที่>  //ตัวอย่าง ==> Const UTCC = 6923050

1.3
การเปลี่ยนชนิดของข้อมูล

Function

Type Data Example

Result

CInt Integer CInt ("1000.1000 ") 1000
CLng Long CLng ("1000.1000 ") 1000
CSng Single CSng ("1000.1000 ") 1000.10
CDbl Double CDbl ("1000.1000 ") 1000.1000
CBool Boolean CBool ("1000=1000 ") True
CByte Byte CByte ("1000.1000 ") 1000
CDate Date CDate ("24 December 70 ") 12/24/70
Cstr String Cstr ("1000.1000 ") "1000.1000 "
ตัวอย่าง
๊UTCC = "6923050.1121"
UTCC = Cint(UTCC)
Output 6923050

Top


2. Array

2.1  การประกาศค่าแบบ Array 1 Dimension
Dim <ชื่อ Array>(จำนวนชุด Array)
//ตัวอย่าง Dim UTCC(10)  คือ Array UTCC เป็นข้อมูล 10 ชุด ตั้งแต่ 0 - 9
Dim <ชื่อ Array> (<ตำแหน่งเริ่มต้น>to<ตำแหน่งสุดท้าย>)
//ตัวอย่าง
Dim UTCC(2  to 9)  คือ Array UTCC เป็นข้อมูลตั้งแต่ข้อมูลตำแหน่งที่ 1 ถึง 8

2.2
การประกาศค่าแบบ Array n Dimension
Dim <ชื่อ Array>(จำนวนชุด Array 1, จำนวนชุด Array 2,.... จำนวนชุด Array n)
//ตัวอย่าง Dim UTCC(10, 2)  คือ Array UTCC 2 มิติ ขนาด 10 x 2 เป็นข้อมูล 20 ชุด
Dim <ชื่อ Array> (<ตำแหน่งเริ่มต้น>to<ตำแหน่งสุดท้าย> 1, <ตำแหน่งเริ่มต้น>to <ตำแหน่งสุดท้าย>2, ......<ตำแหน่งเริ่มต้น>to <ตำแหน่งสุดท้าย>n)
//ตัวอย่าง Dim UTCC(2  to 9, 1 to 10)  คือ Array UTCC 2 มิติ ขนาด 8 x 10 เป็นข้อมูล 80 ชุด

Top


3. Operator

 

Math

การบวก + 1+1 =2
การลบ - 1-1 = 0
การคูณ * 1*1 = 1
การหาร / 1/1 = 1
การหารไม่เอาเศษ \ 1/1 = 1
การหารเอาแต่เศษ Mod 1/1 = 0
การยกกำลัง ^ 1^1 = 1


Comparison

เท่ากับ = A=B
ไม่เท่ากับ <> A<>B
น้อยกว่า < A<B
มากกว่า > A>B
น้อยกว่าหรือเท่ากับ <= A<=B
มากกว่าหรือเท่ากับ >= A>=B

Logic

And A And B ทุกนิพจน์มีค่าเป็น T ผลลัพธ์เป็น True
Or A Or B ทุกนิพจน์มีค่าเป็น F ผลลัพธ์เป็น False
Xor A Xor B นิพจน์ทุกนิพจน์ที่เปรียบเทียบถ้าไม่ตรงกัน
ผลลัพธ์เป็น True
Eqv A Eqv B นิพจน์ทุกนิพจน์ที่เปรียบเทียบถ้าตรงกัน
ผลลัพธ์เป็น True
Imp A Imp B ถ้า นิพจน์ A เป็น T แล้วนิพจน์ B เป็น F 
ผลลัพธ์เป็น False เท่านั้น กรณีอื่นเป็น True
Not Not A จะเป็นค่าตรงกันข้ามของนิพจน์ เช่น นิพจน์ A เป็น T ผลลัพธ์เป็น False ถ้าเป็น F ผลลัพธ์เป็น True

String

+ เชื่อม String กับ String "UTCC"+"2000"
& เชื่อม String กับ String หรือ Numeric "UTCC" & 2000

Top


4. Decision Structures
4.1 โครงสร้างการตัดสินใจตัดสินใจโดย If - Then - Else

แบบเงือนไขเดียว If condition Then statements 
[Else
statements ] End If
ตัวอย่าง
if name="JAD" then
response.write("hello world")
else response.write("bye bye")
end if
แบบซ้อนเงือนไข If condition Then [statements
[ElseIf
condition-n Then 
[
statements]] . . .
[Else
[statements]]
End If
ตัวอย่าง
if name="JAD" then response.write("hello world") 
elseif UTCC response.write("UTCC 2000") 
else response.write("bye bye") 
end if

4.2 โครงสร้างการตัดสินใจตัดสินใจโดย Select - Case

Select Case testexpression 
[
Case expressionlist-n [statements-n]]
 . . . 
[
Case Else expressionlist-n [elsestatements-n]] 
End Select
ตัวอย่าง
JAD = "AAAA"
Select Case JAD 
Case "AAAA" response.write("กกกก") 
Case "BBBB" response.write("ขขขข") 
Case "CCCC" response.write("คคคค") 
Case Else response.write("1234") 
End Select

Top


5. Loop Structures

5.1 โครงสร้างการวนทำซ้ำตัดสินใจโดย Do - Loop
Do While <Condition>
<Statement>
 [Exit Do]
Loop
ทำซ้ำจนกว่าเงือนไขจะเป็น False แล้วจึงหยุด หรือ
ถ้าเจอ Exit Do ให้ออกจากการวน loop
ตัวอย่าง
JAD = 10
Do While JAD <= 100
     Reponse.write (JAD)
     JAD = JAD + 1
Loop

Output
จะทำการพิมพ์เลข 10 - 100
 
Do Until <Condition>
<Statement>
 [Exit Do]
Loop
ทำซ้ำจนกว่าเงือนไขจะเป็น True แล้วจึงหยุด หรือ
ถ้าเจอ Exit Do ให้ออกจากการวน loop
ตัวอย่าง
JAD = 10
Do Until JAD >100
     Reponse.write (JAD)
     JAD = JAD + 1
Loop

Output
จะทำการพิมพ์เลข 10 - 100
 
5.2 โครงสร้างการวนทำซ้ำตัดสินใจโดย For - Next
For counter = start To end
    [statements]
    [Exit For]
Next
ทำซ้ำจนกว่าเงือนไขเริ่ม Start ไปจนถึง end 
ถ้าเจอ Exit For ให้ออกจากการวน loop
For Each <ชื่อตัวแปร> In
<Array หรือ Collection>
<Statement>
Next
ทำซ้ำจนกว่าข้อมูลใน Array
หรือ Collcetion จะหมดไป
ตัวอย่าง
For counter = 1 To 10
   response.write("<font size=+" & counter &">UTCC<br>
   </font>"

Next
Output จะทำการพิมพ์ UTCC ตั้งแต่ขนาด Font Size 1- 10

Top


6. Function & Procedure

6.1  การเขียน Procedure
Sub <ชื่อ Procedure>(argument 1, 2 , ....)
<Statement>
End Sub
เวลาเรียกใช้ Procedure 
call <ชื่อ Procedure>(argument 1, 2 , ....)

 

ตัวอย่าง
<%Sub asphead (a)
response.write "Tel. UTCC " & (a)
End Sub%>

<%call asphead (6923050)%>

Output Tel. UTCC 6923050
6.2 การเขียน Function
Function <ชื่อ Function> (argument 1, 2 , ....)
<Statement>
End Function
เวลาเรียกใช้ Function 
<ชื่อ Function>(argument 1, 2 , ....)

 

ตัวอย่าง
<% Function aspsum(x,y) 
aspsum = x * y
End Function%>

ค่าผลคูณได้เท่ากับ <%aspsum (10,10)%>

Output ค่าผลคูณได้เท่ากับ 100
ระหว่าง Procedure และ Function จะมีส่วนที่เหมือนและแตกต่างดังนี้

ส่วนที่เหมือนกัน ส่วนที่ต่างกัน
1. ลดความซ้ำซ้อนของการทำงานที่ทำบ่อย 1. Function มีส่วนที่ส่งค่ากลับมาประมวลผลที่
Function แต่ Procedure ไม่มีการส่งกลับ
2. ลดการเขียน Program ซ้ำๆ 2. เวลาใช้ Procedure จะใช้คำสั่ง Call แต่ 
Function สามรถเรียกได้เลย ไม่ต้องใช้ Call

Top


 


Web Application เบื้องต้นด้วย ASP


 

 

หน้าแรก ASP คืออะไร พื้นฐาน ASP โครงสร้างภาษา Response Opject VB ผนวก ASP แนวคิด