เทคโนโลยี ASP ใน WAP (3)
ผู้เขียน:Eve Cole
เวลาอัปเดต:2009-05-30 19:54:45
ในส่วนก่อนหน้านี้ ฉันได้อธิบายแนวคิดพื้นฐานที่สุดของ WAP และ WML ในส่วนนี้ เราจะมาดูว่า ASP และ WAP รวมกันอย่างไร
ส่วนที่ 4: อีกช่องทางในการจองตั๋วภาพยนตร์
ขณะนี้ในออสโล โรงภาพยนตร์มีระบบโทรศัพท์เพื่อจำหน่ายตั๋ว ระบบนี้ซับซ้อนมากและต้องให้คำแนะนำแก่ผู้ใช้เพื่อแนะนำการซื้อตั๋ว
และผู้ใช้จะต้องค้นหารหัสของภาพยนตร์บางเรื่องในหนังสือพิมพ์ด้วยซึ่งน่ารำคาญมากขอแนะนำวิธีอื่น
ที่นี่ฉันจะแสดงแอปพลิเคชัน WAP ง่ายๆ ที่ให้ผู้ใช้โทรศัพท์มือถือจองตั๋ว: บริการที่จะสร้างความประทับใจอย่างแน่นอน ผู้ใช้ไม่จำเป็นต้องจำรหัสที่น่ารำคาญเหล่านั้น พวกเขาสามารถเลือกภาพยนตร์และโรงภาพยนตร์ได้โดยตรงจากเมนู และผู้ใช้ไม่จำเป็นต้องตรวจสอบสิทธิ์ ในตัวอย่างนี้ ระบบจะขอให้ผู้ใช้จ่ายเงิน 40 นาทีก่อนที่ภาพยนตร์จะฉาย แต่ในชีวิตจริง
ผู้ใช้ยังสามารถชำระเงินผ่านโทรศัพท์มือถือได้
แอปพลิเคชั่นนี้จินตนาการว่าภาพยนตร์สามารถฉายในโรงภาพยนตร์หลายโรงในเวลาเดียวกันได้ และโรงภาพยนตร์สามารถฉายภาพยนตร์ต่าง ๆ ในเวลาต่างกันได้
ฉันไม่ได้คิดมากเกินไปเกี่ยวกับการจัดการข้อผิดพลาดที่นี่ เนื่องจากบทนี้ไม่ใช่จุดเน้นของบทนี้ คุณสามารถเพิ่มได้ด้วยตัวเองหากต้องการ
เพื่อความเรียบง่าย ผมใช้ Access 97 เป็นฐานข้อมูล แน่นอนว่าระบบจริงจะไม่ใช้ฐานข้อมูลอื่น เช่น SQL Server ไม่จำเป็นต้องเปลี่ยนแปลงโค้ดมากนัก
แผนภาพฐานข้อมูล
แผนภาพฐานข้อมูล
จำเป็นต้องมีตาราง .Movie และ Theatre ตารางแสดงใช้เพื่อติดตามจำนวนที่นั่งว่างที่พร้อมจำหน่ายในปัจจุบัน
วิธีแก้จุดบกพร่องของโปรแกรมนี้
เพื่อเข้าถึงบริการ WAP นี้ คุณต้องมีโปรแกรมจำลอง WAP
เลือกภาพยนตร์
เลือกภาพยนตร์ในรายการ:
นี่คือรหัส:
<!--#include file="conn.asp" --><%
'ส่งประเภท MIME ที่ถูกต้อง
Response.ContentType = "ข้อความ/vnd.wap.wml"
สิ่งแรกคือการประกาศ wml หากโปรแกรมจำลองไม่ประกาศ XML ในตำแหน่งที่ถูกต้อง แม้ว่า Nokia 7110 จะสามารถเพิกเฉยต่อสิ่งนี้ได้ แต่ก็ไม่มีการรับประกันว่าโทรศัพท์รุ่นอื่นจะทำงานได้เช่นกัน ดังนั้นคุณต้องทำเช่นนี้ . คุณต้องตั้งค่าประเภท MIME ด้วย
<?xml เวอร์ชัน = "1.0"?>
<!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN" "http://www.wapforum.org/DTD/wml_1.1.xml">
<wml>
ก่อนจะไปต่อการ์ดใบถัดไปจะมีหน้าจอกระพริบแสดงภาพในรูปแบบ WBMP รูปแบบใหม่ เหตุการณ์นี้ถูกกำหนดโดยแอตทริบิวต์ตัวจับเวลา ที่นี่เราตั้งเวลาเป็น 5 วินาที หลังจากเหตุการณ์ ontimer ถูกเรียกใช้งาน มันจะนำคุณไปยังการ์ดอื่น (สามารถดาวน์โหลดปลั๊กอิน Photoshop ของ wmbp ได้ฟรีจากอินเทอร์เน็ต)
<card id="splash" ontimer="#card1" title="ยินดีต้อนรับสู่">
<ค่าตัวจับเวลา = "50"/>
<p align="center">
<br />
<img src="pix/logo.wbmp" alt="ภาพยนตร์ WAP"/>
</p>
</การ์ด>
<card id="card1" title="เลือกภาพยนตร์">
-
sqlQuery = "เลือก [Movie_ID], [ชื่อ] จากภาพยนตร์"
ตั้ง rsMovies = conn.Execute (SQLquery)
-
-
<p>
<select name='movie'>
-
ทำในขณะที่ไม่ใช่ rsMovies.eof
response.write("<option value='" & rsMovies("Movie_ID") & "'>" & rsMovies("title") & "</option>" & vbcrlf)
rsMovies.MoveNext
วนซ้ำ %>
</เลือก>
ส่วนนี้คือจุดเน้นของบทความนี้ อ่านข้อมูลที่ต้องการจากฐานข้อมูลและแสดงผล ในฐานะโปรแกรมเมอร์ ASP ไม่มีอะไรพิเศษเกี่ยวกับเรื่องนี้ แต่ตอนนี้มันแตกต่างออกไปที่โปรแกรมธรรมดานี้ถูกใช้บนเซิร์ฟเวอร์ใหม่ล่าสุด สิ่งนี้ยังทำให้ฉันคิดว่า ASP ดีกว่า Java servlet ในการเขียนโปรแกรมเครือข่ายของเว็บไซต์เชิงพาณิชย์ที่ใช้ WML
<เล็ก>
<anchor title="next!">ถัดไป
<go href="step2.asp" method="get">
<postfield name="movie" value="$(movie)" />
</ไป>
</สมอ>
</เล็ก>
</p>
การส่งแบบฟอร์มสามารถทำได้ผ่านฟังก์ชันซอฟต์สวิตช์ (do และ Anchor) ที่นี่ ฉันทำมันโดยใช้ลิงก์อินไลน์ง่ายๆ เพราะฉันรู้สึกว่ามันทำให้รู้สึกเป็นธรรมชาติและเป็นมิตรกับผู้ใช้ Postfields มีขนาดใกล้เคียงกับที่ซ่อนอยู่ใน HTML แต่ตัวแปร wml ไม่จำเป็นต้องถ่ายโอนใน javascript เช่นเดียวกับใน html ซึ่งสามารถเขียนได้โดยตรงใน wml ซึ่งได้รับการอธิบายไว้ในส่วนที่แล้ว วิธีการรับและโพสต์ยังได้รับการสนับสนุนในข้อกำหนด WAP และโปรแกรมจำลองก็สามารถจดจำได้เช่นกัน แต่น่าเสียดายที่ใน Nokia 7110 โพสต์นี้ไม่รองรับ ดังนั้นคุณจึงไม่มีทางเลือก