จากการศึกษาบทความสองบทความแรกฉันเชื่อว่าคุณได้รับแนวคิดพื้นฐานและความประทับใจโดยรวมของการออกแบบเว็บไซต์แบบไดนามิกของ ASP เริ่มต้นจากบทความนี้ผู้เขียนจะเริ่มต้นด้วยการใช้ภาษาสคริปต์และทำให้ทุกคนสำรวจความลึกลับที่แท้จริงของการออกแบบเว็บไซต์แบบไดนามิก ASP จากตื้นจนถึงลึก
หลังจากบทความที่สองของบทความนี้ได้รับการตีพิมพ์เพื่อนหลายคนส่งผู้หญิงมาให้ฉันหวังว่าจะได้เห็นบทที่สามสี่และแม้แต่บทแรกของบทความนี้โดยเร็วที่สุด บทความ ASP การได้เห็นเพื่อนที่มีใจเดียวกันมากมายได้เพิ่มวิญญาณของฉันอย่างมาก แม้ว่า ASP จะเปิดตัวเมื่อสองปีก่อน แต่ก็ไม่ได้จนกว่าจะถึงปีนี้ที่ได้รับความสนใจจากคนจีนสำหรับกระบวนการพัฒนาที่ยืดหยุ่นและสะดวกสบายและฟังก์ชั่นการเชื่อมต่อฐานข้อมูลเว็บที่ดี มันยังขาดในประเทศจีน เป็นเพราะสิ่งนี้ผู้เขียนได้รับแรงบันดาลใจในการเขียนบทความ
ผู้เขียนอย่างจริงใจหวังที่จะให้ความสะดวกสบายสำหรับนักพัฒนาเว็บและผู้ที่ชื่นชอบผ่านบทความนี้เพื่อให้ทุกคนสามารถมีส่วนร่วมในการเรียนรู้และการสื่อสารของ ASP การเตรียมภาษาสคริปต์และจากนั้นเราจะอธิบายวัตถุในตัว ASP ส่วนประกอบ ActiveX และตัวอย่างของการใช้ ASP เพื่อพัฒนาเว็บแอปพลิเคชันทีละขั้นตอน เว็บไซต์ในเวลาน้อยกว่าสองสามเดือน ก่อนอื่นให้ฉันเรียนรู้ความรู้พื้นฐานเกี่ยวกับการใช้ภาษาสคริปต์ (ส่วนใหญ่ VBScript) ใน ASP
ก่อนที่คุณจะเริ่มเรียนรู้ภาษาสคริปต์คุณควรเข้าใจแนวคิดง่ายๆบางอย่าง - ตัวแปรกระบวนการ ตัวแปรที่เรียกว่าเป็นตำแหน่งที่เก็บข้อมูลที่มีชื่อในหน่วยความจำคอมพิวเตอร์ซึ่งมีข้อมูลเช่นตัวเลขหรือสตริง โปรแกรมประกอบด้วยกระบวนการอย่างน้อยหนึ่งกระบวนการ
ใน VBScript การพูดอย่างเคร่งครัดตัวแปรไม่จำเป็นต้องประกาศ
ตัวอย่างเช่น: < % myString = นี่คือสตริงของฉัน %>
อย่างไรก็ตามแม้ว่าคุณไม่จำเป็นต้องประกาศตัวแปรก่อนที่จะใช้งานคุณควรพัฒนานิสัยที่ดีในการประกาศตัวแปรเมื่อการเขียนโปรแกรมเนื่องจากจะช่วยป้องกันข้อผิดพลาด การประกาศตัวแปรหมายถึงการบอกเอ็นจิ้นสคริปต์ว่ามีตัวแปรที่มีชื่อเฉพาะเพื่อให้สามารถอ้างอิงตัวแปรในสคริปต์ การประกาศตัวแปรใน VBScript สามารถใช้คำสั่ง DIM ได้ดังนี้:
<ภาษาสคริปต์ = vbscript>
-
ตัวเลือกที่ชัดเจน 'ต้องการให้ประกาศตัวแปรทั้งหมดในสคริปต์
หรี่
myString = นี่คือสตริงของฉัน
-
</script>
ขอบเขตของตัวแปรคือระยะเวลาชีวิตซึ่งกำหนดว่าคำสั่งสคริปต์ใดที่สามารถเข้าถึงตัวแปร ตัวแปรที่ประกาศภายในกระบวนการมีขอบเขตท้องถิ่น ทุกครั้งที่กระบวนการถูกดำเนินการตัวแปรจะถูกสร้างขึ้นแล้วเสียชีวิต และไม่มีคำสั่งนอกกระบวนการสามารถเข้าถึงได้ ตัวแปรที่ประกาศออกไปนอกกระบวนการมีขอบเขตทั่วโลกและสามารถเข้าถึงและแก้ไขค่าของพวกเขาได้โดยคำสั่งสคริปต์ใด ๆ ในหน้า ASP เมื่อประกาศตัวแปรตัวแปรท้องถิ่นและตัวแปรทั่วโลกสามารถมีชื่อเดียวกันได้ การเปลี่ยนค่าใดค่าหนึ่งไม่ได้เปลี่ยนค่าอื่น หากไม่มีการประกาศตัวแปรอาจเปลี่ยนค่าของตัวแปรทั่วโลกโดยไม่ตั้งใจ ตัวอย่างเช่นคำสั่งสคริปต์ต่อไปนี้ส่งคืนค่า 1 แม้ว่าจะมีตัวแปรสองตัวชื่อ Y:
-
dim yy = 1call setlocalvariableresponse.write y
Sub Setlocalvariable
สลัว y
y = 2end sub %>
เนื่องจากตัวแปรไม่ได้ประกาศอย่างชัดเจนคำสั่งสคริปต์ต่อไปนี้จะส่งคืน 2 เมื่อการโทรขั้นตอนตั้งค่า y เป็น 2 เอ็นจิ้นสคริปต์จะพิจารณาว่าขั้นตอนคือการปรับเปลี่ยนตัวแปรส่วนกลาง:
-
y = 1CALL SETLOCALVARIALERSESPONSE.WRITE Y
Sub Setlocalvariable
y = 2
สิ้นสุด sub%>
อย่างไรก็ตามตัวแปรทั่วโลกมีอยู่ในหน้า ASP เดียวเท่านั้นและเพื่อให้สามารถใช้งานได้นอกหน้า ASP เดียวคุณต้องกำหนดเซสชันหรือขอบเขตแอปพลิเคชันให้กับตัวแปร ตัวแปรขอบเขตเซสชันมีให้สำหรับทุกหน้าในแอปพลิเคชัน ASP ที่ผู้ใช้ร้องขอ เช่นเดียวกับตัวแปรขอบเขตแอปพลิเคชัน สำหรับผู้ใช้รายเดียวตัวแปรเซสชันเป็นวิธีที่ดีที่สุดในการจัดเก็บข้อมูลเช่นการตั้งค่าผู้ใช้ชื่อผู้ใช้หรือการระบุผู้ใช้ สำหรับผู้ใช้ทุกคนในแอปพลิเคชันพิเศษขอบเขตแอปพลิเคชันเป็นวิธีที่ดีที่สุดในการจัดเก็บข้อมูลเช่นคำทักทายเฉพาะแอปพลิเคชันหรือค่าเริ่มต้นที่แอปพลิเคชันต้องการ ASP จัดเตรียมวัตถุในตัวสองวัตถุเพื่อให้คุณจัดเก็บตัวแปร: วัตถุเซสชันและวัตถุแอปพลิเคชันซึ่งจะถูกกล่าวถึงในวัตถุในตัว ASP ในอนาคต
ลองดูคำจำกัดความของค่าคงที่ซึ่งใช้แทนตัวเลขหรือชื่อสตริงและยังคงไม่เปลี่ยนแปลงตลอดสคริปต์ คุณสามารถใช้คำสั่ง const เพื่อสร้างค่าคงที่ที่ผู้ใช้กำหนดใน VBScript ใช้คำสั่ง const เพื่อสร้างสตริงหรือค่าคงที่ตัวเลขที่มีความหมายบางอย่างและกำหนดค่าดั้งเดิม ตัวอย่างเช่น:.
ตัวอย่างเช่น: < % const mystring = นี่เป็นค่าคงที่ %>
< % const myage = 100 %>
โปรดทราบว่าตัวอักษรสตริงมีอยู่ระหว่างสองคำพูด () นี่เป็นวิธีที่ชัดเจนที่สุดในการแยกแยะความแตกต่างระหว่างค่าคงที่ประเภทสตริงและค่าคงที่ตัวเลข ข้อความวันที่และข้อความเวลาอยู่ระหว่างสัญญาณสองปอนด์ (#) ตัวอย่างเช่น:
< % const cutoffdate = # 6-1-97 # %>
หลังจากทำความเข้าใจค่าคงที่และตัวแปรลองมาดูกันว่ากระบวนการคืออะไร มันเป็นชุดของคำสั่งสคริปต์ที่สามารถเรียกใช้งานที่ระบุและมีค่าส่งคืน คุณสามารถกำหนดขั้นตอนของคุณเองแล้วเรียกพวกเขาซ้ำ ๆ ในสคริปต์ คุณสามารถวางนิยามกระบวนการในไฟล์. asp ที่เรียกกระบวนการหรือคุณสามารถวางขั้นตอนทั่วไปในไฟล์. asp ที่ใช้ร่วมกันและรวมไว้ในไฟล์. ASP อื่น ๆ ที่เรียกขั้นตอนด้วย SSI #include Directive คุณยังสามารถเลือกวิธีอื่นในการจัดทำคุณสมบัติเหล่านี้ในส่วนประกอบ ActiveX คำจำกัดความของกระบวนการสามารถปรากฏขึ้นภายในแท็ก <script> และ <script> และต้องปฏิบัติตามกฎที่ประกาศภาษาสคริปต์ หากภาษาที่ใช้โดยขั้นตอนนั้นแตกต่างจากภาษาสคริปต์หลักให้ใช้องค์ประกอบ <script> ขั้นตอนในภาษาสคริปต์หลักจะถูกคั่นด้วยตัวคั่นสคริปต์ (< % และ %>) เมื่อติดแท็กด้วย HTML <script> ต้องใช้คุณสมบัติสองคุณสมบัติเพื่อให้แน่ใจว่าฝั่งเซิร์ฟเวอร์สามารถจัดการสคริปต์ได้ ไวยากรณ์ของการใช้แท็ก <Script> มีดังนี้:
<script runat = ภาษาเซิร์ฟเวอร์ = jscript>
คำจำกัดความขั้นตอน
</script>
คุณสมบัติ runat = เซิร์ฟเวอร์ที่นี่จะแจ้งให้เว็บเซิร์ฟเวอร์ประมวลผลสคริปต์บนเซิร์ฟเวอร์ หากคุณสมบัตินี้ไม่ได้ตั้งค่าสคริปต์จะถูกประมวลผลโดยเบราว์เซอร์ไคลเอนต์ คุณสมบัติภาษากำหนดภาษาสคริปต์ที่ใช้โดยบล็อกสคริปต์นี้ คุณสามารถระบุภาษาใด ๆ ด้วยเอ็นจิ้นสคริปต์ โปรดใช้ VBScript เพื่อระบุ VBScript; หากคุณสมบัติภาษาไม่ได้ตั้งค่าบล็อกสคริปต์จะถูกตีความในภาษาสคริปต์หลัก
ใน VBScript กระบวนการแบ่งออกเป็นสองประเภท: กระบวนการย่อยและกระบวนการฟังก์ชั่น ขั้นตอนย่อยคือชุดของคำสั่ง VBScript ที่มีอยู่ระหว่างคำสั่งย่อยย่อยและปลายทางการดำเนินการดำเนินการ แต่ไม่ส่งคืนค่า ขั้นตอนย่อยสามารถใช้พารามิเตอร์ (ค่าคงที่ตัวแปรหรือนิพจน์ที่ส่งผ่านโดยขั้นตอนการโทร) หากขั้นตอนย่อยไม่มีพารามิเตอร์ใด ๆ คำสั่งย่อยจะต้องมีวงเล็บว่างเปล่า ()
ขั้นตอนฟังก์ชั่นเป็นชุดของคำสั่ง VBScript ที่รวมอยู่ระหว่างฟังก์ชันและคำสั่งฟังก์ชันสิ้นสุด กระบวนการฟังก์ชั่นคล้ายกับกระบวนการย่อย แต่กระบวนการฟังก์ชั่นสามารถส่งคืนค่าได้ ขั้นตอนฟังก์ชันสามารถใช้พารามิเตอร์ (ค่าคงที่ตัวแปรหรือนิพจน์ที่ส่งผ่านโดยขั้นตอนการโทร) หากขั้นตอนฟังก์ชันไม่มีพารามิเตอร์คำสั่งฟังก์ชั่นจะต้องมีวงเล็บว่าง () ฟังก์ชั่นกระบวนการส่งคืนค่าผ่านชื่อฟังก์ชันซึ่งถูกกำหนดให้กับชื่อฟังก์ชันในคำสั่งของกระบวนการ ฟังก์ชั่นประเภทข้อมูลของค่าส่งคืนจะเป็นตัวแปรเสมอ ในตัวอย่างต่อไปนี้ขั้นตอนย่อยใช้ฟังก์ชั่น VBScript สองฟังก์ชั่น (หรือในตัว) คือ MSGBox และ InputBox เพื่อแจ้งข้อมูลผู้ใช้ ผลลัพธ์ที่คำนวณจากข้อมูลนี้จะปรากฏขึ้น การคำนวณทำได้โดยกระบวนการฟังก์ชั่นที่สร้างขึ้นโดยใช้ VBScript และฟังก์ชั่นเซลเซียสแปลงฟาเรนไฮต์เป็นเซลเซียส ขั้นตอนย่อย ConvertTemp เมื่อฟังก์ชั่นนี้เรียกว่าตัวแปรที่มีค่าพารามิเตอร์จะถูกส่งผ่านไปยังฟังก์ชัน ผลการแปลงจะถูกส่งกลับไปยังกระบวนการโทรและแสดงในกล่องข้อความ
Sub ConvertTemp ()
temp = inputbox (โปรดป้อนอุณหภูมิฟาเรนไฮต์ 1)
msgbox อุณหภูมิคือ & celsius (temp) และองศาเซลเซียส
สิ้นสุดย่อย
ฟังก์ชั่นเซลเซียส (fdegrees)
Celsius = (fdegrees - 32) *
5/9
ฟังก์ชันสิ้นสุด
วิธีการส่งผ่านข้อมูลไปยังกระบวนการคือการใช้พารามิเตอร์ พารามิเตอร์ถูกใช้เป็นตัวยึดสำหรับข้อมูลที่จะส่งผ่านไปยังกระบวนการ ชื่อพารามิเตอร์สามารถเป็นชื่อตัวแปรที่ถูกต้องใด ๆ เมื่อสร้างกระบวนการโดยใช้คำสั่งย่อยหรือคำสั่งฟังก์ชั่นชื่อกระบวนการจะต้องตามด้วยวงเล็บ พารามิเตอร์ทั้งหมดรวมอยู่ในวงเล็บคั่นด้วยเครื่องหมายจุลภาค ตัวอย่างเช่นในตัวอย่างต่อไปนี้ Fdegrees เป็นตัวยึดตำแหน่งสำหรับค่าที่ส่งผ่านไปยังฟังก์ชันของ Celsius:
ฟังก์ชั่นเซลเซียส (fdegrees)
Celsius = (fdegrees - 32) * 5/9
ฟังก์ชันสิ้นสุด
ในการรับข้อมูลจากกระบวนการต้องใช้ขั้นตอนฟังก์ชัน โปรดจำไว้ว่ากระบวนการฟังก์ชั่นสามารถส่งคืนค่า
ข้างต้นแนะนำ VBScript ให้คุณสั้น ๆ อย่างไรก็ตามเนื่องจาก ASP ไม่ใช่ภาษาการเขียนโปรแกรมในกระบวนการเขียนแอปพลิเคชัน ASP เราต้องใช้ภาษาสคริปต์เพื่อใช้งานฟังก์ชั่นพิเศษมากมาย . ไม่ว่าคุณจะเป็นอาจารย์ที่มีประสบการณ์การเขียนโปรแกรมอย่างกว้างขวางหรือผู้เริ่มต้นตราบใดที่คุณต้องการเขียนเว็บแอปพลิเคชันผ่าน ASP ผู้เขียนขอแนะนำให้คุณใช้ภาษาสคริปต์อย่างน้อยหนึ่งภาษา (เช่น VBScript) ในตอนท้ายของบทความนี้ผู้เขียนจะทำการบ้านหลังเลิกเรียนสำหรับทุกคน
การมอบหมายหลังเลิกเรียน:
ผู้เขียนใช้ ASP เพื่อสร้างระบบ BBS บนเว็บ เนื่องจากวัตถุและส่วนประกอบในตัวของ ASP นั้นไม่ได้ให้ฟังก์ชั่นนี้ผู้เขียนจึงขอให้คุณเริ่มต้นด้วย VBScript เพื่อออกแบบฟังก์ชั่นดังกล่าว หากคุณมีคำถามใด ๆ โปรดถามผู้เขียนอีเมลและคำตอบจะประกาศในบทความถัดไป คอยติดตาม