📄 网络书店的编程思路.txt
字号:
ASP(Active Server Pages)是目前非常流行的开放式的Web服务器应用程序开发技术,它将脚本、超文本和强大的数据库访问功能结合在一起,并提供了众多的服务器组件用以创建分布式的和基于Web的商业化应用程序,它将成为今后Web开发的流行语言。
【系统需求】
网上书店是基于ASP开发的一套系统,正常使用该软件您必须保证您的服务器满足如下要求:
1. 运行环境:MS WINDOWS NT PACK 4 OR LATER /WIN2000 WITH IIS 4.0 或更高版本 /WIN9X+PWS
2. 数 据 库:Access2000、Access2002
3. 其 他:服务器必须安装 微软IE浏览器5.0+、IIS
推荐:Windows 2000 + IIS5.0 + Access2000 + IE6.0 环境测试
【系统特点】
本程序是目前网上最好的网上书店免费程序,整个网站结构清晰,界面简单但功能强大,没有多余的代码和文件,非常适合二次开发
结合注册后提供的资料非常适合用来学习建立大型电子网站
【功能简介】
本系统提供查询及在线购买的功能,有用户注册的功能,
多用户管理分权限发布、管理书籍资料。
大类小类两级无限制软件分类、无限制添加书籍资料。
资料批量删除、批量分类转移等批量管理功能。
采用交互性的订单处理方式
客户管理功能
会员制度,分VIP会员和一般会员,并提供不同的优惠
书本评论、管理功能。
完善而方便的书籍资料添加、编辑表单,无组件图片上传。
强大的搜索功能,可以按各个字段进行不同方式的高级搜索。
付款方式管理
【一些技术规则】
1,数据库命名约定
表命名约定:表名长度不能超过30个字符,单词首写字母大写,多个单词间不用连接符号。
字段命名约定:字段名尽量采用英文单词,单词首字母大写,单词之间用"_"隔开,命名规则是"表类别名_单词",如:User_Info,News_Content。
视图命名约定:采用规则View_表A_表B_表C,其中View表示"视图"。这个视图由几个表产生就用连字符"_"连接几个表的名,如果表过多可以将表名适当简化。
存储过程命名约定:P_表名_存取过程名(缩写),比如P_User_Deleted。
2,文件夹命名约定
公共文件夹:
/images 公共图片
/styles 样式表
/scripts 脚本
/ftps 下载
/doc 网站相关素材、文档
/readme.txt 网站说明文档
/helps.htm 网站帮助文档
/mylogs.txt 网站维护记录
其它栏目的命名,可以用拼音首字母简称,也可以用英文单词。全部文件夹的含义在readme.txt文件中说明。
3,对象及变量命名约定
每个变量名必须先定义,再使用。在ASP文件的最开头添加语句<%Option Explicit%>可以强制变量定义。代码块必须采用缩进格式。每个函数前必须标明函数的功能、输入参数、返回值的相关信息。
变量类型 缩写前缀
String str 或 s
Integer int
Date dt
Object obj或 o
Boolean bol或 b
Byte byt
Double dbl
Error err
Long lng
Single sng
【网上书店查询功能的实现】
一、 利用ASP和ADO实现数据库操作的工作流程
ASP内嵌了五个对象Resquest、Response、Server、Seesion、Application,实现信息的获取、传送及保存等。ADO的主要对象有Connection、Command、Recordset等。利用ADO的Connection 对象和ODBC的设定,可以建立与多种数据库(Informix、Oracle、Access等)的连接,从而实现数据的输入、查询、更新等操作。首先,利用ASP的Server对象的CreateObject方法创建一个ADO的对象实例,以ADO的Connection对象建立相应数据库与应用程序之间的联接;接着,通过Command对象将数据请求的SQL(Standard Query Language)标准描述语句指定到Command对象的属性,然后执行数据库的输入、查询等操作;最后,数据库服务器将响应的数据结果存储到Recordset对象,在服务器端的脚本语言环境中就可以加以处理、分析、显示数据于客户端浏览器上。
二、 实现数据输入、查询的实例
公司的分支机构众多、分布广泛,上级机构经常要对各基层机构的业务数据进行汇总,统计。以前主要是通过电话上报数据,然后手工汇总、统计,编制成报表。随着公司内部的联网,就可以将网络技术和数据库技术结合,将数据的汇总、统计实现自动化。以下将结合公司的实际,通过与Informix数据库的连接实现此功能:
1.创建数据库
在UNIX操作系统上创建一个用于数据汇总、统计的数据库,将数据库命名为cxdb,在此数据库上创建如下表:
Create table test
(
br char(6), #单位代码
dt date, #日期
sco book name,#书籍名称
)
2. 连接数据库
在WINDOWS98操作系统上,安装数据库连接驱动程序Informix-CLI,并运行Informix-CLI的SetNet32进行配置,然后运行Ilogin 32 Demo 测试配置是否正确。确认配置成功后,就可以对Web数据库实现各种操作了。在网页中加入如下语句,就能对UNIX端的数据库进行连接:
Set con=Server.CreateObject(“ADODB.Connection”)
Con.Open “Driver={INFORMIX-CLI 2.5 (32BIT)};Database=cxdb;Server=11.32.65.45;UID=;PWD=”
其中,Driver是数据库的连接驱动程序,其字符串要与ODBC驱动程序中的名称保持一致;Database是数据库名称;Server是数据库服务器主机的IP地址或名称,如果为名称则必须编辑hosts文件;UID是为用户名称;PWD为口令。
3.实现数据的输入、查询
为实现对数据的输入、查询功能,必须创建一个带有Form表单的文件,用来接受用户的数据输入及查询条件,利用POST方法将Form表单的数据提交给服务器进行处理。
编辑接受用户输入的文件input.asp,由用户输入“单位”、“日期”、“书籍名称“,当用户点击提交按钮时,通过POST方法将刚才输入的数据发送WEB服务器,并执行todb.asp文件在数据库cxdb中增加一条记录。其中,input.asp和todb.asp的源代码如下:
input.asp:
<HTML>
<HEAD>
<TITLE>输入数据</TITLE>
</HEAD>
<BODY>
<FORM method="POST" action="todb.asp">
<P>单位:<INPUT type="text" name="T1" size="20">
<P>日期:<INPUT type="text" name="T2" size="20">
<P>书籍名称:<INPUT type="text" name="T3" size="20">
<p><INPUT type="submit" value="提交" name="B1">
<INPUT type="reset" value="重写" name="B2">
</FORM>
</BODY>
</HTML>
todb.asp:
<% br=Request.Form("T1")
dt=Request.Form("T2")
sc=Request.Form("T3") ‘将input.asp表单中的数据取出到变量br,dt,sc中
Set con=Server.CreateObject(“ADODB.Connection”)
Con.Open “Driver={INFORMIX-CLI 2.5 (32BIT)};Database=cxdb;Server=11.32.65.45;UID=;PWD=”
‘以上两语句为建立ADO对象,并连接数据库
sql="INSERT INTO test( br,dt,sc) VALUES('"&br&"','"&dt&"','"&sc&"')"
Set rs=con.execute(sql) ’执行SQL语句将数据增加到数据库中
Rs.close
Con.close
%>
数据的查询与输入一样的实现,只是执行的SQL语句不同,查询执行是的满足用户输入条件的SELECT语句。源代码如下:
indt.asp
<HTML>
<HEAD>
<TITLE>输入条件</TITLE>
</HEAD>
<BODY>
<FORM method="POST" action="seldt.asp">
<P>日期:<INPUT type="text" name="T1" size="20">
<P>
<INPUT type="submit" value="提交" name="B1">
<INPUT type="reset" value="重写" name="B2">
</FORM>
</BODY>
</HTML>
seldt.asp
<HTML>
<HEAD>
<TITLE>执行查询并显示结果</TITLE>
</HEAD>
<BODY>
<% dt=Request.Form("T1") ‘将indt.asp表单中的数据取出到变量dt中
Set con=Server.CreateObject(“ADODB.Connection”)
Con.Open “Driver={INFORMIX-CLI 2.5 (32BIT)};Database=cxdb;Server=11.32.65.45;UID=;PWD=”
‘以上两语句为建立ADO对象,并连接数据库
sql="select sco as sm from test where dt=’#”&dt&”#’”
set rs=con.execute(sql) ’执行SQL语句从数据库中查找满足条件的数据
if not rs.eof then ‘判断是否有满足条件的数据
do while not rs.eof
Response.Write dt&” 业绩是: “&rs(“sco”)&”<br>” ‘循环将满足条件的数据显示
Rs.movenext
Loop
End if
Rs.close
Con.close ‘关闭连接
%>
</BODY>
</HTML>
三、 结束语
ASP在WINDOWS98上的运行必须安装Personal Web Server4.0 以上版本。本文以一个非常简单的实例,介绍了以ASP实现数据的输入、查询的基本方法。在实际编程中,可以将ASP和SQL有机地结合,实现诸如某时间间隔的统计、排序、分组的查询,有条件的更新、删除数据等更加复杂的操作。
【购物小车的实现过程】
在程序中,我们定义了一个sp数组并对其赋值,然后用一个循环实现其数据显示及对下一个程序的数据传递。程序部分代码如下:
<% i=1
do while (i<=5) %>
<tr > <td><%=sp(i)%></td>
<td><a href=“cart.asp?spid=<%=sp(i)%>”>订购</a></td> </tr>
<% i=i+1
loop %>
构建购物小车
为处理用户订购商品的操作,我们自定义了两个Session的属性,分别是“spid”(用来保存商品名称)和“num”(用来保存相应商品的订购数量)。当用户订购了一种商品后,我们分三种情况对Session进行处理:
●购物小车为空,即Session(“spid")=“",直接将spid与num加入Session;
●购物小车非空且当前订购的商品是购物小车中没有的,则处理方法同上;
●购物小车非空但当前订购的商品是购物小车中已有的,Session保持不变。
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -