ASP编程:WAP中的ASP手艺之五
ASP最大的缺点在于网络的安全性和可靠性,企业将经营数据放在开放的平台上,最大的担忧就是如何保证这些数据不被其他人破坏。WAP中的ASP手艺第四节:另外一种预订你影戏票的办法
在上一节中,我解说了最基础的WAP和WML的观点,这一节我们就来看看ASP和WAP是怎样分离的.
如今在奥斯陆,影戏院供应了一种基于德律风体系的来发卖门票,这个体系是很庞大的,还必需给用户一些申明才干引导用户买票,并且用户还必需在报纸上找到某种影戏的代码,这个很烦,我们来先容另外一种办法。
这里这将给你展现一个复杂的让手机用户订票的WAP使用:一个一定让人喝采的服务。用户不用记着那些烦人的代码,他们可以间接从菜单当选取影戏和影戏院,而且用户也不必要认证。在这个例子顶用户被请求在影戏入手下手前40分钟交费,可是在真实的生存中,用户一样能够经由过程手机来结帐.
此使用程序想像的前提是一个影戏可以在统一工夫在多个影戏院上映,一个影戏院分歧的工夫演出分歧的影戏。
这里我没有过量的思索毛病处置的成绩,由于这不是本章节的重点,你喜好你能够本人加上.
为了复杂,我利用了Access97来做为数据库,固然真实的体系不会用它了,别的的数据库如SQLServer,也不用修改几代码.
数据库图表
数据库图表
.Movie和Theater表是明显必要的。Show表用于追踪如今另有几空位能够出卖。
如何调试这个程序
为了会见这个WAP服务,你必要一个WAP仿真器,这个程序次要是在NokiaToolkit1.2上调试,具体情形请检察上一章节。
选择影戏
在list表当选择一个影戏:
这里是代码:
<!--#includefile="conn.asp"--><%sendtherightMIMEtype
Response.ContentType="text/vnd.wap.wml"
第一件事就是声明wml,仿真器怎样不在准确的中央声明XML,它是不会承受WML的只管Nokia7110能够疏忽这一点,可是不克不及包管别的的手机也行,以是你不能不做这事。一样你也得设置好MIME范例。
<?xmlversion="1.0"?>
<!DOCTYPEwmlPUBLIC"-//WAPFORUM//DTDWML1.1//EN""http://www.wapforum.org/DTD/wml_1.1.xml">
<wml>
在进进下一个card之前会有一个闪灼的屏幕来显现一个图片WBMP一种新的格局。这个事务是由timer属性决意的,这里我们设置的工夫为5秒.ontimer事务激发后将带你往另外一个card.(wmbp的photoshop插件能够从网上收费下载).
<cardid="splash"ontimer="#card1"title="Welcometo"><timervalue="50"/>
<palign="center">
<br/>
<imgsrc="pix/logo.wbmp"alt="WAPmovies"/>
</p>
</card>
<cardid="card1"title="chooseafilm">
<%
sqlQuery="SELECT,FROMMovie"
setrsMovies=conn.Execute(SQLquery)
:
%>
<p>
<selectname=movie>
<%
DowhilenotrsMovies.eof
response.write("<optionvalue="&rsMovies("Movie_ID")&">"&rsMovies("title")&"</option>"&vbcrlf)
rsMovies.MoveNext
loop%>
</select>
这一部分是本文的核心。从数据库中读出必要的数据显现出来,作为一个asp程序员,这个没有甚么出格的,可是就是这个复杂的程序如今被用于一种全新的服务器就显得纷歧样了。这也使得我加倍以为在基于WML的贸易站的收集编程asp更胜于Javaservlet.
<small><anchortitle="next!">Next
<gohref="step2.asp"method="get">
<postfieldname="movie"value="$(movie)"/>
</go>
</anchor>
</small>
</p>
表单的提交也能够经由过程软开关函数(do和anchor)来完成。在这里,我是经由过程复杂的内嵌链接来完成的,由于我以为如许可以利用户感到直不雅和友爱。Postfields年夜至和HTML中的hidden差未几,可是wml的变量不像html中的那样必要在javascript中传送,它能够间接写在wml中,这一点上一节已解说了.在这里的传送的办法是get,post办法在WAP的标准也是被撑持的,仿真器也能辨认它,可是很不幸,在Nokia7110中,这个post不被撑持,以是你没得选择.
使用filesystemobject,可以对服务器上的文件进行操作,浏览、复制、移动、删除等。有ado的支持,asp对数据库的操作非常得心应手。你甚至可以像使用本地数据库那样,管理远程主机上的数据库,对表格、记录进行各种操作。 用户端的浏览器不需要提供任何别的支持,这样大提高了用户与服务器之间的交互的速度。 还有如何才能在最短的时间内学完?我每天可以有效学习2小时,双休日4小时。 代码逻辑混乱,难于管理:由于ASP是脚本语言混合html编程,所以你很难看清代码的逻辑关系,并且随着程序的复杂性增加,使得代码的管理十分困难,甚至超出一个程序员所能达到的管理能力,从而造成出错或这样那样的问题。 我想问如何掌握学习节奏(先学什么再学什么)最好详细点? 封装性使得代码逻辑清晰,易于管理,并且应用到ASP.Net上就可以使业务逻辑和Html页面分离,这样无论页面原型如何改变,业务逻辑代码都不必做任何改动;继承性和多态性使得代码的可重用性大大提高。 它可通过内置的组件实现更强大的功能,如使用A-DO可以轻松地访问数据库。 不能只是将它停留在纸上谈兵的程度上。 用户端的浏览器不需要提供任何别的支持,这样大提高了用户与服务器之间的交互的速度。
页:
[1]