时间:2023-01-19 22:16:45
导言:作为写作爱好者,不可错过为您精心挑选的10篇电子商务网站设计,它们将为您的写作提供全新的视角,我们衷心期待您的阅读,并希望这些内容能为您提供灵感和参考。
2.构建三种设计技术的运行环境
2.1构建ASP的运行环境:NT5.0Server,IIS5.0,ASP3.0。安装Windows2000Server(NT5.0Server)时选择IIS5.0有关选项。安装完后ASP3.0便内嵌于IIS5.0中。测试ASP:启动浏览器,在地址栏处输127.0.0.1:80/default.asp,若浏览到IIS服务器的ASP欢迎页面,说明安装成功
2.2构建PHP4的运行环境:NT5.0Server,Apache1.3.12php4.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*"这一行下加入"ServerName127.0.0.1/";,其次将"Port80"改为"Port81(或其他与IIS5.0不冲突的端口)",再其次设置更改Apache虚拟目录,将"Documentroot"d:/Apache/htdocs""改为Documentroot"d:/trade"(该目录即是电子商务网站目录,可用任意方法建立目录trade),最后加入支持php4的如下语句:ScriptAlias/php4/"d:/php4/"AddTypeapplication/x-httpd-php.phpAddTypeapplication/x-httpd-php.phtmlActionapplication/x-httpd-php4"/php4/php.exe";测试php:完成上述步骤后,在d:\trade目录下,用如何文本编辑器,生成扩展名为.php(或phtml)的文件test.php,在文件中输入如下php代码,存盘后,启动Apache,接着你在浏览器中输入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服务器,启动浏览器,在地址栏处输127.0.0.1:82/,若浏览到Resin服务器的JSP欢迎页面,说明安装成功
3生成三种格式的动态表单页面为了通用,这里采用可能用到的表单对象为例,至于下面设计具体数据表用到的字段,只要转成给出的表单域相应对象即可.
3.1用ASP动态生成与数据库进行数据交流的操作表单:form.asp:生成表单域头:生成普通文本:生成密码文本:生成滚动文本:生成单选:生成复选:生成列表框:生成提交按钮生成重填按钮生成表单域尾
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-h127.0.0.1-uroot即可出现mysql>提示符,从这开始即可进行对MySql数据库的各种操作。若要退出可键入quit/exit,若要关闭数据库服务器,可在d:\mysql\bin>提示符下键mysqladmin-urootshutdown4.2建立MySql数据库在MySql数据库的提示符mysql>键入Createdatabasetradedb;(或go)
4.2.建立MySql数据库表这里以商务网站中常用的几种数据表为例,主要用到的数据表和生成数据表的SQL代码如下:(这里的数据表字段只要分别对应上述表单域对象即可实际操作,数据表统一用tablename表示)客户登录管理数据表CREATETABLEusers(IDintnotnullauto_increment,UserNamevarchar(30)notnull,Passwordvarchar(20)notnull)客户信息数据表CREATETABLEusermessage(UserNamevarchar(30)notnull,Emailvarchar(80)notnull,Addressvarchar(120)notnull,Faxvarchar(40)null,Phonevarchar(40)notnull,Cerreycardvarchar(50)notnull)客户定购商品数据表CREATETABLEcatalog(ProductIdintnotnull,Namevarchar(64)notnull,Pricefloat(6,2)notnull,Description;textnull)
5设计处理表单数据的3p程序
5.1设计处理表单数据的ASP程序form_cl.asp建立与数据库的连接:这里采用直接驱动法Setconn=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*fromtablename";setrs=conn.execute(sql)"增加数据记录:sql="insertintotablename(ptwbk,mmwbk,gdwbk,dxk,fxk,lbk)values(''''data1'''',''''data2'''',''''data3'''',''''data4'''',''''data5'''',''''data5'''')";setrs=conn.execute(sql)更改某条数据记录:sql="updatetablenamesetdata1="request(ptwbk)",whereID="num";setrs=conn.execute(sql)删除某条数据记录:sql="deletefromtablenamewhereID="num";setrs=conn.execute(sql)将SQL语句处理的数据结果输出Response.Write"
"Response.Write""Fori=0tors.Fields.Count-1Response.WRITE""&rs.Fields(i).Name&""NextResponse.Write"
"WhileNotrs.EOFResponse.Write""Fori=0tors.Fields.Count-1Response.WRITE""&rs.Fields(i).Value&""NextResponse.Write"
"rs.MoveNextWendResponse.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*fromtablename";$result=odbc_do($conn,$sql);增加数据记录:$sql="insertintotablename(ptwbk,mmwbk,gdwbk,dxk,fxk,lbk)values(''''$data1'''',''''$data2'''',''''$data3'''',''''$data4'''',''''$data5'''',''''$data6'''')";$result=odbc_do($conn,$sql);更改某条数据记录:$sql="updatetablenameset$data1=ptwbkwhereID=num"$result=odbc_do($conn,$sql);删除某条数据记录:$sql="deletefromtablenamewhereID=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目录下,代码如下:(限于篇幅这里没按标准书写,而采用不换行写法,其他类同)packagetrade;importjava.sql.*;publicclassconndb{Stringurl="jdbc:inetdae:localhost";Stringlogin="user";Stringpassword="xxxxxx";StringsDBDriver="sun.jdbc.odbc.JdbcOdbcDriver";StringsConnStr="jdbc:odbc:Dsnmysql";Connectionconn=null;ResultSetrs=null;publicconndb(){try{Class.forName(sDBDriver);Connectionconn=DriverManager.getConnection(url,login,password);}catch(java.lang.ClassNotFoundExceptione){System.err.println("conndb():"+e.getMessage());}}Public/ResultSet/executeQuery(String/sql)/{rs=null;try{conn=DriverManager.getConnection(sConnStr);Statementstmt=conn.createStatement();rs=stmt.executeQuery(sql);}catch(SQLExceptionex){System.err.println("aq.executeQuery:"+ex.getMessage());}returnrs;}}然后用javac编译conndb.java生成与其同目录的conndb.class文件,在form_cl.jsp文件中加入如下标签即可建立与数据库的连接获去表单提交的数据:Stringdata1=request.getParameter("ptwbk");Stringdata2=request.getParameter("mmwbk")Stringdata3=request.getParameter("gdwbk")Stringdata4=request.getParameter("dxk")Stringdata5=request.getParameter("fxk")Stringdata5=request.getParameter("lbk")语句对数据库进行操作查询数据记录:Stringsql="select*fromtablename";connbean.executeQuery(sql);增加数据记录:Stringsql="insertintotablenamevalues(''''"+data1+"'''',''''"+data2+"'''',''''"+data3+"'''',''''"+data4+"''''+"'''',''''"+data5+"'''',''''"+data6+''''")";connbean.executeQuery(sql);更改某条数据记录:Stringsql="updatetablenamesetdata1=''''"+ptwbk+"'''',data2=''''"+mmvbk+"'''',data3=''''"+gdwbk+"''''whereID=''''"+num+"''''";connbean.executeQuery(sql)删除某条数据记录:Stringsql="deletefromtablenamewhereID=''''"+num+"''''";connbean.executeQuery(sql);;将SQL语句处理的数据结果输出ResultSetrs=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主要特性:可见下表设计技术运行平台服务器开发程序扩展组件ASPWindows系列IISVbscript/Jscript/PerlActiveXPHPUnix系列,Novell,WindowsApache等许多服务器phpFunctionJSPUnix系列,Novell,WindowsResin等许多服务器JavaJavaBean
6.2连接数据库的方法:通过上述操作可看出,本文采用了三种操作MySql数据库的方法,Asp采用直接驱动法,Php采用MySql函数法,Jsp采用JDBC-ODBC/JavaBean法
现阶段,互联网的不断发展,在很大程度上促进了电子商务网站的快速发展,企业需要通过电子商务网站向消费者传递相关信息,其在企业发展中的作用越来越重要。与传统媒介相比较而言,电子商务网站对于受众具有更大的吸引力、亲和力,能够对消费者与企业之间的关系予以促进,使其更加稳固、亲密,因此应当充分重视电子商务网站的合理设计。
一、电子商务网站概述
对于企业而言,电子商务网站已经成为其发展的重要基础,是其对外展示信息、开展商务活动的主要界面与窗口。电子商务网站,实质上就是面向企业产品的消费群体或者客户、供应商,提供直属于企业业务范围的交易或者服务。目前,电子商务网站处于电子商务化中间阶段,因企业投入广度、深度与行业特色的不同,电子商务化程度还可能处于一个初级产品列表、服务支持转向较为高级的网上支付的阶段。现阶段,由于电子商务市场的逐渐扩展,很多企业开始将发展重点放在电子商务市场。与传统三大媒体(电视、广播、报纸)相比较而言,企业能够对本公司信息予以自由的掌控,每一个消费者可能够随时予以持续性访问,而且在法律法规范围内可以自由的发表言论。因此,大多数企业将电子商务网站的创建当作投身电子商务事业的基础。
二、电子商务网站问题分析
就目前来看,我国电子商务呈现良好的发展态势,但是人们对于电子商务发展过程中存在的问题还缺乏全面的认知,特别是在电子商务网站方面。上世纪90年代初期,电子商务发展过程中,大多数从事电子商务的商家在发展过程中一味模仿其他人的电子商务模式,简单认为拥有电子商务网站之后就可以全面开展电子商务活动了,而大多数电子商务网站均缺乏创新型、实效性,因此当互联网泡沫出现的时候,大部分电子商务网站均会倒下,主要在于这些电子商务网站没有任何的实际价值,从根本上来看,导致这一状况发生的原因主要为电子商务网站构建过程中未重视一个根本性问题,即:电子商务网站的功能应当与企业经营战略相对应,并且在设计方面应当将患者需求的满足作为出发点。
三、电子商务网站设计中需要注意的一些重要事项分析
(一)电子商务网站信息的基础为“文本”
“文本”作为互联网信息的基础,不能对来自图像、动画等一系列信息内容的重要性予以否认,且文本信息依然是电子商务网站信心的根本,应当将文本作为基础,同时将图像、动画等当作附加的一种表现形式。由于文本是一种极易被搜索、辨别以及理解的表达形式,其在网站Logo中多选取图文搭配形式,如拍拍网、当当网以及淘宝网等,而且文本在网站导航中也是主角,因此电子商务网站设计需要充分重视“文本”的合理化、科学化。
(二)重视主页导航的清晰性与内容的简洁性
与国外电子商务网站相比较而言,我国电子商务网站在内容上过于繁琐,而国外电子商务网站十分简洁,一些网站甚至无论坛。环球自愿、EC21、中国制造网等一系列国际类电子商务网站在设计方面较为简洁,而万国商业网、阿里巴巴网等中文站点的页面非常丰富,内容也比较多,但是其英文站点十分简洁,与外国人的风格特点十分相符。现阶段,我国大多数网名希望在有限的上网时间内了解与掌握更加丰富、有价值的信息,而不是在网页中盲目搜寻杂乱的信息。因此,电子商务网站设计过程中,应当确保主页导航的合理性,尽可能在导航设计中加入企业的形象,在此基础上加深网站浏览者对企业的认知、印象。
(三)重视版面设计与图像的合理性
通常情况下,优秀的电子商务网站版面设计应当严格遵循装饰性原则、平衡性原则以及有序性原则,版面设计与图形是否合理直接关系到浏览者对网页的第一印象,图片能够在很大程度上增加网站的吸引力。例如:京东商城等一系列在线销售产品的网站,需要通过图片为用户提供在视觉上极具吸引力的内容。网页应当为产品销售的促进服务,在色彩方面应当避免喧宾夺主,在此基础上吸引浏览者的目光。
四、结语
一般公众主要认为电子商务网站即为电子商务公司的一个代名词,对于电子商务公司好坏的评价,第一印象主要是根据这一公司的电子商务网站产生的,所以电子商务公司十分重视电子商务网站的合理设计。电子商务网站设计过程中,应当意识到电子商务网站信息的基础为“文本”,确保“文本”的合理化、科学化,还应当重视主页导航的清晰性与内容的简洁性,保证版面设计与图像的科学性,进一步突出个性化服务,以此确保电子商务网站设计的完整性、优质性。
参考文献:
[1]尚芳,吴宾宾.小型电子商务网站规划设计研究[J].计算机光盘软件与应用,2013,21:37-38.
[2]黄峻峰.电子商务网站设计中信息安全防御研究[J].信息与电脑(理论版),2015,23:56-57.
1.1平台威胁
电子商务是一种有别于传统交易,依托网络平台来开展的新兴交易方式,信息传递过程中影响信息传播速度的因素很多,包括电磁辐射干扰和网络设备老化,情况严重时会威胁到交易双方的信息安全。除了网络设备的物理干扰和破坏外,一己私利造成的人为商务系统硬件破坏更为严重,他们有意更改信息内容,通过这种不法手段获取经济利益。
1.2安全环境恶化
发达国家经过多年的发展,技术水平远远领先于我国,尤其是在计算机软硬件技术及网络安全技术方面。我国硬件核心设备的研发能力不足,核心技术还未取得突破性进展,不得不依靠进口采购。在无法独立自主生产的情况下,必须依靠国外引进,生产技术和维护技术受到极大的限制,极大影响了我国电子商务的健康发展。
1.3黑客入侵
一些不法分子面对电子商务交易的蓬勃发展,势必会产生不劳而获的贪婪心理,利用网络安全漏洞来攻击电子商务网站平台。当前网络黑客侵入方式使用最普遍的是木马程序,通过木马程序侵入本地计算机,使得计算机记录的登录信息遭到篡改或泄露,导致重要文件及资金丢失。网络病毒不可控性很强,其自身繁殖功能十分强大,严重损坏计算机文件,还会对计算机的硬件设施造成严重破坏,且网络技术的迅速发展,使计算机病毒的破坏力也随之增强。
1.4网上支付安全隐患
网上支付是电子商务的核心部分,确保支付安全才能保障电子商务的健康发展,因此,网上支付的规范性、安全性、便捷性及高效性一定程度上决定了电子商务的发展潜力。从电子商务开展的实际支付结构可知,商务系统平台、安全认证系统、电子支付网关和电子钱包等四个条件必不可少。而安全认证系统是整个电子商务顺利开展的重要前提,理由如下:首先,网络在实际运行中灵活性较强,当前的多种技术手段无法完全应对网络安全威胁,仍存在较大的问题。其次,虽然各家银行先后建立了CA认证中心,但这些CA认证中心的权威性不足,无法成为全国性的认证标准,造成重复认证和资源浪费。最后,新《合同法》虽然纳入电子合同的法律效用条款,但数字签名仍存在技术问题,这导致问题出现后的一些复杂法律关系难以解决,如责任认定、责任承担、有效执行仲裁结果等。
2常见信息安全漏洞防御
2.1结构性查询语言注入
这是一种用于存取信息数据的数据库系统,其作用是方便管理人员进行网络管理和用户查询。结构性查询语言简称为SQL,从本质上来说是一种程序设计的、高级的非过程化编程语言,其作用是作为客户端与数据库服务器相互沟通的桥梁。因此,SQL是网站设计中安全防御的重点包括以下内容。
2.1.1经典的‘or1=1’注入作为计算机最经典的结构性查询语言,该注入方式一般不需要用户名进行验证,密码方面也没有多层输入的要求,故身份登录并不会受到用户名的限制。因此,该注入方式在编写验证程序时,通过程序设计使得用户名输入时无需验证,避开非预期字符串的限制,然后将信息直接传递给mysql-query()函数执行。这种注入方式跳过了验证环节,验证码正确与否都不干涉用户名登录。因此,从信息安全防御角度出发,登录确认工作是网站设计的重中之重,注意严密防范非法用户登录。
2.1.2利用union语句的注入Union语句注入的作用机理是,网站设计中注入union会使网站程序默认的语句出错,网站运行速度受限,或者网页直接打不开,严重时还会引起网站崩溃。结构性查询语言从理论上来说注入方式较多,从根源上防御各种注入方式才是关键。作为计算机工作者,日常网络维护要认真严谨,细心对查询语句的参数进行过滤,遇到可疑情况及时排查。
2.2跨站脚本攻击的防范
跨站脚本攻击,英文全称为CrossSiteScripting。该脚本通过将恶意代码植入到用户的网站页面,让用户登录与实际网站完全不同的虚假网站。该脚本主要是将JavaScript脚本注入到HTML标签中进行攻击,是一种频繁引发网站设计安全威胁的重要因素。
2.2.1跨站脚本攻击的探测跨站脚本攻击是可以及时检测到的,有助于尽早发现网站设计过程中的问题,语句检测是判断跨站脚本攻击的重要依据。如在输入框中输入语句找到其执行的地方,如果发现有弹窗就证明有跨站脚本对软件进行攻击。以网站的评论为例,在网站评论页面的输入框中写入相关代码,完成后进行刷新,若发现浏览器的弹出窗口没有得到禁止,基本可以判断该网站设计的评论模块有跨站脚本攻击过。
2.2.2重新定向一旦发在网站设计过程中存在跨站脚本攻击的某些漏洞,那么黑客就有多种方式攻击网站。如可以通过跨站脚本攻击重新定位新的攻击网页,实现刷目标网站流量的目的。举一个简单的例子,用户A发了一个容易构造的URL给用户B,当用户B打开后,恶意脚本开始攻击用户B的电脑,可以执行前一个用户A权限下的所有命令。
2.2.3攻击弹出其他网页大部分网民浏览网页时都碰到过广告弹窗的情况,这是电脑黑客通过跨站脚本攻击的方式,实现攻击计算机用户正在浏览网页的目的,从而让用户浏览其他网页。针对跨站脚本这种攻击方式,通常采用特征匹配来进行针对性防御,同时加强认证工作,最大限度避免跨站脚本攻击的发生。
1.观察比较阶段:在此阶段,客户搜寻和分析处理与所要选购的商品有关的各种信息,具有很强的客户驱动性。这和在商场购物不同。商场有服务员,商品实物,可以促成交易,而网上虚拟商店不具备这样的特点。只能以精心制作的、可用性强的网页来吸引客户、使客户能方便地找到和了解他们想要的商品,从而增加成交机率。
2.付款结账阶段:此阶段是电子商务行为的最重要环节,此时消费者由客户驱动转变为系统驱动,网站系统会引导客户输人一定的个人信息,如家庭住址、信用卡号码等,同时提供付款方式和送货方式。在这一阶段应着重消除客户对自己进行的各种操作所产生的结果的不安感。
因此,只有在电子商务网页设计中充分考虑了人们的使用要求。才能促成一次成功的交易。网站设计的实用性对电子商务网站的正常经营和发展是至关重要的。
电子商务网站设计中的实用原则:
实现网站商务功能最大化的目标,给目标客户提供方便、实用的信息服务,是电子商务网站设计的基本实用原则,包含以下几个方面:
1.人性化的交互界面。客户访问电子商务站点是为了获取需要的商品或服务,所以网页的内容必须突出重点,避免夸张,装饰部分不宜太多,以免喧宾夺主。在内容编排上必须简洁明了,便于浏览;信息数量比较大时应将其拆分成多个网页。在电子商务网页设计中还应当考虑残疾人、病人等特殊人群的需要。
2.方便快捷的更新维护。电子商务网站要根据市场行情的波动随时更新网页上的价格信息,经常要提供新的商品或服务,并搞些促销活动以刺激客户的购买欲。设计时要考虑到内容更新的快捷简便,在内容更新的同时,还要注意保持网页在结构上的相对一致性,以使老客户能方便快速地找到所需要的各种信息。
3.最佳优化的网页内容DOLCN.com。一般情况下,客户对当前网页上的内容能持续保持注意的时间长度约为10秒钟;若系统响应时间超过10秒,客户会在等待计算机完成当前操作时转向其他的任务。因此,为缩短系统响应时间,比较简单的一种解决办法是尽量减少网页上的图片与多媒体(如动画、录像、闪烁等)的使用。但是作为电子商务站点,很多场合需要采用图示或多媒体演示,以至不得不适当降低系统响应速度。
4.准确无误的链接。整个Web实际上就是一个的巨大的信息空间。由于空间过大,并且各节点之间的链接关系错综复杂,用户上网浏览时有可能发生“迷路”现象。Elm和Woods(1985)研究发现,用户在网上“迷路”的程度与不熟悉文档结构有直接关系。他们总结出有三种不同形式的“迷路”:①不知道下一步该去哪里;②知道该去哪里,但不知道该如何去;③不知道当前处于整个文档结构中的哪一个位置。为减少和避免出现“迷路”现象,通常可采用两种策略:第一是改变用户界面,如采用导航地图、多窗口显示等技术;第二是对文本进行分析,改换超文本的结构及链接设计。提高超文本设计质量能更有效地减少用户“迷路”现象。 5.界面的统一和差异。在电子商务网页设计中,界面一致性也是必须加以仔细考虑的一个重要因素。一般认为,界面一致性主要体现在三个方面:指向性效果、系统的输入与输出之间的关系、界面的外观或视觉效果。一些研究表明,增强界面一致性有利于提高用户的操作绩效和满意度,同时还可减少操作错误。
6.美观、比例、结构、布局。良好的视觉效果与强大的使用功能同等重要。界面美观水平与使用者对界面可用性的主观评价呈正相关,与操作绩效也呈正相关。Schenkman(2000)总结出衡量网页外观设计质量的四个主要指标,即美观、图文比例、结构和总体布局。其中,美观这一指标最为重要。
7.终端与载体的协调统一。电子商务网页设计应适应客户使用的各种类型的显示器。应使用可用空间的百分比来规定布局。现在常用的网页浏览器一般为Netscape和Internet Explorer,这些浏览器都有新旧版本。有时同一个网页在不同浏览器或同一浏览器的不同版本上会产生很不相同的显示效果,甚至有些网页功能无法正常实现。作为电子商务网站,应注意网页在这方面的兼容性。
8.信息安全保障。互联网是一个标准开放的网络,在网上进行各种商务活动,随时可能将面对黑客的攻击,病毒的侵袭等。因此,确保网上信息流通的系统安全十分重要。安全不仅仅是一个技术的问题,还涉及到系统的管理、法律法规的保障等。
9.可扩展设计定位。互联网具有巨大的商务潜能,没有人可以确切预计系统的最终访问量和最佳的商务运行模式。因此网站设计的原则之一就是可扩展性。随着企业网上平台业务量的扩展和平台访问量的增长,系统应该能够具有很强的扩展能力,以适应新业务的发展。
与传统的购物方式相比,网上购物具有方便、快捷等优点。但是,虚拟商场和客户在空间上只有通过网络才能传递信息。因此,电子商务网页在设计上必须符合人们的使用要求,最大限度地提高人们在网上搜索信息和进行其他各种操作的绩效,并增强人们对网上购物的满意度和安全感,才能创造出和谐愉快、美观便捷的交易空间。
中图分类号:G642.0 文献标志码:A 文章编号:1674-9324(2012)06-0255-03
高等职业教育的目标是培养高素质高技能型人才,故在课程标准设计时应以提高学生的实践能力(即工作能力)为主要任务,也就是要突出各课程的专业性和实践性[1]。电子商务专业培养的是从事具体电子商务业务操作的人员,应具备基本的商务运作能力和电子商务网站设计开发、运营和管理能力;《电子商务网站设计》课程正是为了培养学生后者能力而开设的课程,作为电子商务专业的核心课程之一,其主要任务就是使学生掌握电子商务网站开发技术与电子商务网站设计方法,了解电子商务网站的构架、网站运营管理和推广等方面的知识。笔者在讲授这门课程的过程中,发现电子商务专业的学生在经过一年半的电子商务基本理论、计算机网络和网页设计等知识的学习后,对知识的实际运用有更多的兴趣,课堂参与意识较强,但在教学中也发现了一些问题,针对这些问题和学院教改的要求,总结了一下我在教学中的改革措施,供大家参考。
一、教学中发现的问题
《电子商务网站设计》作为实践性和专业性很强的课程(表1),课程内容涉及网站系统分析、总体规划、网站设计和网站管理等相关知识,需要学生动手参与;教学方法上要以实践为主导,侧重提升学生的设计与动手能力,与电子商务网站设计工作岗位无缝衔接。
然而常规的教学方法,会带来了下列问题:(1)强调“理论”+“实验”的方式来组织教学,任课教师先根据教学大纲要求,安排各章节的教学内容,再根据章节或知识点安排学生实验。这样一章一节的推进,虽然方便教学,但学生缺乏综合应用能力,创新意识也得不到培养,在整个网站布局规划、总体设计、内容编排、数据库设计上存在问题,缺少网站设计的全局把握。(2)由于按章节进行教学,在实验内容选取上必然紧扣教材,虽然强调了技术细节,但由于缺乏真正意义上的实践应用,对学生的指导性不强,实用性较差,造成与社会实际脱节很大,使网站设计的理念不能很好被诠释,教学效果受到很大的影响。
二、教学中的改革措施
为了更好的上好这门课程,以及响应学院教改的要求,本人就该课程的教学方法、教学内容、教学考核、实践环境和产学结合方面做一些改革措施,措施如下。
(一)教学方法项目化
在本课程的教学过程中,我们提出的是“目标+项目+情景”的三位一体教学方法[2],即学生学习有目标、教师教学有项目、实际教学有情景,真正体现高等职业教育的特点,也使学生真正能够做到学有所用。这里的项目不同于一般的教学案例,由教师为社会企业开发的实际运行的网上书城项目,之所以强调项目的实际性,目的就在于解决教学与社会实际脱节的问题,以项目串联全课程,从需求分析到最后网站、运营整个过程,贯穿在教学过程中,以项目所涉及的问题为线索,组织整个课程内容的教学,做到“教、学、练、做”四者有机结合。
具体来说我们采用的项目化教学方法是:(1)示范操作讲解:将网站制作需要的知识点融入实际运营的网上书城项目中进行讲解示范。(2)模仿操作训练:模仿老师讲解的方法,制作网页效果,理论与实践相结合,学会做网页。(3)拓展实践训练:根据前面所学习的操作方法,按网上书城项目要求,自己动手制作网站,由学生自己选择自主色彩搭配、页面布局设计效果图。(4)阶段测试训练:根据网上书城项目所包含的主要功能模块:登录、注册、商品搜索、购物车、订单管理、商品信息维护等,由学生按照顺序完成相应模块的开发。(5)项目实战训练:全面运用所学习的知识和所掌握的技能,按照企业开发网站的流程,将前面设计的网页和各个模块进行链接,形成一个完整的网上书城网站。
(二)教学内容模块化
根据网上书城网站开发的过程,我们可以把教学按网站开发过程组织成网站需求与规划、网站主页设计、网站前台设计、网站后台设计四个子项目来操作,然后再分别对子项目进行模块化设计;如网站主页设计可以分为LOGO设计、网站布局及导航、网站配色方案和图片处理等模块;网站前台设计可分为商品展示、用户登录、购物车、订单管理等模块;网站后台设计可分为用户管理、商品管理、订单处理等模块。每个模块下面可按实践知识和理论知识来组织教学内容,前后衔接的各个模块,构成了网站建设的主线,不同的模块承担不同的教学任务,讲授不同的教学内容,让学生在现实环境中获取知识。如网站的需求规划的教学模块,可以从需求分析开始,规划设计过程,并形成相应的文档资料,包括内容规划、技术规划等。通过这种模块化层层推进的教学方式,不仅把教学内容在实践作了诠释,而且学生“边学边做”,更容易接受,课堂效果显著提高,实现了“越做越精”。使学生从课程开始就围绕着一个典型项目进行教学和实践,不仅熟悉了网站设计的流程,而且掌握网站建设的具体操作方法。
(三)教学考核过程化
教学内容的模块化,决定了课程采用“过程+作品”的考核模式。实践表明,《电子商务网站设计》课程的考核最佳的方式应该以学生实际做的网站作品作为考核的主要内容,整个教学过程中,不同的阶段完成不同的任务,每个模块或子项目结束我们就可以对学生的作品进行考核。过程考核对教师而言,通过学生作品的不断反馈来促进教学质量的提升,课程结束,学生的网站作品也基本形成了,这时可以按学生的网站作品进行整体考核,结合过程评分,完成课程考核。
(四)实践环境企业化
在电子商务专业实践环境建设方面,我院一直大力投入,不仅建成有电子商务实训室、商务英语等实训室,还新建了网上创业孵化实训基地(图1),基地是由淘宝网和我院合作共建,淘宝网提供网络创业平台及相关网络资源,在学院提出要加强电子商务专业实训条件建设后,我们积极调研,先后参观学习了多所高职院校和电子商务企业,最终锁定淘宝网,我们要让我们的学生学会创业,因为近年来大学生创业问题越来越受社会的关注,大学生经过多年的教育以及高职院校学生难就业等问题的突显,鼓励大学生自主创业必将成为大学生就业之外的新领域,值得我们去引领和探索。
目前基地通过企业化运作,积极开展各类电子商务创业技能竞赛(图1),各类创业方案在基地开花结果。
(五)产学结合无缝化
以项目带动校企合作,走产学结合之路[3],项目化教学的优点是无现成的、开放的和可操作的,这就要求老师课前要精心组织、学生要有兴趣参与和企业要舍得要投入,只有三方积极配合才能实现。在教学中我们积极和淘宝网等网络公司合作,为淘宝网等设计方案,参与设计,在设计过程中淘宝网等给我们提出宝贵意见,我们进行修改和完善,老师和学生都在项目中取得进步。(1)作品即产品,学生在教师的指导下,不同的阶段完成不同的任务,课程结束,学生的网站作品也基本形成了,这时可以按学生的网站作品进行整体考核,优秀的网站作品进一步优化后可以转化为产品。(2)学习即学徒,学生全程参与网站调研、设计、测试和使用,使学生掌握网站建设的所有知识,学习的项目化,不仅培养了学生的动手、动脑的能力,还了解了企业网站的真实运作,学习的过程也就是学徒的过程,进入工作岗位可以直接参与企业网站建设。
三、总结
从实践来看,《电子商务网站设计》课程改革后,学生的学习目标明确,学生的学习兴趣有大幅提高,知识内容的实践性更强,学生通过完成具体网站项目的工作过程训练,使学生获得普适性的工作过程,实现网站创作过程的完整训练,培养了学生的网站设计的创造力和独立性,全面培养学生的综合素质,激发学生关注未来的职业需求,同时也加强了校企合作。
参考文献:
第一章开发环境及数据库概述
技术
简介
随着网络经济的到来,.NET技术是一项革命性的技术。它是微软公司推出的新一代互联网软件和服务战略,是一种面向网络、支持各种用户终端的开发平台环境。它包含了分布式计算、XML、组件技术、即时编译技术等多种功能集成的环境。.NET环境使用统一的Internet标准(如XML)将不同的系统对接,并采用高度分布式应用服务架构,而且使用了一个综合的管理程序。该程序能管理平台中运行的服务程序,为运行程序提供强大的安全保护后台。
C#是微软公司专门为.NET量身定做的一种编程语言,它与.NET有着密不可分的关系。例如,C#的类型其实就是.NET框架所提供的类型,C#本身并无类库,而是直接使用.NET框架所提供的类库。另外,类型安全检查启动资源回收、结构化异常处理等也都是交由CLR(公共语言运行时)处理的。因此,C#是最适合开发.NET应用的编程语言。
技术简介
是微软公司继ASP(ActiveServerPages:活动服务器页面)之后推出的用于创建、管理和部署Web应用程序的新的理想平台。它是使用.NET框架所提供的编程类库构建而成的。使创建、管理和部署Web应用程序变得非常容易。
所具有的新性能是:(1)WebControls,它使得创建forms和HTMLcontrols的工作变得简单易行。例如,在ASP中典型的选择框(selectbox)里,你不得不创建一个循环以便让控制系统装入数据。但在里,你将会拥有一个"data-bound",这意味着它会与数据源连接,并会自动装入数据。(2)语言支持,支持多种语言,它的缺省语言将是visualBasic而不是vbscript,这意味着我们可以摆脱vbscript的语言限制,我们的代码将是编译后运行的(而不是原来的解释执行)。(3)更好的代码控制,COM对象不需要再在服务器上注册,但是通过这种过程简化,你再也不能够在你的服务器上运行另外一个DLL版本,并且代码相当保密。这意味着,如果没有正确的开发工具和源代码,很难改变代码。(4)更好的升级能力,一个系统建成,本身有着一定的特性,以改进多处理器和串口环境中的性能。例如,sessionstate能够通过单独的处理器来维持,在一个单独的机器上,甚至在数据库中允许交叉的服务器会话。
......
目录
第一章开发环境及数据库概述
第二章网站的需求分析及功能介绍
第三章数据库设计
第四章网站的详细设计
第五章系统开发小结
第六章全文总结
参考资料
[1]黎晓东.精通编程.科学出版社
[2]桂思强.与数据库程序设计.中国铁道出版社
[3]陈峰棋.深入浅出程序设计.中国水利水电出版社
[4]苏红超.深入解析.科学出版社
[5]熊松明.轻松教程.航空工业出版社
[6][美]G.AndrewDuthie著,李万伦等译.程序设计.清华大学出版社
目
录
1. 引言……………………………………………………………………………………3
1.1毕业设计课题的来源与意义及所欲达到的目标……………………………………3
1.2 网站所完成的内容与结构……………………………………………………………3
1.3 方案的实施和步骤……………………………………………………………………8
2. 网站具体设计过程……………………………………………………………………8
2.1 后台服务器数据库的建立和连接……………………………………………………8
2.1.1用Access建立数据库名为eshop…………………………………………………8
2.1.2 数据库的连接………………………………………………...……………………12
2.2 前台客户端网页的设计和制作…………………………………………………...…12
2.2.1 首页………………………………………………………………………………...12
2.2.1.1 动态显示产品子类…………………………………………………...…………13
2.2.1.2显示今日热点内容………………………………………………………………13
2.2.1.3 显示最新商品内容…………………………………………………………...…13
2.2.2 商城的二级页面…………………………………………………………………...13
2.2.2.1应用样式到模板文件……………………………………………………………13
2.2.2.2商城子类名的横向重复显示……………………………………………………13
2.2.2.3 添加动态内容…………………………………………………………………...13
2.2.3 商城子类页面……………………………………………………………………...13
2.3 网站搜索功能……………………………………………………………………...…14
2.3.1商城快速搜索………………………………………………………………………14
2.3.2商城高级搜索………………………………………………………………………14
2.4商品购物车……………………………………………………………………………15
略…………共3章
:7600多字
有大量流程图、数据表、界面图
在admin目录下的一些源代码、参考文献
200元
课程代码:00906
请考生按规定用笔将所有试题的答案涂、写在答题纸上。
选择题部分
注意事项:
1.答题前,考生务必将自己的考试课程名称、姓名、准考证号用黑色字迹的签字笔或钢笔填写在答题纸规定的位置上。
2.每小题选出答案后,用2B铅笔把答题纸上对应题目的答案标号涂黑。如需改动,用橡皮擦干净后,再选涂其他答案标号。不能答在试题卷上。
一、单项选择题(本大题共2O小题,每小题1分,共20分)
在每小题列出的四个备选项中只有一个是符合题目要求的,请将其选出并将“答题纸”的相应代码涂黑。错涂、多涂或未涂均无分。
1.电子商务的竞争优势不包括
A.成本低廉化 B.生产周期缩短
C.配送费用低 D.简化流通环节
2.以数据形式流通、能被消费者和商家普遍接受的、通过互联网购物时使用的数字化货币是
A.电子现金 B.电子支票
C.智能卡 D.银行卡
3.只读存储器ROM属于
A.外存储器 B.内存储器
C.辅助存储器 D.随机存取存储器
4.以二维表格作为数据模型的数据库是
A.层次型数据库 B.网状型数据库
C.关系型数据库 D.第三代数据库
5.在.NET的体系结构中,.NET框架属于
A..NET开发平台 B..NET服务器
C..NET基础服务 D..NET终端设备
6.用户网上培训属于电子商务网站基本功能里的
A.产品展示 B.网上结算
C.网上订购 D.售后服务
7.企业网页美术设计应主要考虑企业的
A.产品形象 B.外观形象
C.整体形象 D.商标形象
8.电子商务网站技术解决方案确定的主要依据是网站的
A.用户 B.内容
C.功能 D.市场
9.电子商务主要面临4个安全问题,即保密性问题、认证问题、不可否认性问题和
A.病毒破坏问题 B.完整性问题
C.木马攻击问题 D.数据丢失问题
10.下列选项中不属于控制流程图基本成分的是
A.循环 B.处理步骤
C.条件判断 D.控制流
11.模块结构图由五种基本符号组成:模块、数据、控制、转换和
A.调用 B.继承
C.实体 D.关系
12.CMM的功能等级有
A.2个 B.3个
C.4个 D.5个
13.DELL网站属于
A.直销型 B.包销型
C.代销型 D.分销型
14.DNS服务器主要用于
A.IP地址与域名之间的解析 B.电子邮件的发送
C.网络的自动管理 D.远程传输文件
15.测试工具Xenu主要用于
A.灰盒测试 B.代码合法性测试
C.链接测试 D.安全性测试
16.电子商务网站的生命周期中,系统逻辑模型的构建完成于
A.系统规划阶段 B.系统分析阶段
C.系统开发阶段 D.系统实施阶段
17.数据驱动测试被称为
A.灰盒测试 B.黑盒测试
C.性能测试 D.代码合法性测试
18.下列关于动态网页的说法不正确的是
A.以数据库技术为基础 B.使用网络编程技术
C.往往有程序和逻辑控制 D.指网页上各种动画、滚动字幕等动态效果
19.企业系统集成中一系列相互衔接、自动进行的业务活动或任务称为
A.中间件 B.工作流
C.数据集成 D.服务件
20.极限编程提倡
A.每个人单独完成同一段程序
B.任何人都不能修改其他人写的程序
C.每个人按照自己的风格编写具有个性化的程序
D.两个人一起写同一段程序
非选择题部分
注意事项:
用黑色字迹的签字笔或钢笔将答案写在答题纸上,不能答在试题卷上。
二、填空题(本大题共10小题,每小题1分,共10分)
21.亚马逊书店主要的电子商务模式是__________。
22.数据库的基本功能包括数据定义、__________和数据控制。
23.企业应用集成分为数据集成和__________。
24.目前主要有三种不同又相互关联的网络模式,即Intranet、Extranet、__________。
25.系统流程图是一种用来描述系统__________模型的传统工具。
26.将所有现存的与将被发展出来的各种能力成熟度模型集成到一个框架中去的是__________。
27.常见的物流解决方案包括物流中央化、高效配送中心以及__________等。
28.J2EE中用于数据库访问的接口组件是__________。
29.通过普通电话线提供宽带数据业务的技术是__________。
30.电子商务网站功能测试的主要方法有__________、黑盒测试和灰盒测试。
三、名词解释题(本大题共5小题,每小题3分,共15分)
31.第三方物流
32.业务流程图
33.数据库
34.中间件
35.个性化信息服务
四、简答题(本大题共5小题,每小题5分,共25分)
36.简述服务类电子商务网站应提供的服务内容。
37.简述B2C电子商务模式的特点。
38.简述Web服务的主要特点。
39.简述广度维度的企业应用集成包括的内容。
40.简述极限编程的软件开发过程。
五、综合题(本大题共2小题,每小题10分,共20分)
41.试述电子商务网站规划的主要内容。
42.某手机销售网站采用如下规则判定注册会员是否为潜在顾客(用R=1表示是潜在顾客,R=0表示非潜在顾客):
(1)年龄在3O岁(含)以下,如果是学生则非潜在顾客,如果不是学生则是潜在顾客;
(2)年龄在3O岁到40岁之间则是潜在顾客;
(3)年龄在40岁(含)以上,如果信誉等级为差则非潜在顾客,如果信誉等级为优则是潜在顾客。
请画出上述规则的决策树。
六、案例分析题(本大题共1小题,1O分)
43.A公司是国内一家生产、销售运动服装的知名企业,现采用实体店专卖连锁经营方式进行产品销售,为了进一步提升公司管理水平和扩大市场份额,公司决定开展电子商务,在网上销售公司生产的各类运动服装。
请结合本案例回答以下问题:
《电子商务网站设计》课程是针对培养学生电子商务系统开发能力而开设的一门专业核心课程,是该专业学生能力培养的重要课程。该课程培养学生在分析电子商务系统的功能需求、规划设计电子商务网站的架构和电子商务网站开发等方面的具体能力,是电子商务专业学生一门综合性课程,为其以后的发展打下良好的基础。本文对我院《电子商务网站设计》的开设现状、存在问题及教学改革作了相关研究。
一、课程现状
目前各高校《电子商务网站设计》是以培养学生的网站信息管理与编辑技能为主要目标。该课程涉及到商务网站规划设计、站点素材的搜集与编辑、网站功能实现和页面制作、网站与管理等多方面的知识和技能 , 涵盖内容广 , 实践性很强。主要讲解如何应用“网页制作三剑客”创建和管理网站、网页的制作及链接、图片素材的编辑处理等 ;使学生了解如何规划并建立站点,掌握制作网页的基础知识,能熟练利用“网页制作三剑客”的强大的功能制作出精美的网站。另外,为了使学生掌握制作动态网站的技术,一般还会讲授“动态网页设计”内容,使学生掌握一门网页编程技术的基本概念、基本原理、学习制作动态网站。如在该课程中介绍 ASP 技术,掌握 ASP 的编程环境 IIS 的构建与配置 ;掌握 ASP 的编程语言VBscript 和Javascript 的语法 ;掌握 ASP 与数据库的连接与操作。
二、存在的问题
现有课程现状的安排导致本课程的教学存在以下误区 :教学内容基本停留在对工具的使用或语言的学习及掌握上 ;内容偏计算机,学生很难学懂 ;特别是电子商务专业学生以文科生来源为主,学生程序设计学习很少,对于动态网页编程技术很难掌握。内容太多,目标性应用不强,学生没兴趣学;理论内容与实践内容相互独立, 在实际应用中一般先讲工具软件、数据库、编程语言的使用,再让学生实践,理论与实践各自有各自的计划和目标,理论基本不能为实践服务。电子商务技术发展迅速,建设小型电子商务内网站的工具也越来越倾向于模版式的傻瓜式操作,在教学过程中教师教授的理论知识的获取来源于书本及网络,没有到目标公司实地调研的经历,因此在课程讲解中缺乏市场需求依据,照本宣科,使电子商务网站建设与管理课程缺少了“真实性”,由此学生对本学科的态度容易产生无用论。
三、“项目”+“案例”教学模式构建
“项目”教学是指电子商务网站建设课程以项目的开发作为教学的总目标,项目可分为若干“案例”,第一次课时教师将项目背景阐述清楚,让学生清楚的知道学完这一门课之后能解决怎么样的问题,将掌握怎么样的技能,将会具体实现什么样的应用。建立起学生的学习兴趣。“案例”教学是指课程教学中以典型案例划分教学内容,以案例引导课堂教学,以案例引导学生知识点的掌握,以实际案例为剖析对象,教师指导下教学和学生共同参与案例的分析、讨论以寻求实现方法,实现理论与实践一体化。
表一:课程项目――案例分解表
项目过程 子项目 案例
需求分析阶段
项目一初识电子商务网站
案例一从传统商务到电子商务
案例二电子商务网站的概念、功能与特点
案例三成功案例分析
项目二电子商务网站规划 案例一电子商务网站需求分析
案例二域名策略与ISP选择
案例三服务器解决方案
系统设计阶段 项目三电子商务网站设计
案例一网站结构设计
案例二网站内容设计
案例三网站风格、创意与形象设计
技术准备阶段 项目四运用HTML编写网页 案例一HTML入门
案例二运用HTML布局页面
案例三建立超链接与图像处理
开发阶段
(技术分解学习) 项目五“春江翠堤”网站界面设
计 案例一网页导航栏制作
案例二网页Logo制作
案例三网页Banner制作
案例四网页页面编排
案例五网页切片
项目六“春江翠堤”网站动画制
作 案例一“广告语”打字效果动画制作
案例二网页Banner动画制作
案例三图片切换播放效果制作
案例四网页Banner完善
案例五Flash广告制作
项目七“春江翠堤”网站制作 案例一网站制作基础入门
案例二构建本地站点
案例三布局首页表格
……
案例十三站点的与维护
强化开发过程
项目 项目八网上书店制作实例 案例一《网上书店》功能设计
案例二《网上书店》站点规划
案例三《网上书店》网页制作-图书浏览模块
关键词: 电子商务;B2C;;C#;SQL Server
Key words: electronic commerce;B2C;;C#;SQL Server
中图分类号:TP311 文献标识码:A 文章编号:1006-4311(2013)20-0220-05
0 引言
电子商务是指整个事务活动和贸易活动的电子化,它通过先进的信息网络,将事务活动和贸易活动中发生关系的各方有机地联系起来。B2C(Business-to-Consumer)电子商务网站实际上就是一种企业对消费者的网上购物商城,在该网站中,注册会员可以购买任何商品,而管理员可以对商品、注册会员等信息进行管理[1]。
是一种动态网页技术,在服务器端运行.Net代码,动态生成HTML,然后响应给浏览器。(Active Server )4.0是微软公司推出的基于.NET 框架的新一代网络编程语言,也是目前最新的Web技术之一。作为之前各个版本的集大成者, 4.0开创了公共语言运行库和动态语言运行库相结合的编程框架,可用于在服务器上生成功能强大的Web应用程序[2]。
1 电子商务网站分析与设计
1.1 网站分析与设计 在电子商务网站中,主要包括商品管理、会员管理、购物车、商品搜索四个功能模块。商品管理模块主要包括浏览、添加、修改和删除商品4大功能。管理员可以在商品管理页面中通过单击删除按钮来删除网站中的商品,当单击详细信息按钮时,页面跳转到编辑商品页面,在该页中,可以添加和修改商品信息。
为了方便用户的注册和登录进而设置了会员管理模块,此模块主要保存会员的登录名、密码等一些基本信息。当填写完必填内容后,单击注册按钮,即可将这些信息保存到数据库中的相应表中。会员登录时,对会员的身份进行验证。
电子商务系统中的购物车同实际生活中的购物车一样,都是用于暂时保存挑选的商品。购物车主要包括添加商品、查看购物车、删除购物车中商品和结账等4大功能,当已经登录的会员在商品信息页面中单击购买按钮时,页面跳转到购物车页面,并将会员所选择的商品显示在该页面中,会员可以在这里选择结账、清空购物车或继续购买中的任何一种操作。
在电子商务网站中,常常需要设置商品搜索功能,以方便会员或管理员查看指定商品的详细信息。当选择完搜索条件,并在“关键字”文本框中输入要搜索的内容时,单击搜索按钮,即可将相应商品的基本信息显示在GridView控件中。
1.2 数据库分析与设计 数据库建立的正确与否对系统是否能正常而准确有效的运行起着关键性作用。所建立的数据库要避免冗余,同时要做到覆盖面广,既要使编制的程序便于对数据库进行维护管理,又要最大程度缩短运算及操作时间,从而增加了建立数据库的难度[3]。该网站采用SQL Server2005作为后台,建立的数据库主要包含6个表。
①tb_GoodsInfo表:存储商品的详细信息。
②tb_GoodsType表:存储商品的分类信息。
③tb_Image表:存储商品图片信息。
④tb_Member表:存储会员信息。
⑤tb_OrderInfo表:存储购物车中的订单信息。
⑥tb_StoreInfo表:存储商品所属仓库信息。
2 数据库访问技术
2.1 数据库访问技术 在电子商务网站开发中,数据库访问技术是其关键技术之一。用户的注册、登录,浏览、搜索商品,订单的生成、查询等都牵涉到对数据库的访问,中是通过来访问数据库的[4]。是应用程序与数据库进行交互的一种技术,应用程序可以通过连接到各种数据源,并检索、操作和更新数据。使用DataReader对象和DataSet对象读取以及访问数据库是提供的两种访问数据库的方式。
读取数据源最简单的方式就是使用DataReader对象,它只能实现读取数据,而不能写入数据,返回一个只读、只进的数据集。DataSet对象必须配合DataAdapter对象使用,DataAdapter对象在Command对象之上,用来执行SQL命令,然后将结果置入Dataset对象。此外,DataAdapter对象也可以将DataSet对象更改过的数据写回数据源[5]。
2.2 电子商务网站数据库访问的实现
2.2.1 在配置文件Web.Config添加数据库连接字符串。
2.2.2 在项目中添加数据库操作公共类SqlOperate.cs
//调用配置文件Web.Config中的数据库连接字符串
SqlConnection sqlconn=new SqlConnection(Configuration
Manager.AppSettings["ConnectionString"]);
//DataCom方法主要用来执行SqlCommand中的SQL语句
public void DataCom(string sqlstr)
{
sqlconn.Open();
SqlCommand sqlcom = new SqlCommand(sqlstr,sqlconn);
sqlcom.ExecuteNonQuery();
sqlconn.Close();
}
// gvDataBind方法主要用来执行SqlDataAdapter中的SQL语句,并将执行结果绑定到GridView控件上
public void gvDataBind(GridView gv, string sqlstr)
{
sqlconn.Open();
SqlDataAdapter myda = new SqlDataAdapter(sqlstr,sqlconn);
DataSet myds = new DataSet();
myda.Fill(myds);
gv.DataSource = myds;
gv.DataBind();
sqlconn.Close();
}
// dlDataBind方法主要用来执行SqlDataAdapter中的SQL语句,并将执行结果绑定到DataList控件上
public void dlDataBind(DataList dl, string sqlstr)
{
sqlconn.Open();
SqlDataAdapter myda = new SqlDataAdapter(sqlstr, sqlconn);
DataSet myds = new DataSet();
myda.Fill(myds);
dl.DataSource = myds;
dl.DataBind();
sqlconn.Close();
}
// ddlDataBind方法主要用来执行SqlDataAdapter中的SQL语句,并将执行结果绑定到DropDownList控件上
public void ddlDataBind(DropDownList ddl, string sqlstr,string dvf)
{
sqlconn.Open();
SqlDataAdapter myda = new SqlDataAdapter(sqlstr, sqlconn);
DataSet myds = new DataSet();
myda.Fill(myds);
ddl.DataSource = myds;
ddl.DataValueField = dvf;
ddl.DataBind();
sqlconn.Close();
}
3 功能模块的实现
3.1 商品管理
3.1.1 在网站中分别添加一个GoodsManage.aspx页面和一个EditGoods.aspx页面,其中GoodsManage.aspx页面用来显示商品信息,而EditGoods.aspx页面用来显示相应商品的详细信息并进行商品编辑。
在GoodsManage.aspx页面添加GridView控件gvGoodsInfo,使用GridView控件的列进行页面传值。在GoodsManage.aspx页面的Page_Load事件中,首先定义数据库查询字符串,查询数据库vb_GoodsInfo中的所有商品信息。
string sqlstr = "select * from vb_GoodsInfo";
GridView 的DataKeyNames属性获取或设置一个数组,该数组包含了显示在GridView控件中的项的主键字段的名称,GoodsID作为主键字段。
gvGoodsInfo.DataKeyNames = new string[] { "GoodsID" };
调用SqlOperate类中的gvDataBind (GridView gv, string sqlstr)方法,在GridView控件中显示所有商品信息。
sqloperate.gvDataBind(gvGoodsInfo, sqlstr);
3.1.2 在商品管理页面中单击删除超级链接按钮时,后台会自动删除该按钮对应商品的相关信息。GridView控件的RowDeleting事件代码如下:
protected void gvGoodsInfo_RowDeleting(object sender, GridViewDeleteEventArgs e)
{
string sqlstr="delete from tb_GoodsInfo where GoodsID=′′′+
gvGoodsInfo.DataKeys[e.RowIndex].Value+′′′";
sqloperate.DataCom(sqlstr);
Response.Redirect("GoodsManage.aspx");
}
3.1.3 当用户单击商品管理页面中的详细信息超级链接按钮时,页面跳转到EditGoods.aspx页面,该页实现的主要功能是编辑相关商品的详细信息或添加一些新的商品。
使用GridView控件的列进行页面传值技术。在GridView控件中添加一个HyperLinkField列字段,并将其DataNavigateUrlFields属性设置为要进行传值的数据表字段,DataNavigateUrlFormatString属性设置为要链接到的页面及根据哪个值进行传值,其属性设置格式为:Index.aspx?id={0}。
3.1.4 当管理员对TextBox文本框或DropDownList下拉列表框中内容进行修改之后,单击修改按钮,可以完成对商品的修改操作。修改商品信息的字符串定义:string sqlstr = "update tb_GoodsInfo set GoodsName=′′′+商品名称+′′′,GoodsPrice=′′′商品价格+′′′,GoodsTypeID=′′′+商品ID+′′′,GoodsIsNew=′是′,GoodsIntroduce=′′′+商品介绍+′′′,GoodsPhoto=′′′+商品图片+′′′where GoodsID=′′′+Request["GoodsID"].ToString( )+′′′";
在商品详细信息页面中,如果要添加一些新商品,可以自己重新填写TextBox文本框中内容及重新选择DropDownList下拉列表框中选项,这里需要注意的是,在添加商品时,首先需要检测是否已经存在该商品,如果已经存在,弹出“该商品已经存在”对话框,否则,将该商品信息插入相关数据表。
3.2 会员管理 会员注册的主要技术要点是SqlDataReader类和验证控件的使用。SqlDataReader类用来从SQL Server数据库中读取行,要创建SqlDataReader类对象,必须调用SqlCommand类的ExecuteReader方法,而不能直接使用构造函数。验证会员名和密码等不能为空需要用到RequiredFieldValidator验证控件,验证E-mail地址格式和邮编格式是否正确需要使用RegularExpressionValidator验证控件。
用户填写完信息之后,单击注册按钮,如果该会员登录名在数据表中不存在,则其信息就会保存到相应的数据表中,否则,重新注册。注册按钮的Click事件代码如下:
protected void btnRegister_Click(object sender, EventArgs e)
{
string sqltest = "select * from tb_Member where MemberName=′′′+ this.txtLoginName.Text +′′′";
sqlconn.Open( );
SqlCommand sqlcom = new SqlCommand(sqltest, sqlconn);
SqlDataReader read = sqlcom.ExecuteReader( );
read.Read( );
if (read.HasRows)
{
if(this.txtLoginName.Text.Trim( )==read
["MemberName"].ToString( ).Trim( ))
{
Response.Write("alert('该会员已经注册过''); '");
return;
}
}
string sqlstr = "insert into tb_Member "+
"(MemberName,MemberSex,MemberPWD,
MemberTName,"+
"MemberQue,MemberAns,MemberPhone,MemberEmail,MemberCity,MemberAddress,MemberPostCode, MemberPhoto)"+ "values(′′′+txtLoginName.Text +′′′,′′′+
ddlSex.SelectedValue+′′′,′′′+txtPwd.Text +′′′,′′′+txtTName.Text+′′′,′′′+txtQuePwd.Text+′′′,′′′+txtAnsPwd.Text+′′′,′′′+ txtTel.Text+′′′,′′′+txtEmail.Text+′′′,′′′+
ddlCity.SelectedValue+′′′,′′′+txtAddress.Text+′′′,′′′+txtPostCode.Text+′′′,′′′+
ddlPhoto.Text+′′′)";
sqloperate.DataCom(sqlstr);
sqlconn.Close( );
Session["regName"] = txtLoginName.Text.Trim( );
Response.Redirect("SuccReg.aspx");
}
3.3 购物车的实现
3.3.1 分别添加1个EditGInfo.aspx页面和1个Shopping.aspx页面,其中,EditGInfo.aspx页面用来显示商品详细信息,并给会员提供购买商品功能,Shopping.aspx页面用来查看会员购买的商品信息,并可以通过单击结账超级链接按钮来确定购买这些商品。
在EditGInfo.aspx页面的Page_Load事件中,程序根据接受的商品ID将相应商品的详细信息显示在服务器端控件中。通过Page属性的Request.QueryString方法获得商品ID,然后vb_GoodsInfo数据库中检索出相应商品并显示出来。
string strid = Page.Request.QueryString["GoodsID"];
string sqlstr = "select * from vb_GoodsInfo where GoodsID=′′′+ strid +′′′";
3.3.2 当会员单击EditGInfo.aspx页面中的购买按钮时,程序首先判断该会员是否登录,如果已经登录,则将该会员所要购买的商品保存到相应数据表中,并将页面定向到Shopping.aspx页面,否则,弹出提示框提示会员还没有登录。判断会员是否登录通过Session来实现。
if (Session["用户名"] == null)
{
Response.Write("alert(′您还没有登录,请登录后再购买!′);
}
单击购买按钮将登陆用户所购买商品插入tb_OrderInfo数据库的字符串如下:
string sqlstr = "insert into tb_OrderInfo" + "(OrderMember,GoodsID,GoodsName,GoodType ID,
GoodsTypeName,GoodsPrice,IsCheckout)"+ " values(′′′+ Session["用户名"].ToString( ) +′′′,′′′+商品ID.Text.Trim( ) + ′′′,′′′+商品名称.Text.Trim( ) +′′′,′′′+商品类别ID+′′′,′′′+商品类别.Text.Trim( )+′′′,′′′+商品价格.Text.Trim( )+′′′,
′否′)";
3.3.3 在Shopping.aspx页面的Page_Load事件中,显示该会员所要购买的商品,并计算出商品的总金额,汇总会员所选商品的价格是通过SQL中的聚合函数sum来实现,使用sum合并列值。
string 总价格 = "select sum(GoodsPrice) as tprice from tb_OrderInfo"+" where OrderMember=′′′+Session["MName"].ToString( );
如果会员要结账,单击结账超级链接按钮。在该按钮的Click事件中,判断会员当前充值余额是否大于购物车内商品的总金额,如果大于,则成功购买所选商品,否则不能购买。结账超级链接按钮的Click事件主要代码如下:
// MemberMoney是会员的充值金额,labMoney.Text为所购商品的合计金额
string MPrice = Convert.ToString(mydrv.Row["MemberMoney"]);
if(Convert.ToInt32(MPrice) < Convert.ToInt32(labMoney.Text.Trim( )))
{
Response.Write("alert('您的余额不足,请重新充值后再购买!');
}
else
{
string sqlstrshop1 = "update tb_Member set MemberMoney=′′′+ (Convert.ToInt32(MPrice) - Convert.ToInt32(labMoney.Text)) +′′′where MemberName=′′′+ Session ["MName"].ToString( ) +′′′";
sqloperate.DataCom(sqlstrshop1);
string sqlstrshop2 = "update tb_OrderInfo set IsCheckout=′是′where OrderMember=′′′+ Session["MName"]. ToString( ) +′′′";
sqloperate.DataCom(sqlstrshop2);
3.4 商品搜索 在商品管理页面中(图5),程序根据所选搜索条件和用户输入的搜索关键字,调用公共类中的gvDataBind(GridView gv, string sqlstr)方法来搜索相关商品信息。GoodsManage.aspx页面中搜索按钮的Click事件代码如下:
protected void btnSel_Click(object sender, EventArgs e)
{
if (txtKey.Text == "")
{
string sqlstr = "select * from vb_GoodsInfo";
sqloperate.gvDataBind(gvGoodsInfo, sqlstr);
}
else
{
string sqlstr = "select * from vb_GoodsInfo where " + 搜索条件.SelectedValue + " like
'%" +关键字.Text.Trim( ) + "%'";
sqloperate.gvDataBind(gvGoodsInfo, sqlstr);
}
}
4 结束语
本文设计并实现了B2C电子商务网站的主要功能,开发过程中的技术要点包括:在商品管理模块中,使用GridView控件的列进行页面传值;在会员注册页面使用SqlDataReader类从SQL Server数据库中读取行;在购物车的实现模块,通过Session传值技术来判断会员是否登录。判断会员的当前充值是否能够购买其选择的所有商品是通过汇总会员所选商品的价格,并将其跟会员的当前充值进行比较来实现的,而汇总会员所选商品的价格是通过SQL中的聚合函数sum来实现。
可以使用C#、和J#等多种语言来编写服务器端代码,这些语言的功能都很强大,并且也是纯面向对象的。页面的服务器端代码是完全已编译和可执行的,并且采用逐行解释的方式,这种方式可以提高性能,也可以在编译阶段检测到更多的错误。后置代码技术将页面的可视化部分和业务逻辑分离,其技术优于把HTML和服务器端代码放在同一个文件中的服务器端技术。Web窗体能使用像Windows应用程序那样用基于控件的界面创建Web应用程序,向客户端提供Web功能的标准方式。Web用户控件可以很容易地在多个Web窗体实现功能片段的重用。母版页技术可以使网站中的不同页面的可视化效果和部分功能保持一致。几乎全是基于组件和模块化,每一个页、对象和HTML元素都是一个运行的组件对象[6]。因此,使用简单,功能强大,开发和执行效率高,利用它可以很方便的开发动态的、交互的、高性能的电子商务网站。
参考文献:
[1]明日科技,王小科,赵会东程序开发范例宝典[M].北京:人民邮电出版社,2012.
[2]张正礼,王坚宁 4.0从入门到精通[M].北京:清华大学出版社,2012.
[3]饶云波等.基于的电子商务平台设计与实现[J].计算机技术与发展,2006(5):160-162.