คู่มืออ้างอิง ASP

คู่มือเร็วของ ASP จาก CodeW3C.com พิมพ์ออกมา ใส่กระเป๋าเพื่อใช้งานเรียบร้อย

ภาษาเขียนพื้นฐาน

ASP สคริปต์ถูกล้อมรอบด้วย <% และ %> และนำเสนอเนื้อหาให้แก่เบราเซอร์

<html>
<body>
<% response.write("Hello World!") %>
</body>
</html>

ภาษาปกติใน ASP คือ VBScript ถ้าต้องการใช้ภาษาสคริปต์อื่น ๆ ให้ใส่การประกาศภาษาในบริเวณด้านบนของหน้า ASP

<%@ language="javascript" %>
<html>
<body>
<%
....
%>

ฟอร์มและการบันทึกข้อมูลของผู้ใช้

Request.QueryString ใช้เก็บค่าจากฟอร์มที่มี method="get"

Request.Form ใช้เก็บค่าจากฟอร์มที่มี method="post"

Cookies ของ ASP

cookie มักถูกใช้เพื่อรับรู้ผู้ใช้ คือไฟล์เล็กที่เซิร์ฟเวอร์ฝังที่คอมพิวเตอร์ของผู้ใช้ แต่ว่าในทุกครั้งที่คอมพิวเตอร์เดียวกันที่ใช้เบราเซอร์เรียกขอหน้าเว็บเดียวกันจะส่ง cookie ไปด้วย

คำสั่ง Response.Cookies ใช้สร้าง cookie:

<%
Response.Cookies("firstname")="Alex"
Response.Cookies("firstname").Expires="May 10,2012"
%>

หมายเหตุ: คำสั่ง Response.Cookies จะต้องอยู่ก่อนแสดง <html> แทน!

"Request.Cookies" คำสั่งใช้เพื่อเอาค่า cookie มา:

<%
fname=Request.Cookies("firstname")
response.write("Firstname=" & fname)
%>

การอ้างอิงไฟล์

ผ่านคำสั่ง #include คุณสามารถใส่เนื้อหาของไฟล์ ASP ลงในไฟล์ ASP อื่นก่อนที่เซิร์ฟเวอร์จะปฏิบัติงาน #include คำสั่งใช้เพื่อสร้างฟังก์ชัน หัวเว็บ ท้ายเว็บ หรือ องค์ประกอบที่ใช้เดินทางหลายหน้า

รูปแบบการใช้งาน:

<!--#include virtual="somefile.inc"-->

หรือ

<!--#include file ="somefile.inc"-->

โปรดใช้คำถาม virtual เพื่อชี้ว่าหนทางยื่นย้อนเริ่มต้นด้วยไดเรกทอรี ถ้าไฟล์ที่ชื่อ "header.inc" ตั้งอยู่ในไดเรกทอรี virtual ที่ชื่อ /html รหัสที่ลงให้ต่อไปจะนำเข้าเนื้อหาของ "header.inc":

<!-- #include virtual ="/html/header.inc" -->

ใช้คำกำหนดความหมาย file เพื่อนำไปสู่พาทที่เป็นสายพันธุ์ พาทที่เป็นสายพันธุ์เริ่มต้นด้วยไดเรกทอรีที่มีการอ้างแบบตัวอย่างดังกล่าว ถ้าแบบตัวอย่างของคุณอยู่ในไดเรกทอรี html และแบบตัวอย่าง "header.inc" อยู่ใน html\headers รหัสด้านล่างจะทำให้ "header.inc" ถูกแทนที่ด้วยเนื้อหาของมันในแบบตัวอย่างของคุณ:

<!-- #include file ="headers\header.inc" -->

ใช้คำกำหนดความหมาย file และสyntax (..\) เพื่ออ้างแบบตัวอย่างที่อยู่ในไดเรกทอรีที่สูงกว่า

Global.asa

แบบตัวอย่าง Global.asa คือแบบตัวอย่างที่เลือกใช้ และสามารถมีของแบบตัวอย่างตัวอย่างอื่นที่สามารถถูกเข้าถึงโดยทุกหน้าของ ASP application

注释:แบบตัวอย่าง Global.asa ต้องอยู่ในส่วนบนสุดของ ASP application และแต่ละapplicationมีแบบตัวอย่าง Global.asa มีเพียงแบบตัวอย่างเดียว

แบบตัวอย่าง Global.asa สามารถมีเพียงสิ่งต่อไปนี้เท่านั้น:

  • เหตุการณ์ Application
  • เหตุการณ์ Session
  • <object> การประกาศ
  • ประกาศ TypeLibrary
  • แบบสั้น #include

เหตุการณ์ Application และ Session

ใน Global.asa คุณสามารถบอกแก่ application และ session ว่าจะทำอะไรเมื่อ application/session เริ่มขึ้น และจะทำอะไรเมื่อ application/session จบลง รหัสที่ทำงานดังกล่าวตั้งอยู่ใน event handler

注释:เมื่อใส่รหัสบางส่วนในแบบตัวอย่าง Global.asa แล้ว เราไม่ใช้ <% และ %> แต่ต้องใส่ภาษาโปรแกรมในแบบตัวอย่าง <script> ในภาษา HTML:

<script language="vbscript" runat="server">
sub Application_OnStart
  ' รหัสบางส่วน
end sub
sub Application_OnEnd
  ' รหัสบางส่วน
end sub
sub Session_OnStart
  ' รหัสบางส่วน
end sub
sub Session_OnEnd
  ' รหัสบางส่วน
end sub
</script>

<object> การประกาศ

ผ่านการใช้ <object> แบบตัวอย่างตัวอักษร ยังสามารถสร้างสิ่งที่มี session หรือ application scope ใน Global.asa ได้

注释:<object> แบบตัวอย่างตัวอักษรเรียกว่า <script> ตัวอย่างตัวอักษรต้องอยู่นอกจาก <script> แบบตัวอย่างตัวอักษร!

รูปแบบการใช้งาน:

<object runat="server" scope="scope" id="id"
{progid="progID"|classid="classID"}>
.......
</object>

ประกาศ TypeLibrary

TypeLibrary คือเครื่องหมายเก็บเนื้อหาของ DLL ไฟล์ที่เป็นตัวแทนของโอบเจกต์ COM โดยผ่านการรวมเข้าไปด้วย Global.asa สามารถเข้าถึงค่าคงที่ของโอบเจกต์ COM ได้ และโค้ด ASP ก็สามารถรายงานข้อผิดพลาดได้ดีขึ้น ถ้าโปรแกรมเว็บของคุณขึ้นอยู่กับโอบเจกต์ COM ที่ได้ประกาศแล้วในหน้า TypeLibrary คุณสามารถประกาศหน้า TypeLibrary ใน Global.asa

รูปแบบการใช้งาน:

<!--
METADATA TYPE="TypeLib"
file="filename"
uuid="typelibraryuuid"
version="versionnumber"
lcid="localeid"
-->

โอบเจกต์ Session

โอบเจกต์ Session ใช้เก็บข้อมูลเกี่ยวกับ session ของผู้ใช้หรือเปลี่ยนค่าการตั้งค่า ตัวแปรที่เก็บไว้ในโอบเจกต์ Session มีข้อมูลเกี่ยวกับผู้ใช้เดี่ยวๆ และสามารถเข้าถึงได้โดยหน้าทุกหน้าในโปรแกรม

ชุด

  • Contents - รวมทั้งหมดของรายการที่เพิ่มเข้าไปด้วยคำสั่งสคริปต์ใน session
  • StaticObjects - รวมทั้งหมดของโอบเจกต์ที่เพิ่มเข้าไปด้วยแท็ก <object> ใน HTML ใน session
  • Contents.Remove(item/index) - ลบรายการหนึ่งในรายการ Contents
  • Contents.RemoveAll() - ลบทั้งหมดของรายการ Contents

นามสาย

  • CodePage - กำหนดชุดอักษรที่ใช้ในการแสดงเนื้อหาที่เปลี่ยนแปลง
  • LCID - ตั้งค่าสัญญาณท้องถิ่นสำหรับการแสดงเนื้อหาที่เปลี่ยนแปลง
  • SessionID - คืนค่า id ของ session
  • Timeout - ตั้งค่าหรือคืนค่าเวลาหมดอายุของ session

เมธอด

  • Abandon - ยกเลิกโอบเจกต์ทั้งหมดในโอบเจกต์ session

โอบเจกต์ Application

กลุ่มแฟ้ม ASP ที่ทำงานร่วมกันเพื่อทำงานหนึ่งครั้งเรียกว่า โปรแกรม。โปรแกรม Application ใน ASP ใช้เชื่อมโยงเหล่าแฟ้มดังกล่าวรวมกัน。ทุกคนเชื่อมโยงกับ Application โอบเจกต์คนหนึ่ง โอบเจกต์ Application ควรมีข้อมูลที่ใช้โดยหลายหน้าในโปรแกรม (เช่น ข้อมูลการเชื่อมต่อฐานข้อมูล)

ชุด

  • Contents - รวมทั้งหมดของโปรแกรมที่เพิ่มเข้าไปด้วยคำสั่งสคริปต์ในโปรแกรม
  • StaticObjects - รวมทั้งหมดของออปเจกที่ใช้ HTML โดยการเพิ่ม <object> ใส่ในโปรแกรม
  • Contents.Remove - ลบอย่างเดียวที่อยู่ในชุด Contents
  • Contents.RemoveAll - ลบทุกอย่างที่อยู่ในชุด Contents

เมธอด

  • Lock - ป้องกันการเปลี่ยนแปลงตัวแปรในออปเจก Application
  • Unlock - อนุญาตให้ผู้ใช้เปลี่ยนแปลงตัวแปรในออปเจก Application

Response ออปเจก

Response ออปเจกใช้สำหรับส่งออกผลลัพธ์จากเซิร์ฟเวอร์ไปยังผู้ใช้

ชุด

Cookies(name) - ตั้งค่าค่าของคุกกี้ ถ้าไม่มีก็จะสร้างคุกกี้และตั้งค่าค่าที่กำหนด

นามสาย

  • Buffer - กำหนดว่าจะบังคับการทำงานหรือไม่ ของการออกผลลัพธ์。เมื่อการออกผลลัพธ์ถูกกำหนดเป็นการจัดเก็บความจำ โซนเซิร์ฟเวอร์จะหยุดการตอบสนองต่อบราวเซอร์จนกว่าทุกบริบทเซิร์ฟเวอร์จะถูกประมวลเสร็จ หรือจนกว่าบริบทจะเรียกมาใช้ Flush หรือ End วิธี
  • CacheControl - ตั้งค่าว่าเครื่องใช้ประสานงานสามารถจัดเก็บความจำหลังของออกที่สร้างโดย ASP หรือไม่。ถ้าตั้งค่าเป็น Public ก็จะเครื่องใช้ประสานงานจัดเก็บหน้าเว็บ
  • Charset(charset_name) - ใส่ชื่อชุดอักษรของมิติบันทึกสำหรับหัวข้อ content-type ของตอบสนอง
  • ContentType - ตั้งค่าประเภทของ HTTP สำหรับเป้าหมายตอบสนอง (เช่น "text/html", "image/gif", "image/jpeg", "text/plain"). ค่าปริยายคือ "text/html"
  • Expires - ตั้งเวลาที่หน้าเว็บควรหมดอายุความจำก่อนที่จะหมดอายุ (นาที)
  • ExpiresAbsolute - ตั้งวันและเวลาที่หน้าเว็บบราวเซอร์ควรหมดอายุความจำ
  • IsClientConnected - แสดงว่าได้เชื่อมต่อกับลูกค้าหรือไม่หลังจากที่ลูกค้าได้ตัดการเชื่อมต่อกับเซิร์ฟเวอร์
  • Pics(pics_label) - ใส่ค่าใหม่สำหรับสัญญาณ PICS ของหัวข้อตอบสนอง
  • Status - กำหนดค่าของบรรทัดสถานะที่เซิร์ฟเวอร์จะส่งกลับ

เมธอด

  • AddHeader(name, value) - ใส่หัวข้อและค่าใหม่ของ HTTP ตอบสนอง
  • AppendToLog string - ใส่ข้อความสำหรับบันทึกโปรเจค (server log entry) ที่ด้านหลังของเซิร์ฟเวอร์
  • BinaryWrite(data_to_write) - เขียนข้อมูลเข้าไปยังออกโดยไม่มีการเปลี่ยนแปลงของตัวอักษรใดๆ
  • Clear - ล้างข้อมูลที่อยู่ในคลังความจำ ใช้วิธีนี้เพื่อจัดการความผิดพลาด หาก Response.Buffer ยังไม่ได้ตั้งค่าเป็น true มีโอกาสที่จะเกิดความผิดพลาดของระบบปฏิบัติการ
  • End - หยุดการปฏิบัติการสคริปต์ และส่งกลับผลลัพธ์ที่ปัจจุบัน
  • Flush - ส่งข้อมูลที่อยู่ในคลังความจำทันที หาก Response.Buffer ยังไม่ได้ตั้งค่าเป็น true มีโอกาสที่จะเกิดความผิดพลาดของระบบปฏิบัติการ
  • Redirect(url) - โอนผู้ใช้ไปยัง URL อื่น
  • Write(data_to_write) - ของข้อมูลข้อความที่จะเขียนให้ผู้ใช้

ตัวแปร Request

เมื่อบราวเซอร์ขอหน้าเว็บจากเซิร์ฟเวอร์ ก็จะเรียกว่า request ตัวแปร request ใช้เพื่อหาข้อมูลจากผู้ใช้

ชุด

  • ClientCertificate - มีค่าของฟิลด์ที่เก็บอยู่ในบัตรประจำตัวลูกบริการ
  • Cookies(name) - มีค่าของค๊อกกี้
  • Form(element_name) - มีค่าของแบบฟอร์ม ซึ่งต้องใช้วิธีการ Post
  • QueryString(variable_name) - มีค่าของตัวแปรในข้อความการค้นหา
  • ServerVariables(server_variable) - มีค่าของตัวแปรเซิร์ฟเวอร์

นามสาย

  • TotalBytes - ส่งกลับจำนวนก์ตัวอักษรที่ส่งมาจากลูกบริการในขอบเขตของข้อความการขอเรียก

เมธอด

  • BinaryRead - หาข้อมูลที่ส่งมาจากลูกบริการที่ใช้ในขอบเขตของการขอเรียกข้อมูล

ตัวแปร Server

ตัวแปร Server ใช้เพื่อเข้าถึงนามสายและเมธอดบนเซิร์ฟเวอร์

นามสาย

ScriptTimeout - ตั้งค่าหรือส่งกลับระยะเวลาที่สกอตท์ประกอบสามารถปฏิบัติการได้ก่อนที่จะถูกยุติ

เมธอด

  • CreateObject(type_of_object) - สร้างตัวแปรตัวย่องของวัตถุ
  • Execute(path) - ปฏิบัติการเส้นทางเดียวกับ ASP ไฟล์อื่น ๆ จากภายในไฟล์ ASP และยืนยันการกลับควบคุมอำนาจให้กับไฟล์ ASP แห่งเดิมหลังจากไฟล์ ASP ที่ถูกเรียกใช้นั้นปฏิบัติการเสร็จสิ้น
  • ) - ส่งกลับ ASPError องค์ประกอบที่อธิบายถึงความผิดพลาดที่เกิดขึ้น
  • HTMLEncode(string) - ปรับแปลงตัวแปรสตริงให้เป็นรหัสที่สามารถนำไปใช้ใน HTML
  • MapPath(path) - จับความเคียงต่อหน้าทางเศรษฐกิจหรือทางเส้นทางปลอมแปลงเป็นหน้าทางฝั่งจริง
  • Transfer(path) - ส่งทั้งหมดข้อมูลสถานะสำหรับการจัดการด้วยฟายล์อื่น ๆ ในการส่งด้วยตัวอักษรหลังจากการส่ง การควบคุมของโปรแกรมจะไม่กลับมายังไฟล์ ASP ต้นฉบับ
  • URLEncode(string) - ปรับแปลงตัวอักษรสำหรับการใช้ URL encoding

แหล่งข้อมูล: http://www.codew3c.com/asp/asp_quickref.asp