当前位置: 首页 > 图文教程 > 网络编程 > ASP > ASP实用大全-实战ASP(6)

ASP
在线实时开通FTP&WEB
对文件的操作--建立移动删除文件夹
利用FSO取得BMP,JPG,PNG,GIF文件信息
三种禁用FileSystemObject组件的方法
在线修改Serv-U 4.2用户密码
asp 中常用的文件处理函数
FSO+递归生成文件列表(xml)
文件遍历排序函数
清空iis log 中自己登录ip的vbs
NAV导致IIS调用FSO失败的解决方法
构建免受 FSO 威胁虚拟主机(三)
构建免受 FSO 威胁虚拟主机(二)
构建免受 FSO 威胁虚拟主机(一)
类似于iis浏览的功能
巧用FileSystem组件实现WEB应用中的本地特定打印
ASP中FSO对象对IIS WEB服务器数据安全的威胁及对策
文件的读出 编辑 管理
怎样判断一个盘上是否有文件
用ASP实现对MP3曲目信息的操作
关于用ADO STREAM做的无组件上传程序简单介绍

ASP实用大全-实战ASP(6)


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-03   浏览: 122 ::
收藏到网摘: n/a

使用WML和ASP编写动态手机页面

    

 ASP与WAP结合能够生成丰富的动态的WML网页,可以给WAP手机带来许多有趣的内容。那么如何使他们两者有机的结合来生成动态网页呢?在本文中,我就想介绍一下如何使用ASP开发一个动态生成WML的应用程序。比如说,现在手机的电子银行被炒得很火,那么我们如何去建立这样一个应用程序呢?在这里我不想讨论整个电子银行的建立,因为那样内容太庞大,超出了我能介绍的范围,在这里我只想介绍一下,如何使用ASP建立一个应用程序来检查用户的收支平衡情况。考虑到它的安全性,我们要使用WTLS,但这个问题比较复杂,只能等以后就机会再探讨了。我们要把精力放在如何使用ASP来实现动态网页上。

  说了这么多废话,让我们开始吧!假设银行账户信息被保存在SQL数据库中,如果使用相应的网络连接,就可以进入我们的系统。在本文的例子中,为了简化我们让账户信息非常的小(事实上不是这样的):只包括账户号;客户名,安全密码和账户收支平衡情况,在一个表中(tbl_account_info),有四个域分别对应为accountno,custname,accountpin和accountbal。

  下面,我想简单的谈谈编程思路:首先,用户进入我们的系统界面,输入他们的账号和安全密码(如图1),在验证完这些登录信息以后,我们允许用户登录进入系统,我们将给出欢迎语,并把用户名和账户上的收支平衡状况输出出来!



     图1


  这就是大体的开发思路,好,现在我们就可以根据这个思路进行编程了。我有个习惯,在我编写动态的程序代码时,我先把静态的代码写出来,然后才试着把动态的代码写出。在本文中我也将采用这种方法。

  首先,在代码的第一部分,我们将要建立一个页面用来用来接收用户的登录信息。(如图1)

  请注意下面这段代码,这些代码都是最基本的WML代码:

<% Response.ContentType = "text/vnd.wap.wml" %>
<?xml version="1.0" encoding="gb2312"?>//注意这一句,如果想要显示中文,必须要加入encoding="gb2312"
<!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN"
"http://www.wapforum.org/DTD/wml_1.1.xml">
<wml>
<card id="login" title="WAP 电子银行">
<p>
欢迎来到WAP 电子银行 <br/>
请输入账号: <input name="accountno" type="text" maxlength="6" />
安全密码: <input name="accountpin" type="password" maxlength="4" />
<do type="accept" label="Check Bal">
<go href="checkbal.asp" method="post">
<postfield name="accountno" value="$Accountno" />
<postfield name="accountpin" value="$Accountpin" />
</go>
</do>
</p>
</card>

建立好接收用户登录信息页面以后,我们就要验证用户填充的信息是否非法,如账号没有满相应的位数,安全密码没有填等等,这些步骤一般都是在客户端进行的,从而使使用无线通讯联接进行的处理过程达到最小程度,以缓解因通讯拥挤引起的通讯中断。因为手机毕竟不同于普通的PC机,它的带宽比较小,连接比较慢。

  好,下一步我们就要真正的联接数据库了,我们要发出一个标准的SQL请求语句,然后服务器会返回一个记录集,我们处记录集中把我们需要的信息抽取出来,然后再下一个页面相应的域中显示出来。这些都是动态的内容:从用户那里取得请求信息,然后给他们显示他们想要获得的动态信息,这样就做到了"手机信息的个性化"。请看代码:

<card id="Login" title="WAP 电子银行">
<p>
<%
txtSQL = "SELECT * FROM tbl_account_info WHERE accountno='"
Request.Form("AccountNo") & "' AND accountpin='"
Request.Form("AccountPIN") & "'"
set rs = conn.Execute(txtSQL)
if rs.EOF then
Response.Write "Invalid Login"
Response.Write "<do type='accept' label='Retry'>"
Response.Write " <go href='index.asp'/>"
Response.Write "</do>"
else
Response.Write "您好, " & rs.Fields("custname") & "先生" <br/>"
Response.Write"您的余额为¥" & rs.Fields("accountbal")
%>

在从服务器上取得回信息以后,我们就将这些信息显示出来:如图2




  好