تقنية ASP في WAP (3)
الكاتب:Eve Cole
وقت التحديث:2009-05-30 19:54:45
في القسم السابق، قمت بشرح المفاهيم الأساسية لـ WAP وWML. وفي هذا القسم، سنلقي نظرة على كيفية الجمع بين ASP وWAP.
القسم 4: طريقة أخرى لحجز تذاكر السينما الخاصة بك
توفر دور السينما الآن في أوسلو نظامًا يعتمد على الهاتف لبيع التذاكر، وهذا النظام معقد للغاية، ويجب إعطاء بعض التعليمات للمستخدمين لإرشادهم لشراء التذاكر.
ويجب على المستخدم أيضًا العثور على رمز فيلم معين في الصحيفة، وهذا أمر مزعج للغاية، فلنقدم طريقة أخرى.
سأعرض لك هنا تطبيق WAP بسيطًا يسمح لمستخدمي الهاتف المحمول بحجز التذاكر: وهي خدمة ستثير الإعجاب بالتأكيد. لا يتعين على المستخدمين تذكر تلك الرموز المزعجة، حيث يمكنهم اختيار الأفلام والمسارح مباشرة من القوائم، ولا يحتاج المستخدمون إلى المصادقة. في هذا المثال، يُطلب من المستخدم أن يدفع 40 دقيقة قبل بدء الفيلم، ولكن في الحياة الواقعية،
يمكن للمستخدمين أيضًا التحقق عبر الهاتف المحمول.
يتصور هذا التطبيق أنه يمكن عرض الفيلم في دور سينما متعددة في نفس الوقت، وأن السينما يمكنها عرض أفلام مختلفة في أوقات مختلفة.
لا أفكر كثيرًا في معالجة الأخطاء هنا، لأنها ليست محور هذا الفصل، يمكنك إضافتها بنفسك إذا أردت.
من أجل البساطة، استخدمت Access 97 كقاعدة بيانات، بالطبع، لن يستخدمه النظام الحقيقي. قواعد البيانات الأخرى مثل SQL Server لا تحتاج إلى تغيير الكثير من التعليمات البرمجية.
مخطط قاعدة البيانات
مخطط قاعدة البيانات
من الواضح أن طاولات الأفلام والمسرح مطلوبة. يتم استخدام جدول العرض لتتبع عدد المقاعد الشاغرة المتوفرة حاليًا للبيع.
كيفية تصحيح هذا البرنامج
للوصول إلى خدمة WAP هذه، تحتاج إلى محاكي WAP. تم تصحيح أخطاء هذا البرنامج بشكل أساسي في Nokia Toolkit 1.2. يرجى مراجعة الفصل السابق للحصول على التفاصيل.
حدد الفيلم
حدد فيلمًا في القائمة:
هنا هو الرمز:
<!--#include file="conn.asp" --><%
'أرسل نوع MIME الصحيح
Response.ContentType = "text/vnd.wap.wml"
أول شيء هو الإعلان عن wml. إذا لم يعلن المحاكي عن XML في المكان الصحيح، فلن يقبل WML. وعلى الرغم من أن هاتف Nokia 7110 يمكنه تجاهل ذلك، إلا أنه ليس هناك ما يضمن أن الهواتف الأخرى ستعمل أيضًا، لذا عليك القيام بذلك . تحتاج أيضًا إلى ضبط نوع MIME.
<?xml version="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 مجانًا من الإنترنت).
<card id="splash" ontimer="#card1" title="مرحبًا بك في">
<قيمة الموقت = "50"/>
<p align="center">
<br />
<img src="pix/logo.wbmp" alt="أفلام WAP"/>
</ص>
</بطاقة>
<card id="card1" title="اختر فيلمًا">
<%
sqlQuery = "حدد [Movie_ID]، [العنوان] من الفيلم"
تعيين rsMovies = conn.Execute(SQLquery)
:
%>
<ص>
<اختر الاسم='فيلم'>
<%
افعل بينما لا 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" way="get">
<postfield name = "movie" value = "$ (فيلم)" />
</اذهب>
</مرساة>
</صغير>
</ص>
يمكن أيضًا تقديم النماذج من خلال وظائف التبديل البسيطة (التنفيذ والإرساء). لقد فعلت ذلك هنا باستخدام روابط مضمّنة بسيطة لأنني أشعر أنها تجعل الأمر يبدو بديهيًا وسهل الاستخدام. حقول البريد هي بنفس حجم الحقول المخفية في HTML، لكن متغيرات WML لا تحتاج إلى النقل في جافا سكريبت مثل تلك الموجودة في HTML، ويمكن كتابتها مباشرة في WML، والتي تم شرحها في القسم السابق طريقتا الحصول والنشر مدعومتان أيضًا في مواصفات WAP، ويمكن للمحاكي أيضًا التعرف عليه، ولكن لسوء الحظ، في Nokia 7110، هذا المنشور غير مدعوم، لذلك ليس لديك خيار.