|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
ASP最大的缺点在于网络的安全性和可靠性,企业将经营数据放在开放的平台上,最大的担忧就是如何保证这些数据不被其他人破坏。js|电子商务<Pstyle="TEXT-INDENT:2em">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与收集数据库的操纵是电子商务网站平台计划的刚强基石。<Pstyle="TEXT-INDENT:2em">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: rade目次下,用怎样文本编纂器,天生扩大名为.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.3in;增添新的情况参数classpath=d:jdk1.3lib ools.jar;d:jdk1.3libdt.jar;,然后从头启动盘算机便可安装撑持JSP的web服务器Resin1.1.3,将RESIN-1.1.3.zip开释为d:Resin1.1.3便可。设置服务器端口,翻开d:/resin1.1.3/conf/目次下的resin.conf文件在<Pstyle="TEXT-INDENT:2em">8080标签处将端口设置为82(在我的NT5.0上装有三个服务器,如许三个服务器的端口分离为IIS:80;Apache:81;Resin:82实在也可设置为其他互不抵触的端标语).测试JSP:启动Resin服务器,启动扫瞄器,在地点栏处输127.0.0.1:82/,若扫瞄到Resin服务器的JSP接待页面,申明安装乐成<Pstyle="TEXT-INDENT:2em">3.天生三种格局的静态表单页面为了通用,这里接纳大概用到的表单工具为例,至于上面计划详细数据表用到的字段,只需转成给出的表单域响应工具便可.3.1用ASP静态天生与数据库举行数据交换的操纵表单:form.asp:天生表单域头:天生一般文本:天生暗码文本:天生转动文本:天生单选:天生复选:天生列表框:天生提交按钮天生重填按钮天生表单域尾3.2用PHP静态天生与数据库举行数据交换的操纵表单:form.php天生表单域头:"?>天生一般文本:"?>天生暗码文本:"?>天生转动文本:"?>天生单选:"?>天生复选:"?>天生列表框:收集数据库Asp手艺Php手艺Jsp手艺网站计划"?>天生提交按钮"?>天生重填按钮"?>天生表单域尾"?>3.3用JSP静态天生与数据库举行数据交换的操纵表单form.jsp天生表单域头:天生一般文本:天生暗码文本:天生转动文本:天生单选:天生复选:天生列表框:天生提交按钮天生重填按钮天生表单域尾<Pstyle="TEXT-INDENT:2em">4.计划用于存储商务网站交互数据的MySql数据库4.1启动MySql数据库服务器(MySql的安装及ODBC驱动程序的安装与设置请参阅相干书本)可在NT5.0下用启动服务法/NET命令法/命令窗口键进MySqld-shareware法,启动MySql数据库服务器,启动数据库服务器后,在d:mysqlin>提醒符下键进mysql-h127.0.0.1-uroot便可呈现mysql>提醒符,从这入手下手便可举行对MySql数据库的各类操纵。若要加入可键进quit/exit,若要封闭数据库服务器,可在d:mysqlin>提醒符下键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)<Pstyle="TEXT-INDENT:2em">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"<Pstyle="TEXT-INDENT:2em">"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.Close5.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等很多服务器JavaJavaBean6.2毗连数据库的办法:经由过程上述操纵可看出,本文彩用了三种操纵MySql数据库的办法,Asp接纳间接驱动法,Php接纳MySql函数法,Jsp接纳JDBC-ODBC/JavaBean法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计划手艺.
ASP最大的缺点在于网络的安全性和可靠性,企业将经营数据放在开放的平台上,最大的担忧就是如何保证这些数据不被其他人破坏。 |
|