تقنية ASP في WAP (4)
الكاتب:Eve Cole
وقت التحديث:2009-05-30 19:54:43
اختر المسرح ووقت العرض
يسمح هذا الجزء من الكود للمستخدم باختيار وقت مشاهدة الفيلم. ويتم تحديد جميع السجلات بناءً على الفيلم المحدد في الصفحة السابقة. اختر مسرحك ووقت العرض هنا.
movie_id = طلب("فيلم")
sqlQuery = "اختر عنوان الفيلم من حيث Movie_id =" & movie_id
تعيين rsMovie = conn.Execute(sqlQuery)
movie_title = rsMovie("title")
:
sqlQuery = "حدد [الاسم]، [الوقت]، [show_id] من العرض، المسرح" &_
"أين show.movie_id = " & movie_id &_
"ومسرح المسرح_id = show.theater_id"
تعيين rsShows = conn.Execute(SQLquery)
إذا درست هذا الرمز بعناية، فستحتاج إلى استخدام الجلسة لحفظ معلومات الفيلم، ومن ثم يكون الاستعلام عنها في هذه الصفحة أسهل. ولسوء الحظ أيضًا، الجلسة مطلوبة
على الرغم من أن دعم ملفات تعريف الارتباط مدعوم أيضًا في مواصفات WAP، إلا أنه غير مدعوم في Nokia 7110. وهذا يعني أنه لا يمكننا استخدام الجلسة في WAP بعد.
في الخدمة.
وهنا بعض الأشياء المثيرة للاهتمام:
<اختر الاسم='إظهار'>
<%
افعل بينما لا rsShows.eof
Response.write("<option value='" & rsShows("show_id") & "'>" & Left(rsShows("name"),cutter) & "(" &
rsShows("time") & ")" & "</option>" &vbcrlf)
rsShows.MoveNext
حلقة %>
</حدد>
إذا كنت تتساءل عن متغير القاطع، فإليك شيئًا سيجعلك تضحك أو تبكي.
القاطع الخافت
إذا كان InStr(Request.ServerVariables("HTTP_USER_AGENT")، "Nokia7110") ثم
القاطع = 12
آخر
القاطع = 7
نهاية إذا
يعرض هذا الرمز خيارات بناءً على الأجهزة المختلفة. لدينا سبب وجيه للقيام بذلك، فمحاكي Nokia Toolit 1.2 يحب تقليص خياراتي إلى بضعة أحرف فقط، ونريد عرض اسم الفيلم وتاريخ الإصدار، لذلك يتعين علينا تقليل أحرف اسم الفيلم. هذه المشكلة لا تحدث في الهواتف المحمولة الحقيقية، لذا يجب علينا أولاً تحديد نوع الجهاز.
بمجرد أن أتيحت لي الفرصة (كنت فقيرًا ولم يكن لدي مال، كان هذا مجرد حلم بعيد المنال...) لاختبار الكود الخاص بي على هاتف Nokia 7110 حقيقي، شعرنا على الفور أن لدينا شاشة كبيرة أكثر مما كنا نعتقد. في الواقع، بعض دور السينما لها أسماء غريبة، وهذه الأسماء الطويلة ستشغل مساحة كبيرة من الشاشة، فلا داعي لإضاعة مساحة العرض هذه ومحاولة تبسيط هذه الأسماء.
تذكرة
الخطوة التالية هي السماح للمستخدم بتحديد العدد المطلوب من الأصوات. هذا الجزء من الكود يشبه إلى حد كبير الأجزاء الأخرى. سوف أقوم بالاستعلام عن نفس البيانات من قاعدة البيانات لأنه لا يمكن استخدام الجلسة بشكل حقيقي
يتم استخدام هاتف WAP، لذلك لا بد لي من التحقق من بعض المحتوى لمعرفة ما إذا كانت لا تزال هناك مقاعد للبيع.
SQLquery = "SELECT * FROM show WHERE Show_id = " & show_id
تعيين rsShow = conn.Execute(SQLquery)
:
المقاعد = rsShow("free_seats")
:
إذا كانت المقاعد = 0 ثم
Response.write("عذرًا، لا مزيد من المقاعد")
rsShow.إغلاق
تعيين rsShow = لا شيء
Response.write("</p></card></wml>")
الاستجابة.نهاية
آخر
إذا كانت المقاعد أكبر من 6، فقم بحجز ما يصل إلى 6 تذاكر أو الحد الأقصى المتاح
max_seats=6
آخر
max_seats = مقاعد
نهاية إذا
نهاية إذا
%>
<%=movie_title%> في <% =theater_name%>
<اختر الاسم='تذكرة'>
<%
ديمي
أنا = 1
افعل ذلك بينما أنا <= max_seats
Response.write("<option value='" & i & "'>" & i & " التذكرة(التذاكر)" & "</option>" &vbcrlf)
ط = ط + 1
حلقة %>
</حدد>
حفظ الأصوات
الآن بعد أن أصبح لدينا جميع البيانات التي نحتاجها، علينا حفظها:
التذاكر = طلب ("تذكرة")
:
free_seats = rsShow("free_seats")
:
free_seats = free_seats - التذاكر
:
SQLUpdate = "عرض التحديث" &_
"SET Show.free_seats=" & free_seats & " " &_
" أين Show_ID =" & show_id
conn.Execute (SQLupdate)
SQLquery = "حدد الحد الأقصى([Booking_ID]) كرقم الحجز من الحجز"
تعيين rsBooking = conn.execute(SQLquery)
maxbookid = rsBooking("bookingnumber") + 1
SQLinsert = "أدخل في الحجز ( show_id، book_seats ) " & _
"القيم ('" & show_id & "'، '" & التذاكر & "')"
conn.Execute(SQLinsert) %>
لقد حجزت <%=tickets%> تذكرة (تذاكر) لـ <%=movie_title%><br />
سيقام العرض في <%=theater_name%> (<%=time%>)
<br />
الرقم المرجعي الخاص بك هو <%=maxbookid%>
أدناه هو العرض:
الشكل 4: المعاملة الكاملة.
تمت الصفقة، ويمكن للسينما الجلوس على باب السينما لتحصيل الأموال.
ختاماً
لقد اتخذ WAP خطواته الأولى للتو، ولكنه يعد واحدًا من أكثر تطورات تكنولوجيا المعلومات ثورية في السنوات الأخيرة. أعرض في هذه المقالة كيفية كتابة تطبيقات WAP باستخدام asp،
ولقد قدمت لك بعض التحذيرات، والتي آمل أن تكون مفيدة لتطورك المستقبلي. لا تزال تكنولوجيا الوسائط المتعددة لا يمكن استخدامها كثيرًا في WAP، ولكن قابليتها للتنقل مهمة وتوفر العديد من الفرص التجارية للتجار.