1. กระบวนการสื่อสารขั้นพื้นฐาน
รูปที่ 1 แผนผังของกระบวนการสื่อสารระหว่าง SWF+XML และเซิร์ฟเวอร์ คลิกเพื่อขยายรูปภาพ
รูปที่ 1 แสดงแผนผังของกระบวนการสื่อสารในตัวอย่างนี้ สคริปต์ฝั่งเซิร์ฟเวอร์ที่ส่งข้อมูลระหว่าง Flash และฐานข้อมูลอ่านและเขียนข้อมูลในรูปแบบ XML
คุณสามารถใช้ ActionScript เพื่อแปลงข้อมูลที่รวบรวมในไฟล์ SWF ให้เป็นออบเจ็กต์ XML จากนั้นส่งข้อมูลไปยังสคริปต์ฝั่งเซิร์ฟเวอร์เป็นเอกสาร XML คุณยังสามารถใช้ ActionScript เพื่อโหลดเอกสาร XML ที่เซิร์ฟเวอร์ส่งคืนลงในออบเจ็กต์ XML เพื่อใช้ในไฟล์ SWF ในตัวอย่างนี้ การบันทึกข้อมูล XML ที่เกี่ยวข้องทำได้โดยโปรแกรมสคริปต์ของเซิร์ฟเวอร์ ซึ่งเป็นจุดสนใจของตัวอย่างนี้ด้วย
2. วิธีการสื่อสารระหว่างแฟลชและ ASP
สามารถใช้วิธีการสื่อสารที่หลากหลายระหว่างแฟลชและ ASP ในตัวอย่างนี้ มีการใช้ออบเจ็กต์ LoadVars
LoadVars จัดเตรียมวิธีการส่งตัวแปรไปยังเซิร์ฟเวอร์โดยใช้วิธี POST
3.
สคริปต์เซิร์ฟเวอร์ สคริปต์เซิร์ฟเวอร์สามารถเขียนได้โดยโปรแกรมต่างๆ ในตัวอย่างนี้ ASP ถูกใช้เป็นตัวอย่างในการเขียนสคริปต์ที่เกี่ยวข้อง
Microsoft Active Server Pages (ASP) คือสภาพแวดล้อมการเขียนสคริปต์ฝั่งเซิร์ฟเวอร์ที่ช่วยให้คุณสามารถสร้างและเรียกใช้แอปพลิเคชันเว็บเซิร์ฟเวอร์แบบโต้ตอบแบบไดนามิกได้
สคริปต์ถูกเขียนโดยใช้ภาษาสคริปต์ที่เกี่ยวข้อง ภาษาสคริปต์อยู่ระหว่าง HTML และภาษาการเขียนโปรแกรม เช่น Java, C++ และ Visual Basic โดยทั่วไปจะใช้ HTML เพื่อจัดรูปแบบข้อความและลิงก์หน้าเว็บ ภาษาโปรแกรมมักใช้เพื่อส่งลำดับคำสั่งที่ซับซ้อนไปยังคอมพิวเตอร์ ภาษาสคริปต์สามารถใช้เพื่อส่งคำสั่งไปยังคอมพิวเตอร์ได้ แต่ไวยากรณ์และกฎเกณฑ์ไม่เข้มงวดและซับซ้อนเท่ากับภาษาโปรแกรมที่คอมไพล์ได้ ภาษาสคริปต์ส่วนใหญ่จะใช้สำหรับการจัดรูปแบบข้อความและใช้ส่วนประกอบที่คอมไพล์ที่เขียนในภาษาโปรแกรม
ASP ช่วยให้นักพัฒนาเว็บสามารถเขียนกระบวนการที่สมบูรณ์ในภาษาสคริปต์หลายภาษาได้ ในความเป็นจริง ภาษาสคริปต์หลายภาษาสามารถใช้ได้ภายในไฟล์ .asp ไฟล์เดียว
เราสามารถใช้ภาษาสคริปต์ใดๆ ที่มีการติดตั้งกลไกการเขียนสคริปต์ที่เกี่ยวข้องบนเว็บเซิร์ฟเวอร์ โดยทั่วไปจะใช้สองภาษา ได้แก่ VBScript และ JavaScript ภาษาสคริปต์เริ่มต้นของ ASP คือ VBScript ในตัวอย่างนี้ VBScript ถูกใช้เพื่อเขียนสคริปต์
มาดูตัวอย่างการผลิตที่เฉพาะเจาะจงด้านล่างกัน
ตัวอย่างการผลิต:
1.ด้านแฟลช
ขั้นแรกให้สร้างอินเทอร์เฟซต่อไปนี้ มีการกล่าวถึงโค้ดสำหรับจับจุดคำอธิบายประกอบในการบรรยายครั้งก่อน ในตัวอย่างนี้ นอกเหนือจากชื่อสถานที่แล้ว ยังมีการเพิ่มข้อมูลพื้นฐานบางอย่างอีกด้วย ในที่สุดรหัสที่ต้องบันทึกจะถูกกำหนดให้กับตัวแปรสตริง SendData_srt
รูปที่ 2 อินเทอร์เฟซไฟล์ SWF 1
คลิกเพื่อดูภาพขนาดใหญ่
รูปที่ 3 อินเทอร์เฟซไฟล์ SWF 2
ใช้ตัวแปรชื่อลิงก์เพื่อรับข้อความจากเซิร์ฟเวอร์ หากค่าเป็น 1 แสดงว่าการเชื่อมต่อการสื่อสารกับเซิร์ฟเวอร์สำเร็จ ใช้
LoadVars จากนั้นใช้เมธอด sendAndLoad เพื่อส่งข้อมูลภายใต้เอนทิตี LoadVars
เปิดแผงการดำเนินการของไทม์ไลน์แล้วป้อนโค้ด ActionScript ต่อไปนี้:
ฟังก์ชั่น SendData():Void { //กำหนดฟังก์ชั่นในการส่งข้อมูล var SendData = new LoadVars(); //สร้างวัตถุ LoadVars ใหม่ SendData.Check = 1; //ตั้งค่าการดำเนินการตรวจสอบสำหรับเซิร์ฟเวอร์เพื่อตรวจสอบ ข้อมูล SendData = SendData_srt; //กำหนดตัวแปรข้อมูล SendData_srt ที่จะส่งข้อมูล output_txt.text = "โปรดรอสักครู่..."; // ข้อความสถานะจะแสดงเป็น "โปรดรอสักครู่..." SendData.onLoad = function(success) { //ฟังก์ชั่นเพื่อตรวจสอบการเชื่อมต่อกับเซิร์ฟเวอร์ ถ้า (สำเร็จ) { //ถ้าการเชื่อมต่อกับเซิร์ฟเวอร์สำเร็จ ถ้า (this.Link== "1") { //ถ้าการดำเนินการตรวจสอบสำเร็จ output_txt.text = "ทำเครื่องหมายสำเร็จ! หลังจากตรวจสอบแล้ว มีผล"; //ข้อความสถานะแสดงเป็นสำเร็จ } } else { output_txt.text = "เซิร์ฟเวอร์ไม่ว่าง โปรดลองอีกครั้งในภายหลัง!" // หากการเชื่อมต่อกับเซิร์ฟเวอร์ไม่สำเร็จ ข้อความแสดงความล้มเหลวจะถูกส่งกลับ } }; SendData.sendAndLoad( "http://www.wanggesz.com/XMLData/Save.asp", SendData, "post"); //ส่งข้อมูลที่จะบันทึกในโหมดโพสต์ } |
เพื่อสร้างไฟล์ ASP ที่มีเนื้อหาดังต่อไปนี้:
<%@Language="VBScript"%> <% Dim Check 'กำหนดตัวแปร Check เพื่อตรวจสอบข้อมูลจากไฟล์ SWF Dim Link 'Define ตัวแปร Link ใช้เพื่อกลับไปยังไฟล์ SWF เพื่อระบุการสื่อสารที่ประสบความสำเร็จ Dim data 'กำหนดตัวแปรข้อมูลเพื่อรับข้อมูลที่จะถูกบันทึกจาก ชุดไฟล์ SWF data = Request.Form("data") 'รับข้อมูลที่จะเป็น บันทึกจากชุดไฟล์ SWF Check = Request.Form("Check") 'ตรวจสอบข้อมูลจากไฟล์ SWF ถ้า Check = 1 จากนั้น 'หากข้อมูลประจำตัวของไฟล์ SWF ถูกต้อง Link = 1 'ตั้งค่า Link เป็น 1 โดยระบุว่า การสื่อสารสำเร็จสิ้นสุด ถ้า 'สิ้นสุดคำสั่ง if' xml.Async=False xml.ValidateOnParse=False xml.Load(server.mapPath("http://www.wanggesz.com/XMLData/data.xml")) ตั้ง newNode=mxml.createNode ("องค์ประกอบ", "ข้อมูล", "") root.appendChild(newNode) ตั้งค่า objname = mxml.createAttribute("data") xml.save(server.mapPath("http://www.wanggesz.com/XMLData/data.xml") ) %> |
ด้วยวิธีนี้ เราได้ดำเนินการแผนที่ คำอธิบายประกอบชื่อสถานที่ และฟังก์ชันอื่นๆ เสร็จสิ้นแล้ว ในกระบวนการใช้แผนที่ การใช้ชื่อสถานที่สำหรับการสืบค้นและการวางตำแหน่งก็เป็นฟังก์ชันทั่วไปที่ขาดไม่ได้เช่นกัน