欢迎光临
我们一直在努力

WAP中的ASP技术(四)

建站超值云服务器,限时71元/月

选择电影院和上映时间

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

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,但是它的可移动性却是重要的,也为

商家提供了不少的商机。

赞(0)
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com 特别注意:本站所有转载文章言论不代表本站观点! 本站所提供的图片等素材,版权归原作者所有,如需使用,请与原作者联系。未经允许不得转载:IDC资讯中心 » WAP中的ASP技术(四)
分享到: 更多 (0)

相关推荐

  • 暂无文章