WAP中的ASP技术(三)

在上一节中,我讲解了最基本的WAP和WML的概念,这一节我们就来看看ASP和WAP是如何结合的.

第四节:另一种预订你电影票的方法

现在在奥斯陆,电影院提供了一种基于电话系统的来销售门票,这个系统是很复杂的,还必须给用户一些说明才能指导用户买票,
而且用户还必须在报纸上找到某种电影的代码,这个很烦,我们来介绍另一种方法。

这里这将给你展示一个简单的让手机用户订票的WAP应用:一个肯定让人叫好的服务。用户不必记住那些烦人的代码,他们能够直接
从菜单中选取电影和电影院,并且用户也不需要认证。在这个例子中用户被要求在电影开始前40分钟交费,但是在真正的生活中,
用户同样可以通过手机来结帐.

此应用程序想像的条件是一个电影能够在同一时间在多个电影院上映,一个电影院不同的时间上演不同的电影。

这里我没有过多的考虑错误处理的问题,因为这不是本章节的重点,你喜欢你可以自己加上.

为了简单,我使用了Access 97来做为数据库,当然真正的系统不会用它了,其它的数据库如SQL Server,也不必改动多少代码.

数据库图表

数据库图表

.Movie 和Theater表是显然需要的。Show表用于追踪现在还有多少空位可以出售。

怎样调试这个程序

为了访问这个WAP服务,你需要一个WAP仿真器,这个程序主要是在Nokia Toolkit 1.2上调试,详细情况请查看上一章节。

选择电影

在list表中选择一个电影:

这里是代码:

<!--#include file="conn.asp" --><%

'send the right MIME type

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>

在进入下一个card以前会有一个闪烁的屏幕来显示一个图片WBMP一种新的格式。这个事件是由timer属性决定的,这里我们设置的
时间为5秒.ontimer事件引发后将带你去另一个card.(wmbp的photoshop插件可以从网上免费下载).

<card id="splash" ontimer="#card1" title="Welcome to">

<timer value="50"/>

<p align="center">

<br />

<img src="pix/logo.wbmp" alt="WAP movies"/>

</p>

</card>

<card id="card1" title="choose a film">

<%

sqlQuery = "SELECT [Movie_ID], [title] FROM Movie"

set rsMovies = conn.Execute(SQLquery)

:

%>

<p>

<select name='movie'>

<%

Do while not rsMovies.eof

response.write("<option value='" & rsMovies("Movie_ID") & "'>" & rsMovies("title") & "</option>" & vbcrlf)

rsMovies.MoveNext

loop %>

</select>

这一部分是本文的焦点。从数据库中读出需要的数据显示出来,作为一个asp程序员,这个没有什么特别的,但是就是这个简单的程
序现在被用于一种全新的服务器就显得不一样了。这也使得我更加认为在基于WML的商业站的网络编程asp更胜于Java servlet.

<small>

<anchor title="next!">Next

<go href="step2.asp" method="get">

<postfield name="movie" value="$(movie)" />

</go>

</anchor>

</small>

</p>

表单的提交也可以通过软开关函数(do 和 anchor)来完成。在这里,我是通过简单的内嵌链接来完成的,因为我觉得这样能够使用
户感觉直观和友好。Postfields大至和HTML中的hidden差不多,但是wml的变量不像html中的那样需要在javascript中传送,它
可以直接写在wml中,这一点上一节已经讲解了.在这里的传递的方法是get,post方法在WAP的规范也是被支持的,仿真器也能识别
它,但是很不幸,在Nokia 7110中,这个post不被支持,所以你没得选择.

时间: 2024-08-22 06:12:35

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技术之六

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

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技术(四)

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