วันอาทิตย์ที่ 19 เมษายน พ.ศ. 2552

ระบบพาณิชย์อิเล็กทรอนิกส์แบบธุรกิจกับธุรกิจ



บทที่ 1
บทนำ
1.1 ความเป็นมาและความสำคัญของปัญหา
พาณิชย์อิเล็กทรอนิกส์แบบธุรกิจกับธุรกิจ (Electronic commerce system : Business
to
Business) คือการทำธุรกรรมระหว่าง 2 บริษัท ผ่านทางระบบอินเตอร์เน็ต ซึ่งจะช่วยประหยัด
เวลาในการติดต่อสื่อสาร อีกทั้งยังช่วยลดค่าใช้จ่าย และมีข้อได้เปรียบอีกหลายประการที่จะได้
รับจากการทำธุรกิจผ่านทางระบบเครือข่ายอินเตอร์เน็ต
พาณิชย์อิเล็กทรอนิกส์แบบธุรกิจกับธุรกิจจะเกี่ยวข้องกับกระบวนการที่เกิดจากผู้ซื้อและ
ขายโดยอัตโนมัติ กระบวนการเหล่านี้มักจะเกี่ยวข้องกับการขายสินค้า และบริการแบบออนไลน์
ให้กับบริษัทอื่น ๆ โดยผ่านทางเว็บไซต์ เมื่อผู้ซื้อและผู้ขายมีปฎิสัมพันธ์กันโดยผ่านทางระบบ
พาณิชย์อิเล็กทรอนิกส์ เวลาที่ใช้ในการโต้ตอบนั้นจะลดลง และทำให้สามารถทำงานได้รวดเร็ว
กว่าการติดต่อสื่อสารกันในระบบมาตรฐานตัวอย่างเช่น ถ้าบริษัทผู้ผลิตหนึ่งมีรูปแบบของใบสั่ง
สินค้าเป็นแบบมาตรฐาน กระบวนการรับใบสั่งซื้อและกระบวนการทำใบสั่งซื้อสินค้านั้นก็จะมี
มาตรฐานไปด้วยวิธีการหนึ่งที่จะทำให้พาณิชย์อิเล็กทรอนิกส์มีมาตรฐานของการทำธุรกรรมขึ้นมา
ก็คือการนำเอา Electronic Data Interchange (EDI) เข้ามาใช้งานในมาตรฐาน EDI นั้นจะ
มีการ
โต้ตอบกันทั้งระหว่างองค์การและภายในองค์การ ดังนั้นจึงเป็นการเพิ่มการผลิตและเป็นการลดค่า
ใช้จ่ายในกรดำเนินการ
ในการทำการค้าผ่านระบบอินเตอร์เน็ต ความปลอดภัยเป็นเรื่องสำคัญที่ไม่ควรมองข้าม
เพราะจะต้องมีการแลกเปลี่ยนข้อมูลที่มีความสำคัญและเป็นความลับกันโดยตลอด ดังนั้นเว็บไซต์
ในเชิงพาณิชย์อิเล็กทรอนิกส์จะต้องมีการรับรองเรื่องความปลอดภัยของข้อมูล ซึ่งนั่นก็คือจะ
อนุญาตให้เฉพาะกลุ่มคนที่ได้รับความไว้วางใจเท่านั้น ที่จะสามารถเข้ามาทำธุรกรรมได้ ซึ่งเรา
จะเรียกคนกลุ่มนี้ว่า e-Partner และเฉพาะ e-Partner เท่านั้นที่มีสิทธิผ่านระบบรักษาความปลอด
ภัยและ สามารถเข้า ถึงข้อมูล ที่เป็นความลับทางธุรกิจได้
1.2 วัตถุประสงค์
1.2.1 เพื่อพัฒนาซอฟต์แวร์เพื่อใช้ในระบบพาณิชย์อิเล็กทรอนิกส์แบบธุรกิจกับธุรกิจ
2
1.3 ขอบเขตของโครงงาน
1.3.1 งานผ่านระบบเอ็กซ์ทราเน็ต
1.3.2 สร้างและค้นหาแคตตาล็อกสินค้าได้
1.3.3 สร้างใบสั่งซื้อและส่งต่อใบสั่งซื้อ
1.3.4 สร้าง Receive Pipeline เพื่อรับใบสั่งซื้อ
1.3.5 สร้างแอพพลิเคชั่นเพื่อให้ส่งอ็อบเจ็กต์ของข้อมูลธุรกิจได้
1.3.6 สามารถแปลงเอกสาร XML ไปเป็น EDI ไปเป็น XML ได้
1.3.7 ส่งผ่านใบตอบรับการสั่งไปยังผู้สั่งสินค้าได้
1.3.8 สามารถบันทึกข้อมูลสถานะ Session ในเพจ ASP ได้
1.3.9 สามารถเปลี่ยนแปลงโฟล์เดอร์ของไซต์
1.3.10 สามารถปรับปรุงแอตทริบิวต์และความผันแปรของผลิตภัณฑ์
1.3.11 จำกัดเพจให้เฉพาะผู้ที่ได้ลงทะเบียน ไว้แล้วเท่านั้นถึงจะเข้าต่อได้
1.3.12 การยืนยันการซื้อผ่านทางอีเมล์
1.4 เครื่องมือที่ใช้ในการดำเนินการ
1.4.1 เครื่องคอมพิวเตอร์ PC (Pentium II 400MHz หรือเทียบเท่าขึ้นไป RAM อย่าง
น้อย 128 MH)
1.4.2 Microsoft Windows 2000 Advanced Server
1.4.3 Microsoft commerce server 2002
1.4.4 Microsoft SQL Server 2000 พร้อม Service pack 2 หรือล่าสุด
1.4.5 Internet Explorer 5.5 หรือล่าสุด
1.5 ประโยชน์ของโครงการ
1.5.1 ประหยัดเวลา
1.5.2 การบริการลูกค้ามีประสิทธิภาพมากขึ้น
1.5.3 สร้างโอกาสใหม่ ๆ ในการขายสินค้า
1.6 แผนการดำเนินงาน(Gantt Chart)
การพัฒนาระบบพาณิชย์อิเล็กทรอนิกส์แบบธุรกิจกับธุรกิจ ผู้พัฒนาระบบได้วางแผนการ
3
ดำเนินงานไว้ ระหว่างเดือน สิงหาคม 2547 ถึง กุมภาพันธ์ 2548 รวมทั้งสิ้น 7 เดือน ซึ่งมีรายละเอียด
ดังตารางที่ 1-1
ตารางที่ 1-1 แผนการดำเนินงาน (Gantt Chart) ของการพัฒนาระบบพาณิชย์อิเล็กทรอนิกส์แบบ
ธุรกิจกับธุรกิจ
พ.ศ. 2547 - พ.ศ. 2548
กันยายน ตุลาคม พฤศจิกายน ธันวาคม มกราคม กุมภาพันธ์ มีนาคม
ระยะเวลา
กิจกรรม 1 2 3 4 1 2 3 4 1 2 3 4 1 2 3 4 1 2 3 4 1 2 3 4 1 2 3 4
1. ศึกษาเก็บรวบรวมข้อมูลและความต้องการ
ศึกษารูปแบบโครงสร้างของระบบ
ศึกษากระบวนการทำงานที่เกี่ยวข้อง
จัดทำแผนผังกระบวนการทำงานที่เกี่ยว
ข้อง
รวบรวมความต้องการจากผู้ใช้งาน
กำหนดวัตถุประสงค์
กำหนดขอบเขตของโครงงาน
2. วิเคราะห์และออกแบบระบบ
ออกแบบ Context และ DFDs
ออกแบบ Input และ Output
ออกแบบฐานข้อมูล
3. พัฒนาและจัดสร้างระบบ
4. ทดสอบระบบ
ทดสอบโดยผู้พัฒนาระบบ
ทดสอบโดยผู้เชี่ยวชาญ
ทดสอบโดยผู้ใช้ระบบ
5. ติดตั้งระบบและทดลองใช้งาน
6. ประเมินระบบโดยผู้เชี่ยวชาญและผู้ใช้งาน
7. จัดทำสารนิพนธ์
บทที่ 2
ทฤษฎี และงานวิจัยที่เกี่ยวข้อง
ในการจัดทำโครงงานครั้งนี้ ผู้จัดทำได้ศึกษาทฤษฎีต่าง ๆ ที่เกี่ยวข้องกับโครงงาน และการ
พัฒนาโปรแกรมคอมพิวเตอร์ โดยมีรายละเอียดข้อมูลในด้านต่าง ๆ ดังนี้
2.1 ฐานข้อมูลเชิงสัมพันธ์
2.2 ภาษาสอบถามเชิงโครงสร้าง
2.3 ระบบจัดการฐานข้อมูล Microsoft SQL Server 2000
2.4 ภาษา HTML
2.5 ภาษา ASP
2.6 การแบ่งแยกโค้ด ASP ออกจากโค้ด HTML
2.7 ASP กับการเชื่อมต่อ Microsoft SQL Server 2000
2.8 ภาษา VBScript
2.9 ภาษา XML
2.10 การเข้ารหัสข้อมูล
2.11 ใบรับรองอิเล็กทรอนิกส์ (Certificate Authority)
2.12 SSL
2.13 ภาษา Visual Basic
2.14 พาณิชย์อิเล็กทรอนิกส์แบบธุรกิจกับธุรกิจ
2.15 งานวิจัยที่เกี่ยวข้อง
2.1 ฐานข้อมูลเชิงสัมพันธ์
ฐานข้อมูลเชิงสัมพันธ์เป็นฐานข้อมูลซึ่งให้ภาพของข้อมูลในระดับภายนอก (External
Level)
และระดับแนวคิด (Conceptual Level) แก่ผู้ใช้ข้อมูลได้เป็นอย่างดี รีเลชั่นต่างๆ ในฐานข้อมูล
ประกอบด้วยแอททริบิวต์ต่างๆ ที่ถูกออกแบบเพื่อลดความซ้ำซ้อนของการเก็บข้อมูลและสามารถ
เรียกใช้ข้อมูลอย่างมีประสิทธิภาพ โดยมีระบบจัดการฐานข้อมูลเป็นผู้จัดการฐานข้อมูลตามที่ฐาน
ข้อมูลได้ถูกออกแบบไว้ (ศิริลักษณ์,2542:3-5)
5
ศัพท์เทคนิคที่เกี่ยวข้อง ในการประมวลผลแบบแฟ้มข้อมูลคำศัพท์ที่นิยมใช้กันคือ แฟ้ม ข้อ
มูล(File) เรคคอร์ด (Record) ฟิลด์ (Field) เมื่อเปรียบเทียบกับศัพท์ที่ใช้ในฐานข้อมูลเชิงสัมพันธ์
คือ ตาราง (Table) แถว (Column) ตามลำดับ อันที่จริงแล้วศัพท์ต่างๆ ทั้งที่เป็นศัพท์เทคนิคที่ใช้
เรียก
เฉพาะ และศัพท์ที่ใช้เรียกทั่วไปในฐานข้อมูลเชิงสัมพันธ์มากขึ้น คำศัพท์ที่ควรทราบมีดังต่อไปนี้
ตารางที่ 2-1 ศัพท์เทคนิคที่เกี่ยวข้องกันในฐานข้อมูล
ศัพท์เทคนิค ศัพท์ทั่วไป
รีเลชั่น (Relation) ตาราง (Table)
ทูเพิล (Tuple) แถว (Row) หรือ เรคคอร์ด (Record)
แอททริบิวต์ (Attribute) คอลัมน์ (Column) หรือ ฟิลด์ (Field)
คาร์ดินาลลิตี้ (Cardinality) จำนวนแถว (Number of Rows)
คีย์หลัก (Primary Key) ค่าเอกลักษณ์ (Unique Identifier)
โดเมน (Domain) ขอบเขตค่าของข้อมูล
ดีกรี (Degree) จำนวนของ Attribute Column
2.2 ภาษาสอบถามเชิงโครงสร้าง
ภาษาสอบถามเชิงโครงสร้าง (Structured Query Language) หรือที่เรียกสั้นๆ ว่าเอสคิว
แอล
(SQL) หรือซีควอล (SE-QUEL) นั้นเป็นภาษาที่ใช้ในการจัดการข้อมูลของฐานข้อมูลเชิงสัมพันธ์
คำสั่ง SQL สามารถแบ่งตามเกณฑ์ภาษาที่ใช้ในระบบจัดการฐานข้อมูลคือ (ศิริลักษณ์,2542:6-11)
2.2.1 ภาษาสำหรับนิยามข้อมูล (Data Definition Language: DDL)
ประกอบด้วยคำสั่งที่ใช้สำหรับสร้างฐานข้อมูล กำหนดโครงสร้างข้อมูล รวมถึงการ
เพิ่มคอลัมน์ การกำหนดดัชนี การกำหนดวิวของผู้ใช้ เป็นต้นตัวอย่างคำสั่ง แสดงดังตารางที่ 2-2
ตารางที่ 2-2 ตัวอย่างภาษาสำหรับนิยามข้อมูล
คำสั่ง ความหมาย
6
CREATE TABLE สร้างและนิยามโครงสร้างของข้อมูลในตารางที่สร้างขึ้น
DROP TABLE ลบโครงสร้างตาราง
ALTER TABLE แก้ไขเปลี่ยนแปลงโครงสร้างตาราง
CREATE INDEX สร้างดัชนีของตาราง
DROP INDEX ลบดัชนีของตาราง
CREATE VIEW กำหนดโครงสร้างวิวของผู้ใช้
DROP VIEW ลบโครงสร้างวิวออกจากระบบ
2.2.2 ภาษาสำหรับการจัดดำเนินการข้อมูล (Data Manipulation Language: DML)
ประกอบด้วยคำสั่งที่ใช้ในการเรียกใช้ข้อมูล (Retrieve) การเพิ่มข้อมูล (Insert) การ
แก้ไข ข้อมูล (Update) การลบข้อมูล (Delete) เป็นต้น ตัวอย่างคำสั่งแสดงดังตาราง ที่ 2-3
ตารางที่ 2-3 ตัวอย่างภาษาสำหรับการจัดดำเนินการข้อมูล
คำสั่ง ความหมาย
SELECT เรียกค้นข้อมูลในตาราง
INSERT เพิ่มแถวข้อมูลลงไปในตาราง
UPDATE ปรับปรุงข้อมูลในตาราง
DELETE ลบแถวข้อมูลในตาราง
2.2.3 ภาษาที่ใช้ในการควบคุมข้อมูล (Data Control Language: DCL)
ประกอบด้วยคำสั่งที่ใช้ในการควบคุม หรือป้องกันการเกิดเหตุการณ์ที่ผู้ใช้หลายคน
เรียกใช้ข้อมูลพร้อมกัน โดยที่ข้อมูลนั้น ๆ อยู่ในระหว่างการปรับปรุงแก้ไข ซึ่งเป็นเวลาเดียวกับ
ที่ผู้ใช้อีกคนหนึ่งเรียกใช้ข้อมูลนี้เช่นกัน
2.3 ระบบจัดการฐานข้อมูล Microsoft SQL Server 2000
ฐานข้อมูลเชิงสัมพันธ์ Microsoft SQL Server 2000 มีโครงสร้างสถาปัตยกรรมเกี่ยวกับการ
สื่อสาร การเชื่อมต่อ และการบริหารระบบ ทำให้ผู้ใช้และผู้ดูแลระบบ สามารถจัดการฐานข้อมูล
ได้อย่างคล่องตัวโดยจะแบ่งออกเป็น 3 ส่วน คือ (บัณฑิต,2543:5-10)
7
2.3.1 Communication
2.3.2 Application Development
2.3.3 Administration
2.3.1 Communication
ระบบการสื่อสารของ Microsoft SQL Server 2000 จะใช้ชั้นสถาปัตยกรรม ของการ
สื่อสาร ในการแยกแอพพลิเคชั่นนออกจากชั้นของเน็ตเวิร์กและโปรโตคอลสถาปัตยกรรม ของการ
สื่อสาร จะช่วยให้แอพพลิเคชั่นเดียวกันอยู่บนสภาพแวดล้อมเน็ตเวิร์กที่ต่างกันได้ส่วนประกอบ
ของสถาปัตยกรรมของการสื่อสาร มีดังนี้
ภาพที่ 2-1 แสดงสถาปัตยกรรม Communication
Applicationเป็นแอพพลิเคชั่นในการพัฒนาโดยใช้ API (Application
Programming Interface) ฐานข้อมูล
Database Interface เป็นพวก ODBC ( Open Database Connectivity ) ADO
(ActiveX Data Objects ) RDO (Remote Data Objects) ใช้เชื่อมต่อกับ แอพพลิเคชั่นในการส่ง
request ไปยัง Microsoft SQL Server 2000
Network Library เป็นซอฟท์แวร์ในการสื่อสาร เช่น แพ็คเกจ request ของฐาน
ข้อมูลและผลลัพธ์ สำหรับการส่งผ่านโดยเน็ตเวิร์กโปรโตคอล (Net Library) จะถูกติดตั้งทั้งบน
ฝั่งเซิร์ฟเวอร์และ ไคลเอ็นต์ ทำให้สามารถจะใช้ Net Library ได้มากกว่า 1 ตัวในเวลาเดียวกัน )
8
SQL Server จะสนับสนุนเน็ตเวิร์กโปรโตคอลหลายแบบเช่น TCP/IP,Name
Pipes,IPX/SPX,VINES/IP และ ADSP
Tabular Data Stream (TDS) เป็นแอพพลิเคชั่นในระดับโปรโตคอลจะใช้สื่อ
สาร
ระหว่าง SQL server และไคลเอ็นต์ แพ็คเกจ TDS จะมีการเข้ารหัส (encapusulated) ในเน็ต
เวิร์กแพ็คเกจเพื่อความปลอดภัยของข้อมูล
Open Data Service เป็นเสมือน DB Engine ของ SQL Server ที่จะควบคุมการ
เชื่อมต่อของเน็ตเวิร์ก ส่งผ่าน Request ของไคลเอ็นต์ไปยัง SQL Server เพื่อโปรเซสและส่งผล
ลัพธ์ กลับมายังไคลเอ็นต์ของ SQL Server ODS จะถูกติดตั้งอยู่บนเซิร์ฟเวอร์
2.3.2 Application Development
ส่วนสำคัญในการติดต่อกับแอพพลิเคชั่นของ SQL Server เพื่อใช้ในการพัฒนา
แอพพลิเคชัน คือ Application Development จะช่วยจัดการติดต่อระหว่าง ผู้ใช้งาน (Front end)
และเอนจินฐานข้อมูล (Back end ) Microsoft SQL Server 2000 สนับสนุน API ฐานข้อมูลใน
การ
เชื่อมต่ออยู่ 2 ตัว คือ OLE DB และ ODBC
ภาพที่ 2-2 แสดงสถาปัตยกรรมการเชื่อมต่อของ SQL Server
OLE DB (Object Linking and Embeding Database) เป็น COM
(Component
Object Model) ซึ่งจะสนับสนุนข้อมูลจากแอพพลิเคชั่นฐานข้อมูลอื่นๆที่ใช้ OLE DB รวมทั้ง
แอพพลิ -เคชั่นของเธิร์ดปาร์ตี้ด้วย OLE DB จะสนับสนุนการเชื่อมต่อฐานข้อมูลเชิงสัมพันธ์ และ
ฐานข้อมูลแบบธรรมดา ได้มีการพัฒนา OLE DB ให้ทำงานร่วมกับ Exchange
9
Server,Access,Active Directory,Index Server และ Oracle ไมโครซอฟท์ได้พัฒนาคุณสมบัติ
Linked Server โดยใช้ OLE
DB เช่น การคิวรีข้อมูลจาก SQL Server ร่วมกับข้อมูลของ Access,Sybase หรือ Oracle บน
เวิร์ฟ
เวอร์คนละตัว
ODBC เป็นการใช้สถาปัตยกรรมการเชื่อมต่อกับ Common Interface สามารถจะ
เชื่อมต่อและเรียกใช้ข้อมูลจากฐานข้อมูลต่างกันได้ ODBC เป็นเสมือน API ในการเชื่อมต่อข้อมูล
จากหลายๆตระกูลโดยแอพพลิชั่นตัวเดียวกัน แต่จะใช้ไดร์ฟเวอร์ในการเชื่อมต่อต่างกัน (ODBC
จะมีความสามารถและความเร็วต่ำกว่า OLE DB Date Object Interface) อ๊อบเจ็กต์ฐานข้อมูลใน
การเชื่อมต่อจะมีอยู่ 2 แบบ คือ ADO
ภาพที่ 2-3 แสดงสถาปัตยกรรมการเชื่อมต่อของ OLE DB
(Activex Data Objects) จะใช้การ Encapsulates ในการรวมความสามารถ ฟังก์ชั่นของแต่ละอ๊
อบ
เจกต์และ Data Attribute ที่มีลักษณะเหมือนกัน นำมารวมเข้าด้วยกัน (เรียกว่า Class) ADO
สามารถจะเรียกใช้งานจาก Visual Basic,Active Server Page ส่วน RDO (Remote Data
objects)
สามารถจะใช้การ Encapsulates ได้เช่นกัน
2.3.3 Administration
10
การบริหารงานระบบฐานข้อมูล Microsoft SQL Server 2000 สามารถจะทำได้
หลายทางทั้งทางการพิมพ์คอมมานไลน์ หรือผ่านกราฟิกส์อินเทอร์เฟช ขึ้นอยู่กับความชำนาญ
และความสะดวกของผู้บริหารระบบ
ภาพที่ 2-4 แสดงโครงสร้างการบริหารฐานข้อมูล
2.3.3.1 Microsoft SQL Server 2000 ผู้บริหารระบบฯ สามารถจะควบ
คุมหรือจัดการฐานข้อมูลได้ 3 แบบด้วยกันคือ
ก) Batch Utilities เป็นการใช้คอมมานไลน์ เช่น Osql และ bcq
ข) Graphic Administration เป็นกราฟิกส์ทูล เช่น SQL Enterprise
Manager
ค) Com (Component Object Model) เป็นการใช้แอพพลิเคชั่น
เช่น Visual Basic
2.3.3.2 SQL Distributed Management object เป็นที่รวมอ๊อบเจ็กต์ของ Com–
Basec administration จะเป็นตัวเชื่อมต่อระหว่างไคลเอ็นต์ และเซิร์ฟเวอร์
2.3.3.3 SQL Server Agent เป็นตัวจัดการกับเซิร์ฟเวอร์ตัวอื่นที่เชื่อมต่ออยู่ใน
ระบบเน็ตเวิร์ก แต่อยู่ไกลออกไป ผู้ดูแลระบบสามารถจะกำหนดงานต่างๆ ให้เซิร์ฟเวอร์ได้ตาม
ต้องการ เช่น สั่งให้แบ็คอัพข้อมูลหลังเลิกงานตอนเย็นทุกวัน SQL Server Agent มีหน้าที่ดังนี้
11
א ) Alert Management ทำการแจ้งเดือนให้ทราบว่าโปรเซสของ
งานที่ทำสำเร็จ หรือผิดพลาด
ב ) Notification สามารถจะส่งแมสเซสแจ้งเตือนผ่าน E – mail,Pager
หรือสตาร์ตแอพพลิเคชั่นบางตัว เมื่อเกิดการแจ้งเตือน เช่น log file เต็ม
ג ) Job Excution สามารถจะสร้าง Job Scheduling ให้ทำงานตามข้อ
กำหนดได้
ง) Replication Management การเรพลิเคตข้อมูลจาก Microsoft
SQL
Server 2000 ไปยังเซิร์ฟเวอร์อื่น
ภาพที่ 2-5 แสดงแพลตฟอร์มของ SQL Server Client Application เชื่อมต่อกับ
SQL
12
ภาพที่ 2-6 แสดงส่วนประกอบหลักๆของ SQL Server Architecture
2.3.4 โมเดลของระบบฐานข้อมูล
ระบบฐานข้อมูลที่ใช้งานอยู่บนเครื่องคอมพิวเตอร์ จะอยู่หลายโมเดล
ด้วยกัน ขึ้นอยู่กับการทำงาน และความเหมาะสม ตลอดจนความสามารถในการทำงานของเครื่อง
คอมพิวเตอร์ โดยจะมีดังนี้
2.3.4.1 โมเดลแบบ File Management
2.3.4.2 โมเดลแบบ Hierarchical Database
2.3.4.3 โมเดลแบบ Network Database
2.3.4.4 โมเดลแบบ Relational Database
13
2.4 ภาษา HTML
คำว่า HTML มาจากคำว่า Hyper Text Markup Language เป็นเอกสารแบบไฮเปอร์เท็กซ์ มี
ความสามารถในการเชื่อมโยงข้อมูลไปยังเอกสารอื่นได้ (ปิยวิท, 2540 : 7) HTML เป็นรูปแบบของ
ภาษาที่ใช้ในการเขียนโปรแกรมในเว็บเพจเพื่อแสดงผลบนเว็บบราวเซอร์ ลักษณะของเอกสาร
HTML จะเป็นเท็กซ์ไฟล์ธรรมดาที่ต้องอาศัยการแปลความจากเว็บบราวเซอร์ คำสั่งของภาษา
HTML เรียกว่า “แท็ก” (Tag) ซึ่งแท็กนี้โดยทั่วไปจะอยู่ในรูปแบบ <..> ….. ซึ่งเว็บบราวเซอร์
จะแปลงแท็กนี้แล้วแสดงผลให้เห็น โดยทั่วไปการสร้างเว็บเพจด้วยภาษา HTML สามารถใช้เอดิ-
เตอร์ต่างๆ เช่น Note Pad ของวินโดวส์ ทำให้ผู้เขียนโปรแกรมเข้าใจโครงสร้างโดยรวมทั้งหมด
แต่
โปรแกรมเมอร์จะต้องเข้าใจรูปแบบคำสั่งหรือแท็กของ HTML ทั้งหมด ซึ่งเป็นการยากและเสียเวลา
มาก ในปัจจุบันสามารถสร้างเอกสาร HTML ได้โดยไม่จำเป็นต้องทราบคำสั่งของภาษา HTML ทั้ง
หมดโดยมีผู้พัฒนาโปรแกรมที่ช่วยสนับสนุนการสร้างเอกสาร HTML ขึ้นมาอย่างมากมาย เช่น
Macromedia Dreamweaver, Microsoft Frontpage รูปแบบโครงสร้างพื้นฐานเอกสาร HTML มี
ดังนี้





คำสั่งหรือข้อความที่ต้องการแสดง


2.5 ภาษา ASP
14
การสร้างเว็บเพจในปัจจุบัน ได้มีเทคโนโลยีต่าง ๆ เข้ามาช่วยอำนวยความสะดวกอย่าง
มากมาย ทำให้การสร้างเว็บเพจเป็นเรื่องที่ไม่ยากเลย พร้อมกับการเพิ่มประสิทธิ์ภาพของเว็บเพจ
จากเดิมที่เป็นเพียงการนำเสนอข้อมูลแก่ผู้ใช้เหมือนรายงานหน้าหนึ่งเท่านั้น มาเป็นเว็บเพจที่เต็ม
ไปด้วยลูกเล่น และโต้ตอบกับผู้ใช้ (Dynamic Webpage) ได้อีกด้วย (ณัฐิกานต์, 2543 : 21-23)
เทคโนโลยีหนึ่งที่ได้รับการยอมรับสูง สำหรับการเพิ่มประสิทธิภาพให้กับเว็บเพจให้
สามารถโต้ตอบกับผู้ใช้ ก็คือ ASP (Active Server Pages) ที่ช่วยลดความซับซ้อนและเพิ่มประ
สิทธิภาพในการทำงานของเว็บเพจ จากเดิมที่เป็นแบบ Static คือเป็นเพียงหน้าเว็บเพจที่นำเสนอ
ข้อมูลต่อผู้ใช้ด้านเดียว โดยใช้การเขียนโค้ดภาษา HTML มาเป็นแบบ Dynamic ที่ทำให้เว็บเพจ
สามารถทำงานโต้ตอบกับผู้ใช้ได้ทันที การสร้างเว็บเพจในลัษณะนี้ช่วยลดความซับซ้อนของงาน
ลงได้มาก
จากประสิทธิภาพของ ASP ดังกล่าว ทำให้เราเขียนเว็บเพจเพื่อให้สามารถตอบสนองต่อ
เหตุการณ์ต่าง ๆ ที่เกิดขึ้นตามที่ผู้ใช้ต้องการ เนื่องจากความต้องการในการใช้งานเว็บเพจที่กว้าง
ขวางขึ้นมาก ตัวอย่างที่เห็นได้ชัดเจนคือ การเขียนเว็บเพจติดต่อฐานข้อมูล เพื่อนำข้อมูลออกมา
แสดงผลบนเว็บเพจ หรืออาจมีการเพิ่ม/แก้ไขข้อมูลจากผู้ใช้ผ่านทางเว็บเพจ ข้อมูลในฐานข้อมูลก็
จะเปลี่ยนแปลงตามความต้องการของผู้ใช้ทันทีโดยเทคโนโลยี ASP ทำให้เราสามารถรังสรรค์เว็บ
เพจเพื่อตอบสนองความต้องการของเว็บไซต์ในยุคปัจจุบันได้
ในบทนี้จะแนะนำถึง ASP ให้เข้าใจถึงความสามารถและกล่าวถึงหลักการทำงานของ ASP
ซึ่งคงทำให้ผู้อ่านยอมรับและมองเห็นว่า ASP มีความสามารถมากในระดับหนึ่งทีเดียวสำหรับการ
พัฒนาเว็บเพจ ในส่วนท้ายเราจะมาเตรียมความพร้อมให้ ASP ด้วยการติดตั้งเว็บเซิร์ฟแวร์ (เพราะ
การทำงานของเว็บเพจ ASP นั้นจะมีการประมวลผลที่เว็บเซิร์ฟเวอร์ก่อนจึงจะนำมาแสดงผล เราจึง
จำเป็นต้องจำลองเครื่องของเราเป็นเว็บเซิร์ฟเวอร์ ซึ่งจะกล่าวถึงต่อไป
2.5.1 แนะนำ Active Server Pages
Active Server Pages (ASP) คือเทคโนโลยีในการพัฒนาแอพพลิเคชัน สำหรับเว็บ
เพจที่พัฒนาโดยบริษัทไมโครซอฟท์ โดยออกแบบให้สามารถสร้างเว็บแอพพลิเคชั่นได้ง่ายขึ้น ซึ่ง
มีจุดเด่นในการใช้พัฒนาและจัดการเว็บแอพพลิเคชั่นบนเว็บเซิร์ฟเวอร์ ปัจจุบันได้พัฒนามาจนถึง
รุ่น ASP, NET ซึ่งเราจะกล่าวงถึงในส่วนที่ 2 ของหนังสือเล่มนี้
15
Active Server Pages เป็นเทคโนโลยีที่ประกอบกันจากออบเจ็กต์ต่าง ๆ ทำหน้าที่
ใน
การสื่อสารและควบคุมแอพพลิเคชั่นที่เว็บเซิร์ฟเวอร์ มีการเขียนสคริปต์หรือชุดคำสั่งควบคุม
ออบเจ็กต์ต่าง ๆ เช่น VBScript รวมกับแท็กของ HTML เก็บไว้ที่เว็บเซิร์ฟเวอร์ เอกสารที่เป็น
ASP จะมีแท็ก ASP กำกับอยู่ โดยจะอยู่ภายใต้เครื่องหมาย
ไฟล์เว็บเพจ ASP ที่สร้างขึ้นนั้น เราต้องกำหนดนามสกุลเป็น .asp เพื่อบอกให้รู้ว่
ไฟล์นี้เป็นเอกสาร ASP ตัวอย่างของโค้ด ASP ที่มีการเขียนแทรกในเอกสาร HTML ซึ่งอยู่ภาย
ใต้เครื่องหมาย





2.5.2 หลักการทำงานของ ASP
หลักการทำงาน ASP นั้น เป็นการเน้นการทำงานอยู่บนเว็บเซิร์ฟเวอร์เป็นหลักและอยู่
ในรูปแบบที่แน่นอน ซึ่งหลักการดังกล่าวเราสามารถอธิบายได้ง่าย ๆ ดังนี้
ASP จะทำงานโดยมีตัวแปลและตัวเอ็กซิคิวต์ที่ฝั่งเซิร์ฟเวอร์(Server side
Application) ส่วนการทำงานบราวเซอร์ของผู้ใช้เรียกว่า ฝั่งไคลเอนต์ (Client Side) การทำงานเริ่ม
ต้นเมื่อผู้ใช้ส่งความต้องการผ่านเว็บบราวเซอร์ทาง HTTP (HTTP Request) เช่น การค้นหาข้อมูล
จากฐานข้อมูล หรือการสั่งซื้อสินค้าออนไลน์ เป็นต้น ในรูปของเอกสาร ASP ไปยังเว็บเซิร์ฟเวอร์
16
จากนั้นเว็บเซิร์ฟเวอร์จะทำหน้าที่แปลคำสั่ง แล้วเอ็กซิคิวต์คำสั่งนั้น อาจมีการเรียกใช้ออบเจ็กต์
คอมโพเนนต์ หรือ ADO เพื่อใช้สำหรับการทำงานกับฐานข้อมูล หลังจากนั้นเว็บเซิร์ฟเวอร์จะ
สร้าง
ผลลัพท์ในรูปแบบเอกสาร HTML ส่งกลับไปให้เว็บบราวเซอร์เพื่อแสดงทางฝั่งผู้ใช้ต่อไป (HTTP
Response)
ภาพที่ 2-7 ขั้นตอนการทำงานของ ASP
2.6 การแบ่งแยกโค้ด ASP ออกจากโค้ด HTML
เนื่องจากในเอกสาร ASP นั้น โค้ด ASP จะถูกแทรกอยู่กับโค้ด HTML การที่ตัวแปลโค้ด
ASP (ASP Interpreter) ที่เว็บเซิร์ฟเวอร์จะสามารถแยกออกว่าส่วนไหนเป็นโค้ด HTML และส่วน
ไหนจะเป็นโค้ด ASP ต้องอาศัยเครื่องหมายที่ใช้แบ่งแยก ที่เราเรียกว่า ASP Delimiters โดย ASP
Delimiters มีอยู่ 3 รูปแบบ ซึ่งมีประโยชน์และความเหมาะสมในการใช้งานต่าง ๆ กันดังนี้
(ณัฐิกานต์, 2543 : 23-24)
2.6.1 เครื่องหมายที่ใช้กำหนดขอบเขตของโค้ด ASP
แทรกอยู่ตามโค้ด HTMLโค้ดที่เป็น ASP จะต้องอยู่ระหว่างเครื่องหมาย
โดยมีรูปแบบการใช้งานดังนี้

2.6.2 เครื่องหมายที่ใช้แสดงค่าของนิพจน์หรือตัวแปร
สำหรับค่าที่ต้องการแสดงออกให้ผู้ใช้เห็น หรือต้องการให้ปรากฏในโค้ด
17
HTML นั้น สามารถทำได้ง่าย ๆ โดยการใส่ค่าตัวแปรหรือนิพจน์ที่ต้องการแสดงระหว่างเครื่อง
หมาย โดยมีรูปแบบการใช้งานดังนี้

2.6.3 การกำหนดขอบเขตของ ASP โดยการระบุภาษาที่จะใช้
วิธีนี้จะใช้แอตทริบิวต์ RUNAT = SERVER แทรกใน

ต่อไปนี้จะทำงานที่ฝั่งเซิร์ฟเวอร์เท่า
นั้น ซึ่งจะไม่แสดงโค้ดในเห็นทางฝั่งไคลเอนต์ด้วยเนื่องจาก ASP นั้นอนุญาตให้เราสามารถเขียน
สคริปต์คำสั่งได้หลากหลายภาษา (ซึ่งเราอาจเลือกใช้ภาษาหนึ่ง หรือใช้ผสมกันหลายภาษาก็ได้)
ในกรณีที่เราไม่ได้ระบุภาษาที่จะใช้เขียน ASP จะถือว่าเราใช้ภาษา VBScript โดยปริยาย แต่ถ้าใน
กรณีที่เราต้องการใช้ภาษาอื่นที่ไม่ใช่ภาษา VBScript เราต้องระบุภาษาที่ต้องการใช้แทรกเพิ่มเติม
โดยแทรกแอตทริบิวต์ LANGUAGE=ภาษาที่ใช้ภายในแท็ก