本站关键字:网站建设、上海网站建设、网站推广、网页制作
网站首页关于我们网站建设网站推广电子商务联系我们
 
电子商务网站平台3p设计技术与网络数据库
摘要:本文分别利用ASP,PHP,JSP这三个动态网站技术,使用跨Windows和Linux平台的同一个数据库MySql,采用统一的三种格式的表单界面,借用三种连接数据库的方法,在三种不同特点的WEB服务器环境下,给出了电子商务网站设计中的主要的前台和后台程序。 关键词:电子商务网站,网络数据库,ASP,PHP,JSP,服务器

1. 引言: 目前动态网站设计技术主要有:利用Perl/C++/Delphi等开发的CGI,两种有名的API-ISAPI/NSAPI,还有ColdFusion,以及最近几年流行起来的3p技术-ASP,PHP,JSP(据Internet上有关网站统计约有近百种); ASP-Ative Server Page,由微软公司开发 ,是一个WEB服务器端的开发环境,主要采用脚本语言VBScript(或Javascript/perl等)作为自己的开发语言,可用ODBC或直接驱动法访问Window平台的数据库。PHP-Person Server Page ,是由Rasmus个人创立的一种跨平台的服务器端的嵌入式脚本语言. 它大量地借用C,Java和Perl语言的语法, 并耦合PHP自己的特性,.是一种很有个性的网站开发语言,它支持目前绝大多数数据库。JSP-Java Server Page , 是Sun公司推出的新一代站点开发语言,Sun 公司除Java 应用程序 和 Java Applet 之外,又创立了JSP,其可以在Serverlet和JavaBean的支持下,完成功能强大的站点程序开发,特别是有许多访问数据库的方法。在电子商务平台设计中,主要需要解决网站结构的设计,注册界面,交易界面,后台数据库,以及 配套模块诸如购物/用户/论坛/反馈/搜索/会话等设计;考虑篇幅,本文只给出统一的前台界面及后台数据库的3p设计方法;可以说ASP,PHP,JSP与网络数据库的操作是电子商务网站平台设计的坚强基石。 

2. 构建三种设计技术的运行环境
2 .1构建ASP的运行环境:NT5.0Server,IIS5.0 ,ASP3.0 。 安装Windows2000Server(NT5.0Server)时选择IIS5.0有关选项。安装完后ASP3.0便内嵌于IIS5.0中。测试ASP:启动浏览器,在地址栏处输 http://127.0.0.1:80/default.html ,若浏览到IIS服务器的ASP欢迎页面,说明安装成功 
2.2构建PHP4的运行环境:NT5.0Server, Apache1.3.12 php4.0 安装支持PHP的web服务器Apache1.3.12,将Apache服务器压缩文件解压缩,根据提示进行整个安装过程,自己选择安装到目录d:\apache下。安装PHP4,将PHP4压缩文件解压缩到d:\php4即可,同时将其中的php.ini-dist文件拷贝到winnt目录中,将文件更名为php.ini,打开该文件将其中extension_dir 设置为:d:/php4,并加载扩展模块:将文件中含有;extention=*.dll的各项前面的;号去掉即可;修改设置Aphache服务器,用文本编辑器编辑目录d:\aphache目录下的子目录conf下名为httpd.conf的文本文件,首先将#ServerName *这一行下加入ServerName  http://127.0.0.1/ ; ,其次将Port 80改为Port 81(或其他与IIS5.0不冲突的端口),再其次设置更改Apache虚拟目录,将Documentroot d:/Apache/htdocs改为Documentroot d:/trade(该目录即是电子商务网站目录,可用任意方法建立目录trade),最后加入支持php4的如下语句:ScriptAlias /php4/ d:/php4/ AddType application/x-httpd-php .php AddType application/x-httpd-php .phtml Action application/x-httpd-php4 /php4/php.exe;测试php:完成上述步骤后,在d:\trade目录下,用如何文本编辑器,生成扩展名为.php(或phtml)的文件test.php,在文件中输入如下php代码,存盘后,启动Apache,接着你在浏览器中输入 http://127.0.0.1 :81/test.php,若看到php的版本和扩展模块等信息,说明环境安装设置成功。
2.3构建JSP的运行环境:NT5.0Server,Resin1.13, jdk1.3 安装Java编译器jdk1.3:运行jdk1_3-win.exe,按照提示完成安装即可,将其安装在d:\java1.3目录,也可安装在其他目录。 设置系统环境参数:控制面板/系统/环境页中选择path 参数加入d:\jdk1.3\bin;增加新的环境参数classpath=d:\jdk1.3\lib\tools.jar;d:\jdk1.3\lib\dt.jar;,然后重新启动计算机即可安装支持JSP的web服务器Resin1.1.3,将RESIN-1.1.3.zip释放为d:\Resin1.1.3 即可。配置服务器端口,打开d:/resin1.1.3/conf/目录下的resin.conf文件在 

8080 
标签处将端口设置为82(在我的NT5.0上装有三个服务器,这样三个服务器的端口分别为IIS :80;Apache:81;Resin:82其实也可设置为其他互不冲突的端口号). 测试JSP:启动Resin服务器,启动浏览器,在地址栏处输 http://127.0.0.1:82/ ,若浏览到Resin服务器的JSP欢迎页面,说明安装成功

3生成三种格式的动态表单页面 为了通用,这里采用可能用到的表单对象为例,至于下面设计具体数据表用到的字段,只要转成给出的表单域相应对象即可.
3.1用ASP动态生成与数据库进行数据交流的操作表单: form.html: 生成表单域头: 生成普通文本: 生成密码文本: 生成滚动文本: 生成单选: 生成复选: 生成列表框: 生成提交按钮 生成重填按钮 生成表单域尾 
3.2用PHP动态生成与数据库进行数据交流的操作表单: form.php 生成表单域头:?> 生成普通文本:?> 生成密码文本:?> 生成滚动文本:?> 生成单选:?> 生成复选:?> 生成列表框:网络数据库Asp技术Php技术Jsp技术网站设计 ?> 生成提交按钮 ?> 生成重填按钮?> 生成表单域尾?> 
3.3用JSP动态生成与数据库进行数据交流的操作表单 form.jsp 生成表单域头: 生成普通文本: 生成密码文本: 生成滚动文本: 生成单选: 生成复选: 生成列表框: 生成提交按钮 生成重填按钮 生成表单域尾

4设计用于存储商务网站交互数据的MySql数据库
4.1启动MySql数据库服务器(MySql的安装及ODBC驱动程序的安装与设置请参阅相关书籍) 可在NT5.0下用启动服务法/NET命令法/命令窗口键入MySqld-shareware法,启动MySql数据库服务器,启动数据库服务器后,在d:\mysql\bin>提示符下键入mysql-h 127.0.0.1 -u root 即可出现mysql>提示符,从这开始即可进行对MySql数据库的各种操作。若要退出可键入quit/exit,若要关闭数据库服务器,可在d:\mysql\bin>提示符下键mysqladmin -u root shutdown 4.2建立MySql数据库 在MySql数据库的提示符mysql>键入Create database tradedb ;(或go) 
4.2.建立MySql数据库表 这里以商务网站中常用的几种数据表为例,主要用到的数据表和生成数据表的SQL代码如下:(这里的数据表字段只要分别对应上述表单域对象即可实际操作,数据表统一用tablename表示) 客户登录管理数据表 CREATE TABLE users ( ID int not null auto_increment, UserName varchar(30) not null, Password varchar(20) not null ) 客户信息数据表 CREATE TABLE usermessage ( UserName varchar(30) not null, Email varchar(80) not null, Address varchar(120) not null , Fax varchar(40) null, Phone varchar(40) not null, Cerreycard varchar(50) not null ) 客户定购商品数据表 CREATE TABLE catalog ( ProductId int not null , Name varchar(64) not null, Price float(6,2) not null, Description  ;text null )

5设计处理表单数据的3p程序
5.1设计处理表单数据的ASP程序 form_cl.html 建立与数据库的连接:这里采用直接驱动法 Set conn = Server.CreateObject(ADODB.Connection); conn.open driver={MySQL};server=localhost;uid=user;pwd=xxxxxx;database=tradedb 获取表单提交的数据: data1=request(ptwbk);data2=request(mmwbk);data3=request(gdwbk) data4=request(dxk);data5=request(fxk);data6=request(lbk) 用SQL语句对数据库进行操作 查询数据记录: sql=select * from tablename ;set rs=conn.execute(sql)  增加数据记录: sql=insert into tablename(ptwbk,mmwbk,gdwbk,dxk,fxk,lbk) values('data1','data2','data3','data4','data5', 'data5'); set rs=conn.execute(sql) 更改某条数据记录: sql=update tablename set data1=request(ptwbk ), where ID=num; set rs=conn.execute(sql) 删除某条数据记录: sql=delete from tablename where ID=num;set rs=conn.execute(sql) 将SQL语句处理的数据结果输出 Response.Write  

 Response.Write   For i=0 to rs.Fields.Count-1 Response.WRITE   & rs.Fields(i).Name &   Next Response.Write  
 While Not rs.EOF Response.Write   For i=0 to rs.Fields.Count-1 Response.WRITE   & rs.Fields(i).Value &   Next Response.Write  
 rs.MoveNext Wend Response.Write  
 关闭数据库: rs.close;conn.Close
5.2设计处理表单数据的PHP程序 form_cl.php 建立与数据库的连接:这里采用PHP的MySql函数法(也可用ODBC函数法) $conn=odbc_connect(localhost,user,xxxxxx); 选择数据库: mysql_select_db(tradedb,$conn); 获去表单提交的数据: $data1=$ptwbk; $data2=$mmwbk; $data3=$gdwbk; $data4=$dxk; $data5=$fxk; $data6=$lbk; 用SQL语句对数据库进行操作 查询数据记录: $sql=select * from tablename ;$result=odbc_do($conn,$sql); 增加数据记录: $sql=insert into tablename(ptwbk,mmwbk,gdwbk,dxk,fxk,lbk) values('$data1','$data2','$data3','$data4','$data5','$data6');$result=odbc_do($conn,$sql); 更改某条数据记录: $sql=update tablename set $data1=ptwbk where ID=num $result=odbc_do($conn,$sql); 删除某条数据记录:$sql=delete from  tablename where ID=num;$result=odbc_do($conn,$sql); 将SQL语句处理的数据结果输出 odbc_result_all($result,border=1); 关闭数据库: odbc_close($conn);
5.3设计处理表单数据的JSP程序 form_cl.jsp 建立与数据库的连接:这里采用JDBC-ODBC桥生成JavaBean法 创建一个JavaBean命名为conndb.java,并保存在d:/resin1.1.3/doc/web-inf/classes/trade目录下,代码如下:(限于篇幅这里没按标准书写,而采用不换行写法,其他类同) package trade; import java.sql.*; public class conndb { String url=jdbc:inetdae:localhost;String login=user; String password = xxxxxx; String sDBDriver = sun.jdbc.odbc.JdbcOdbcDriver;String sConnStr = jdbc:odbc:Dsnmysql; Connection conn = null; ResultSet rs = null; public conndb() {try {Class.forName(sDBDriver); Connection conn = DriverManager.getConnection(url,login,password);} catch(java.lang.ClassNotFoundException e) {System.err.println(conndb():  + e.getMessage ());}} Public/ResultSet/executeQuery(String/sql)/{rs=null;try{conn=DriverManager.getConnection(sConnStr); Statement stmt = conn.createStatement();rs = stmt.executeQuery(sql); } catch(SQLException ex) {System.err.println(aq.executeQuery:  + ex.getMessage());} return rs; }} 然后用javac编译conndb.java生成与其同目录的conndb.class文件,在form_cl.jsp文件中加入如下标签即可建立与数据库的连接 获去表单提交的数据: String data1=request.getParameter(ptwbk); String data2=request.getParameter(mmwbk ) String data3=request.getParameter(gdwbk ) String data4=request.getParameter(dxk ) String data5=request.getParameter(fxk ) String data5=request.getParameter(lbk ) 语句对数据库进行操作 查询数据记录: String sql=select * from tab lename; connbean.executeQuery(sql); 增加数据记录: String sql=insert into tablename values(' + data1 + ',' +data2 +',' +data3 + ',' + data4+ '+',' + data5+',' + data6+');connbean.executeQuery(sql); 更改某条数据记录: String sql=update tablename set data1=' + ptwbk + ',data2=' + mmvbk + ',data3=' +gdwbk + ' where ID=' + num + ' ;connbean.executeQuery(sql) 删除某条数据记录: String sql=delete from tablename where ID=' +num+ ' ; connbean.executeQuery(sql);  ;将SQL语句处理的数据结果输出 ResultSet rs = connbean.executeQuery(sql); While (rs.next()) {out.print( 
+rs.getString(ptwbk)+ 
);out.print( 
+ rs.getString(mmvbk) +  
);out.print( 
 + rs.getString(gdwbk) +  
); out.print( 
 + rs.getString(dxk) +  
);out.print( 
 + rs.getString(fxk) +  
);out.print( 
 + rs.getString(lbk) +  
);} 关闭数据库: rs.close();

6三种电子商务网站设计技术综述
6.1主要特性: 可见下表 设计技术 运行平台 服务器 开发程序 扩展组件 ASP Windows系列 IIS Vbscript/Jscript/Perl ActiveX PHP Unix系列, Novell,Windows Apache等许多服务器 php Function JSP Unix系列, Novell,Windows Resin等许多服务器 Java JavaBean 
6.2连接数据库的方法: 通过上述操作可看出,本文采用了三种操作MySql数据库的方法,Asp采用直接驱动法,Php采用MySql函数法,Jsp采用JDBC-ODBC/JavaBean法 
6.3网站结构设计 考虑篇幅,本文只给出了Widows平台上,电子商务网站设计中的主要环节的代码设计,对于Linux平台、网站结构、各个功能模块设计等论题,作者已经有两篇这方面的论文在核心刊物上待发表,这里不便公开.
6.4可操作的主要数据库 上述三种动态技术操作数据库的方法,可操作Windows平台上的Access/MsSql/Foxpro/Informix/Oracle等数据库,对Php和Jsp可操作Linux平台上的数据库Postgres/Sybase/Oracle等. 
6.5平台与代码通用性 上述设计方法采用的是通用代码方式,对PHP和JSP大部分代码即可运行于Windows,又可运行于Linux;考虑MySql的许多方便的特点,本文以此为例,做了一些有益的工作 参考文献: 1汪晓平.ASP网络开发技术.人民邮电出版社,2000.1 2 Leon Atkinson.PHP核心编程.清华大学出版社,2000.4 3石振国.多媒体通信网页的Java设计技术.

3个实例教你如何在互联网上查找专业资料(2)
网络工作的方式正在发生改变
定位网站的主题和名称
Visual C#的Excel编程2
php验证码类1
一个有效企业网站比50个业务员更有效!
什么是cookie?cookie有什么作用?网站利用cookie存在什么问题?
网站设计的标准时代(1)
中国上海名列全球政府网站综合排名第三
加大MySQL最大连接数
基于CORBA的电子商务系统的安全性
网站策划案书写标准模板
初学建站来看:网站经验谈
做网站必备六步
建站入门:明星FANS网站搭建全攻略
沪ICP备 05020775号    联系电话:021-51302667 51302668 51302669 上海网络信息科技有限公司 版权所有