明辉手游网中心:是一个免费提供流行视频软件教程、在线学习分享的学习平台!

银行网站应用方案

[摘要]这篇文章介绍银行网站应用设计,包括银行线上查询系统、信用卡线上查询系统等应用的点子、设计实例、以及详细解说,让您快速地设计出各种银行的网站应用。银行网站资料库应用银行使用网站资料库,可以透过Inte...

这篇文章介绍银行网站应用设计,包括银行线上查询系统、信用卡线上查询系统等应用的点子、设计实例、以及详细解说,让您快速地设计出各种银行的网站应用。

银行网站资料库应用
银行使用网站资料库,可以透过Internet、或Intranet提供以下的应用∶
* 银行线上查询*
* 信用卡线上查询*
右上角标示*的应用,本节将提供设计的范例,并详加解说。
执行本章资料库的范例,所用的资料库可为Microsoft Access、Microsoft SQL Server、或Text档案(读者可修改成其他支援ODBC的资料库,详见1-6-5节),须於NT安装IIS 3.0,并於「控制台」中的「ODBC」,新建一个名称为「BookSamp」的资料来源,驱动程式为「Microsoft Access Driver」、「SQL Server」、或「Microsoft Text 驱动程式」。详见附录 范例磁片。

1
银行线上查询系统
「银行线上查询系统」,可以透过Internet,提供查询银行存款等多项的功能。
透过Internet,连线上「银行线上查询系统」,输入帐户号码与密码,即可查询银行存款馀额、存提款明细表、外币汇率、转帐、存贷款利率、贷款,以及金融卡遗失申报等金融服务。
设计实例
让我们执行一个实例。
( 范例 data3.asp 银行馀额线上查询系统
若要查询资料,於用户端使用浏览器,浏览本书所附安装於网站伺服器的data3.asp,於「帐户号码」处输入帐户号码,譬如输入帐户号码123456789後,按下「馀额线上查询」按钮,即可显示查询的结果如下,包括帐户号码、姓名、银行馀额∶ 
输入错误的帐户号码时,必须告诉人家,譬如输入帐户号码123451234,显示「找不到」如下∶ 

设计实例详细解说
建立资料表
首先使用Microsoft Access、Microsoft SQL Server 、Text档案、或任何一种支援ODBC的资料库,建立一个资料表Bank。
於栏名ID、NAME、MONEY,分别输入帐户号码、姓名、银行馀额的资料。
使用Microsoft Access建立一个资料表Bank,如下∶ 
或使用Microsoft SQL Server建立一个资料表Bank,如下∶ 
或使用Text档案建立一个资料表Bank,如下∶ 

设计输入表单
接著,设计输入表单form,以让客户输入帐户号码ID1,按下「馀额线上查询」按钮submit时,即使用POST的方式将输入资料传送到网站伺服器,并执行於「form action=...」所设定的data3.asp档案(与form为同一个ASP档案),程式码如下∶
<form action="data3.asp" method="post"> 
帐户号码: <INPUT TYPE=TEXT VALUE="123456789" NAME=ID1 SIZE=10>
<INPUT TYPE=submit VALUE="馀额线上查询" name="Action">
</form>
网站伺服器执行data3.asp档案,首先经由Request.Form("ID1")取得客户所输入的帐户号码ID1,若ID1非空白时,表示为表单输入所呼叫执行。
查询资料库
使用「Server.CreateObject」建立连线的物件,并使用「Open」开启待存取查询资料库BookSamp。
再使用SELECT的SQL指令查询资料库的资料,设定SQL指令,查询为ID符合帐户号码Request.Form("ID1")的资料,下个「Execute」指令,即可开始执行存取查询资料库的动作,并将查询结果储存到RecordSets物件RS。
程式码如下∶
<%
IF Request.Form("ID1") THEN
Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open "BookSamp","sa","" 

SQL = "SELECT ID,NAME,MONEY FROM Bank WHERE ID=" & Request.Form("ID1") 
Set RS = Conn.Execute(SQL)
接著,要显示查询的结果了。
首先,由「 IF RS.EOF THEN ...」判断是否找到ID为帐户号码Request.Form("ID1")的资料,若RS.EOF为TRUE,则显示「找不到此帐户号码」。
程式码,如下∶
查询结果:<br>
<% IF RS.EOF THEN %>
<FONT COLOR="#FF0000">找不到此帐户号码 <% =Request.Form("ID1") %> !</FONT>
若找到ID为帐户号码Request.Form("ID1")的资料,则显示查询的结果,包括帐户号码、姓名、银行馀额,分别由RecordSets物件的RS(0)、RS(1) 、RS(2) 取得。
RS.Fields.Count表示RecordSets物件的栏位数,由「For i = 0 to RS.Fields.Count - 1」取得RS(i) 各栏位的资料。配合<TABLE>表格的HTML语法,将结果填入表格的各栏位当中。
若还有下一笔资料,使用RS.MoveNext移到下一笔的位置。
程式码,如下∶
<% ELSE %>
<FONT COLOR="#0000FF">
帐户号码 <% =Request.Form("ID1") %> <BR>
<% =RS(1) %>, 您的银行馀额为 <% =RS(2) %> !<BR>
</FONT>
<TABLE COLSPAN=8 CELLPADDING=5 BORDER=1>
<TR>
<TD BGCOLOR="#800000"><FONT>帐户号码</FONT></TD>
<TD BGCOLOR="#800000"><FONT>姓名</FONT></TD>
<TD BGCOLOR="#800000"><FONT>银行馀额</FONT></TD>
</TR> 
<% Do While Not RS.EOF %>
<TR> 
<% For i = 0 to RS.Fields.Count - 1 %>
<TD BGCOLOR="f7efde" VALIGN=TOP><FONT COLOR="#0000"><% = RS(i) %></FONT></TD> 
<% Next %>
</TR> 
<%
RS.MoveNext
Loop
RS.Close
Conn.Close
%>
</TABLE> 
<% END IF %>
最後,使用RS.Close关闭RecordSet,使用Conn.Close关闭资料库。
全部的程式码,如下∶
<HTML>
<HEAD>
<TITLE>银行馀额线上查询系统</TITLE>
<META HTTP-EQUIV="content-type" CONTENT="text/html;charset=big5">
</HEAD>
<CENTER>
<BODY BGCOLOR=#FFFFFF>
<FONT SIZE=+2 COLOR="#0000FF">银行馀额线上查询系统</FONT> 
<%
IF Request.Form("ID1") THEN
Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open "BookSamp","sa","" 
SQL = "SELECT ID,NAME,MONEY FROM Bank WHERE ID=" & Request.Form("ID1") 
Set RS = Conn.Execute(SQL)
%> 
<HR>
查询结果:<br> 
<% IF RS.EOF THEN %>
<FONT COLOR="#FF0000">找不到此帐户号码 <% =Request.Form("ID1") %> !</FONT> 
<% ELSE %>
<FONT COLOR="#0000FF">
帐户号码 <% =Request.Form("ID1") %> <BR>
<% =RS(1) %>, 您的银行馀额为 <% =RS(2) %> !<BR>
</FONT>
<TABLE COLSPAN=8 CELLPADDING=5 BORDER=1>
<TR>
<TD BGCOLOR="#800000"><FONT>帐户号码</FONT></TD>
<TD BGCOLOR="#800000"><FONT>姓名</FONT></TD>
<TD BGCOLOR="#800000"><FONT>银行馀额</FONT></TD>
</TR> 
<% Do While Not RS.EOF %>
<TR> 
<% For i = 0 to RS.Fields.Count - 1 %>
<TD BGCOLOR="f7efde" VALIGN=TOP><FONT COLOR="#0000"><% = RS(i) %></FONT></TD> 
<% Next %>
</TR>
<%
RS.MoveNext
Loop
RS.Close
Conn.Close
%> 
</TABLE> 
<% END IF %>
<HR>
<% END IF %> 
<BR> 
<form action="data3.asp" method="post"> 
帐户号码: <INPUT TYPE=TEXT VALUE="123456789" NAME=ID1 SIZE=10>
<INPUT TYPE=submit VALUE="馀额线上查询" name="Action">
</form>
<HR>
</CENTER>
</BODY>
</HTML>

2
信用卡线上查询系统
「信用卡线上查询系统」,可以透过Internet,提供线上查询信用卡等多项的功能。
透过Internet,连线上「信用卡线上查询系统」,输入信用卡号码,即可查询信用卡消费明细表、消费额度、累积点数,以及促销活动、线上购物、信用卡申请、信用卡申报遗失等服务。
设计实例
让我们执行一个实例。
( 范例data9.asp 信用卡消费线上查询
若要查询资料,於用户端使用浏览器,浏览本书所附安装於网站伺服器的data1.asp,於「信用卡号」处输入信用卡号,譬如信用卡号1234567890123456後,按下「查询消费明细」按钮,即可显示查询的结果如下,包括日期、姓名、消费明细、消费金额∶ 
若无消费时,譬如输入信用卡号1234567890000000,显示「无消费」如下∶ 

设计实例详细解说
建立资料表
首先使用Microsoft Access、Microsoft SQL Server 、Text档案、或任何一种支援ODBC的资料库,建立一个资料表CreditCard。
於栏名DATE、ID、NAME、DETAILS、QTY、AMOUNT分别输入消费日期、信用卡号、姓名、消费明细、数量、消费金额的资料。
使用Microsoft Access建立一个资料表CreditCard,如下∶∶ 
或使用Microsoft SQL Server建立一个资料表CreditCard,如下∶ 
或使用Text档案建立一个资料表CreditCard,如下∶ 

设计输入表单
接著,设计输入表单form,以让查询者输入信用卡号ID1,按下「查榜」按钮submit时,即使用POST的方式将输入资料传送到网站伺服器,并执行於「form action=...」所设定的data9.asp档案(与form为同一个ASP档案),程式码如下∶
<form action="data9.asp" method="post"> 
信用卡号: <INPUT TYPE=TEXT VALUE="1234567890123456" NAME=ID1 SIZE=16>
<INPUT TYPE=submit VALUE="查询消费明细" name="Action">
</form>
网站伺服器执行data9.asp档案,首先经由Request.Form("ID1")取得查询者所输入的信用卡号ID1,若ID1非空白时,表示为表单输入所呼叫执行。
查询资料库
使用「Server.CreateObject」建立连线的物件,并使用「Open」开启待存取查询资料库BookSamp。
再使用SELECT的SQL指令查询资料库的资料,设定SQL指令,查询为ID符合信用卡号Request.Form("ID1")的资料,下个「Execute」指令,即可开始执行存取查询资料库的动作,并将查询结果储存到RecordSets物件RS。
程式码如下∶
<%
IF Request.Form("ID1") THEN
Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open "BookSamp","sa","" 
SQL = "SELECT DATE,NAME,DETAILS,AMOUNT FROM CreditCard WHERE ID=" & Request.Form("ID1") 
Set RS = Conn.Execute(SQL)
%>
接著,要显示查询的结果了。
首先,由「 IF RS.EOF THEN ...」判断是否找到ID为信用卡号Request.Form("ID1")的消费资料,若RS.EOF为TRUE,则显示「信用卡号...无消费!」。
程式码,如下∶
信用卡消费查询结果:<br>
<% IF RS.EOF THEN %>
<FONT COLOR="#0000FF">信用卡号 <% =Request.Form("ID1") %> 无消费!</FONT>
若ID为信用卡号Request.Form("ID1")的消费资料,则显示查询的结果,包括日期、姓名、消费明细、消费金额,分别由RecordSets物件的RS(0)、RS(1) 、RS(2)、RS(3) 取得。
RS.Fields.Count表示RecordSets物件的栏位数,由「For i = 0 to RS.Fields.Count - 1」取得RS(i) 各栏位的资料。配合<TABLE>表格的HTML语法,将结果填入表格的各栏位当中。
总计消费金额的计算,RS(3)为消费金额,由「IF i = 3 THEN... TOTAL = TOTAL + RS(3)」将所有RS(3) 的消费金额加总,以得到总计的和。
若还有下一笔资料,使用RS.MoveNext移到下一笔的位置。
程式码,如下∶
<% ELSE %>
<FONT COLOR="#FF0000">
信用卡号 <% =Request.Form("ID1") %> <BR>
<% = RS(1) %> 先生(小姐), 您上个月的消费明细表, 详见下表:<BR>
</FONT>
<TABLE COLSPAN=8 CELLPADDING=5 BORDER=1>
<TR>
<TD ALIGN=CENTER BGCOLOR="#800000"><FONT>日期</FONT></TD>
<TD ALIGN=CENTER BGCOLOR="#800000"><FONT>姓名</FONT></TD>
<TD ALIGN=CENTER BGCOLOR="#800000"><FONT>消费明细</FONT></TD>
<TD ALIGN=CENTER BGCOLOR="#800000"><FONT>消费金额</FONT></TD>
</TR> 
<% TOTAL=0 %>
<% Do While Not RS.EOF %>
<TR> 
<% For i = 0 to RS.Fields.Count - 1 %> 
<% IF i = 3 THEN %>
<TD BGCOLOR="f7efde" ALIGN=RIGHT><FONT COLOR="#0000">$ <% = RS(i) %></FONT></TD>
<% Else %>
<TD BGCOLOR="f7efde" VALIGN=TOP><FONT COLOR="#0000"><% = RS(i) %></FONT></TD>
<% END IF %> 
<% Next %> 
</TR>
<% 
TOTAL = TOTAL + RS(3)
RS.MoveNext
Loop
RS.Close
Conn.Close
%>
</TABLE>
<BR>
总计: $ <% = TOTAL %>
<% END IF %>
最後,使用RS.Close关闭RecordSet,使用Conn.Close关闭资料库。
全部的程式码,如下∶
<HTML>
<HEAD>
<TITLE>信用卡消费 线上查询系统</TITLE>
<META HTTP-EQUIV="content-type" CONTENT="text/html;charset=big5">
</HEAD>
<CENTER>
<BODY BGCOLOR=#FFFFFF>
<FONT SIZE=+2 COLOR="#0000FF">信用卡消费 线上查询系统</FONT> 
<%
IF Request.Form("ID1") THEN
Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open "BookSamp","sa",""
SQL = "SELECT DATE,NAME,DETAILS,AMOUNT FROM CreditCard WHERE ID=" & Request.Form("ID1")
Set RS = Conn.Execute(SQL)
%>
<HR>
信用卡消费查询结果:<br> 
<% IF RS.EOF THEN %>
<FONT COLOR="#0000FF">信用卡号 <% =Request.Form("ID1") %> 无消费!</FONT> 
<% ELSE %>
<FONT COLOR="#FF0000">
信用卡号 <% =Request.Form("ID1") %> <BR>
<% = RS(1) %> 先生(小姐), 您上个月的消费明细表, 详见下表:<BR>
</FONT>
<TABLE COLSPAN=8 CELLPADDING=5 BORDER=1>
<TR>
<TD ALIGN=CENTER BGCOLOR="#800000"><FONT>日期</FONT></TD>
<TD ALIGN=CENTER BGCOLOR="#800000"><FONT>姓名</FONT></TD>
<TD ALIGN=CENTER BGCOLOR="#800000"><FONT>消费明细</FONT></TD>
<TD ALIGN=CENTER BGCOLOR="#800000"><FONT>消费金额</FONT></TD> 
</TR>
<% TOTAL=0 %> 
<% Do While Not RS.EOF %>
<TR> 
<% For i = 0 to RS.Fields.Count - 1 %>
<% IF i = 3 THEN %>
<TD BGCOLOR="f7efde" ALIGN=RIGHT><FONT COLOR="#0000">$ <% = RS(i) %></FONT></TD> 
<% Else %>
<TD BGCOLOR="f7efde" VALIGN=TOP><FONT COLOR="#0000"><% = RS(i) %></FONT></TD>
<% END IF %> 
<% Next %>
</TR> 
<%
TOTAL = TOTAL + RS(3)
RS.MoveNext
Loop
RS.Close
Conn.Close
%>
</TABLE>
<BR>
总计: $ <% = TOTAL %>
<% END IF %>
<HR>
<% END IF %> 
<BR> 
<form action="data9.asp" method="post"> 
信用卡号: <INPUT TYPE=TEXT VALUE="1234567890123456" NAME=ID1 SIZE=16>
<INPUT TYPE=submit VALUE="查询消费明细" name="Action">
</form>
<HR>
</CENTER>
</BODY>
</HTML>