WAP中的ASP技术之六

WAP中的ASP技术

选择电影院和上映时间

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

movie_id = Request("movie")

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

set rsMovie = conn.Execute(sqlQuery)

movie_title = rsMovie("title")

:

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

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

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

 票

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

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

set rsShow = conn.Execute(SQLquery)

:

seats = rsShow("free_seats")

:

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

end if

% >

< %=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 % >

< /select >

储存票数

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

tickets = Request("ticket")

:

free_seats = rsShow("free_seats")

:

free_seats = free_seats - tickets

:

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,但是它的可移动性却是重要的,也为商家提供了不少的商机。 

时间: 2024-11-02 14:59:01

WAP中的ASP技术之六的相关文章

WAP中的ASP技术之一

WAP中的ASP技术 第一节:WAP的潜能 这些日子,我们常听到WAP技术,一种手机上网的技术.从技术上讲,移动电话不可能和PC来竞争,移动电话的屏幕只能容下很少的字符,它的带宽也是很受限制,而且输入也很笨拙.那我为什么还要 介绍它了,嘿嘿,这里有两个主要的我认为WAP一定有成功的因素. 随处性: 只要你有手机,你到哪里都可以访问wap网站. 帐单机构: 在不久的将来,我们就能通过我们的手机来支付我们的一切费用,查询很多的信息.只是我们的手机费用中又多了一项费用"WAP服务费". 这样

WAP中的ASP技术之二

WAP中的ASP技术 第二节:WAP基础 WAP (Wireless Application Protocol) v1.1是一种开放性规范,它试图规范移动电话访问信息和服务行业.这个规范是由WAP Forum来开发的,一个民间组织.1.2版本的WAP协议将会被认为是最后的WAP规范. 关于wap最基本的概念就是重复利用internet协议,这个协议必须很清楚地在现有的技术上轻松地调用wap服务. WAP协议利用一种很像我们电脑网络的分层结构.较低层次不太像我们常用的web应用,但是顶层还是我们的

WAP中的ASP技术之三

WAP中的ASP技术 第三节:WML 尽管我已经讲解了手机与服务器的通讯,但是真正的客户端不是手机.一个软件(wap gateway),实际上允当了这个角色.它将手机的请求转换为HTTP请求,同时也将服务器的回应返回给手机,WML文件此时就被WAP GateWay编译成二进制文件.尽管有些WAP geteway能够将HTML直接转换为WML,但是也不要指望它们能任意地将HTML转换为我们在手机上能看懂的东东. 当然,仿真器就不需要WAP gateway来工作了,它会直接从服务器下载WML文件(或

WAP中的ASP技术之四

WAP中的ASP技术 WML基本的语言 "p" element 作用与HTML一样,只是如果你想显示文字这个就是必须的. "do" element 实际上每个WAP应用必须支持导航条.do标签最主要的type属性的值就是accept,这个意味着当你按下软键一个新的选项会被加到列表中来.label属性指定显示的文字.另外是一些选项: go - 导航到另外一个卡片或板块中去.他需要href 属性. prev - 导航到上一个卡片中去 refresh - 刷新显示. no

WAP中的ASP技术之五

WAP中的ASP技术 第四节:另一种预订你电影票的方法 在上一节中,我讲解了最基本的WAP和WML的概念,这一节我们就来看看ASP和WAP是如何结合的. 现在在奥斯陆,电影院提供了一种基于电话系统的来销售门票,这个系统是很复杂的,还必须给用户一些说明才能指导用户买票,而且用户还必须在报纸上找到某种电影的代码,这个很烦,我们来介绍另一种方法. 这里这将给你展示一个简单的让手机用户订票的WAP应用:一个肯定让人叫好的服务.用户不必记住那些烦人的代码,他们能够直接从菜单中选取电影和电影院,并且用户也不

WAP中的ASP技术(一)

飞刀 eNet学院 第一节: WAP的潜能 这些日子,我们常听到WAP技术,一种手机上网的技术.从技术上讲,移动电话不可能和PC来竞争,移动电话的屏幕只能容下很少的字符,它的带宽也是很受限制,而且输入也很笨拙.那我为什么还要 介绍它了,嘿嘿,这里有两个主要的我认为WAP一定有成功的因素. 随处性: 只要你有手机,你到哪里都可以访问wap网站. 帐单机构: 在不久的将来,我们就能通过我们的手机来支付我们的一切费用,查询很多的信息.只是我们的手机费用中又多了一项费用"WAP服务费". 这样

WAP中的ASP技术(二)

飞刀 eNet学院 WML基本的语言 "p" element 作用与HTML一样,只是如果你想显示文字这个就是必须的. "do" element 实际上每个WAP应用必须支持导航条.do标签最主要的type属性的值就是accept,这个意味着当你按下软键一个新的选项会被加到列表中来.label属性指定显示的文字.另外是一些选项: go - 导航到另外一个卡片或板块中去.他需要href 属性. prev - 导航到上一个卡片中去 refresh - 刷新显示. noo

WAP中的ASP技术(三)

在上一节中,我讲解了最基本的WAP和WML的概念,这一节我们就来看看ASP和WAP是如何结合的. 第四节:另一种预订你电影票的方法 现在在奥斯陆,电影院提供了一种基于电话系统的来销售门票,这个系统是很复杂的,还必须给用户一些说明才能指导用户买票,而且用户还必须在报纸上找到某种电影的代码,这个很烦,我们来介绍另一种方法. 这里这将给你展示一个简单的让手机用户订票的WAP应用:一个肯定让人叫好的服务.用户不必记住那些烦人的代码,他们能够直接从菜单中选取电影和电影院,并且用户也不需要认证.在这个例子中

WAP中的ASP技术(四)

选择电影院和上映时间 这部分代码让用户来选择看什么时间的电影,所有的记录根据前一页所选的电影来决定.在这里来选择电影院和上映时间. movie_id = Request("movie") sqlQuery = "SELECT title FROM movie WHERE Movie_id = " & movie_id set rsMovie = conn.Execute(sqlQuery) movie_title = rsMovie("title&