WAP中的ASP技术之六

2016-02-19 13:27 4 1 收藏

人生本是一个不断学习的过程,在这个过程中,图老师就是你们的好帮手,下面分享的WAP中的ASP技术之六懂设计的网友们快点来了解吧!

【 tulaoshi.com - Web开发 】


  选择电影院和上映时间

  这部分代码让用户来选择看什么时间的电影,所有的记录根据前一页所选的电影来决定。在这里来选择电影院和上映时间.

  movie_id = Request(/"movie/")

  sqlQuery = /"SELECT title FROM movie WHERE Movie_id = /" & movie_id

  set rsMovie = conn.Execute(sqlQuery)

  movie_title = rsMovie(/"title/")

  :

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/webkaifa/)

  sqlQuery = /"SELECT [name], [time], [show_id] FROM Show, Theater /" &_

  /"WHERE show.movie_id = /" & movie_id &_

  /" AND theater.theater_id = show.theater_id/"

  set rsShows = conn.Execute(SQLquery)

  如果你仔细研究了这个代码,你就会想用Session来保存电影信息,再在这页进行查询更简单。同样很不幸,Session是需要cookies的支持,虽说在WAP规范中也是被支持的,但是在Nokia 7110中也是不被支持,这就是说现在我们还不能把session用在WAP服务中。

  下面有一些有趣的事情:

   select name='show'

   %

  Do while not rsShows.eof

  response.write(/" option value='/" & rsShows(/"show_id/") & /"' /" & Left(rsShows(/"name/"),cutter) & /" (/" & rsShows(/"time/") & /")/" & /" /option /" &vbcrlf)

  rsShows.MoveNext

  loop %

   /select

  如果你对cutter变量感到疑惑,那么就有一些事让你哭笑不得

  Dim cutter

  if InStr(Request.ServerVariables(/"HTTP_USER_AGENT/"), /"Nokia7110/") then

  cutter = 12

  else

  cutter = 7

  end if

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/webkaifa/)

  这段代码根据不同的设备来显示选项。我们有充足的理由的这样做,Nokia Toolit 1.2仿真器喜欢把砍掉我的的选项到只有几个字符,而我们要显示电影名字和上映时间,所以我们就不得不减少电影名字的字符。在真的手机中不会出现这种问题,所以我们就必须先判断设备的类型.

  一旦我有机会(飞刀我很穷,没有钱,这是仅仅是遥远的梦想.......)在真的Nokia 7110上测试我的代码,我们会立即感到我们有比我们想像更大的屏幕。实际上,有些电影院的名字很古怪,而且这些长名字会占用很大屏幕空间,我们没有必要浪费这些显示空间,尽量把这些名字简化。

  票

  下一步就是让用户选择需要的票数.这部分的代码很像其它的部分。我将从数据库中查询相同的数据,因为Session不能在真正的WAP手机中使用,所以我必须对有些内容进行确认,看看是否还有座位出售.

  SQLquery = /"SELECT * FROM show WHERE Show_id = /" & show_id

  set rsShow = conn.Execute(SQLquery)

  :

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/webkaifa/)

  seats = rsShow(/"free_seats/")

  :

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/webkaifa/)

  if seats = 0 then

  Response.write(/"Sorry, no more seats/")

  rsShow.close

  set rsShow = nothing

  Response.write(/" /p /card /wml /")

  Response.end

  else

  if seats 6 then 'book up to 6 tickets or max available

  max_seats=6

  else

  max_seats = seats

  end if

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/webkaifa/)

  end if

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/webkaifa/)

  %

   %=movie_title% at % =theater_name%

   select name='ticket'

   %

  dim i

  i = 1

  Do while i = max_seats

  response.write(/" option value='/" & i & /"' /" & i & /" ticket(s)/" & /" /option /" &vbcrlf)

  i = i + 1

  loop %

   /sele

ct

  储存票数

  现在我们已经有了所有需要的数据了,我们得把它们保存起来:

  tickets = Request(/"ticket/")

  :

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/webkaifa/)

  free_seats = rsShow(/"free_seats/")

  :

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/webkaifa/)

  free_seats = free_seats - tickets

  :

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/webkaifa/)

  SQLUpdate = /"UPDATE Show /" &_

  /"SET Show.free_seats=/" & free_seats & /" /" &_

  /" WHERE Show_ID=/" & show_id

  conn.Execute(SQLupdate)

  SQLquery = /"SELECT max([Booking_ID]) as bookingnumber FROM booking/"

  Set rsBooking = conn.execute(SQLquery)

  maxbookid = rsBooking(/"bookingnumber/") + 1

  SQLinsert = /"INSERT INTO Booking ( show_id, booked_seats ) /" & _

  /"VALUES ('/" & show_id & /"', '/" & tickets & /"')/"

  conn.Execute(SQLinsert) %

  You have booked %=tickets% ticket(s) for %=movie_title% br /

  The show will take place at %=theater_name% ( %=time% )

   br /

  Your reference number is %=maxbookid%

  下面是显示:

  Figure 4:完成交易.

  交易已经完成了,电影院可以坐着电影院门口收钱了.

  结论

  WAP现在才刚刚走出它的第一步,然而它是最近几年内最有革命性的IT发展之一。在这篇文章中我介绍了怎样用asp写WAP应用程序,并对你们提出了一些警告,希望对你们以后的发展有用。多媒体技术依然不能太多的用于WAP,但是它的可移动性却是重要的,也为商家提供了不少的商机。

来源:http://www.tulaoshi.com/n/20160219/1604330.html

延伸阅读
标签: Web开发
一、首先需要配置WEB服务器 在设计WAP网页时不论你使用的WAP开发工具是UP.SDK 或NOKIA WAP TOOKIT 或者ERICSSON WAPIDE,你都必须进行WEB服务器设置,故在此将常见的几种WEB服务器的设置介绍如下:(这里用的是Tomcat4.0,即Apache Web Server.设置方法如下:) 环境:Apache Web Server on NT OR Solaries OR LINUX OR OTHER UN...
标签: ASP
  用ASP发 WAP MAIL需要以下两个文件: default.asp <% Response.Buffer = True Response.ContentType = "text/vnd.wap.wml" Response.Write "<?xml version=""1.0% <wml   <card id="Intro" title="e8899.com' WAP Mail"     <p align="...
在上面的文章里面我提到了Page.IsPostBack属性的一个应用,可以用来保存用户输入的 信息,下面我将介绍它的另外一个用处,那就是取代ASP中的RS(Remote Scripting)技术。 至于RS的基本概念和用法我已经在asp版里面有很多介绍了,它主要的优势就是在不刷新 当前页面的情况下和服务器端进行通信。但是由于它的底层是使用了java技术,所以它用 起来...
标签: ASP
  mail.asp <% Response.Buffer = True Response.ContentType = "text/vnd.wap.wml" Response.Write "<?xml version=""1.0 %     <%     Set Mail = Server.CreateObject("Persits.MailSender")   '------------------------------------...
标签: Web开发
为了提高网站首页的性能,首页凡是需要调用数据库显示数据的地方都会先试图从缓存中调用数据,如果缓存中没有可用数据再打开数据库取出记录集,为了让页面显示数据和数据库在一定时间内同步,我们把缓存的过期时间设置成30秒。 声明:缓存管理类出自于动网论坛7.0 注意:最好不要在缓存里直接缓存带状态的对象和MTA模式的对象,比如说...

经验教程

319

收藏

16
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部