電子商務網站設計論文

時間:2022-04-25 09:43:00

導語:電子商務網站設計論文一文來源于網友上傳,不代表本站觀點,若需要原創文章可咨詢客服老師,歡迎參考。

電子商務網站設計論文

摘要:本文分別利用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-AtiveServerPage,由微軟公司開發,是一個WEB服務器端的開發環境,主要采用腳本語言VBScript(或javascript/perl等)作為自己的開發語言,可用ODBC或直接驅動法訪問Window平臺的數據庫。PHP-PersonServerPage,是由Rasmus個人創立的一種跨平臺的服務器端的嵌入式腳本語言.它大量地借用C,Java和Perl語言的語法,并耦合PHP自己的特性,.是一種很有個性的網站開發語言,它支持目前絕大多數數據庫。JSP-JavaServerPage,是Sun公司推出的新一代站點開發語言,Sun公司除Java應用程序和JavaApplet之外,又創立了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:啟動瀏覽器,在地址欄處輸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法

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.12LeonAtkinson.PHP核心編程.清華大學出版社,2000.43石振國.多媒體通信網頁的Java設計技術.