当前位置: 首页 > 图文教程 > 网页制作 > Dreamweaver > DW MX实例:给产品下订单

Dreamweaver
Dreamweaver4探谜系列(1)
自己动手用Dreamweaer制作活动菜单条
DreamWeaver经典技巧四则
网页制作小技巧:还网页链接“清白”
如何批量消除网页连接上的“虚线框”
Dreamweaver使用中的常见问题与解答
使用Dreamweaver便捷技巧方法十六则
Dreamweaver技巧50问
定义本地站点
友情连接地址代码-线线表格
Dreamweaver技巧十二招
制作会移动的广告条
Dreamweaver MX技巧之超链接
Dreamweaver制作网页幻灯片效果
在Dreamweaver MX中应用“占位图形”
巧用Dreamweaver MX设计导航栏特效
不要跳转或刷新 实现网页区域选择显示
使用Dreamweaver MX表格排序功能
用Dreamweaver制作活动菜单条
Dreamweaver制作网页实用七小招

Dreamweaver 中的 DW MX实例:给产品下订单


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-23   浏览: 37 ::
收藏到网摘: n/a

  上一个实例中讲解了如何在线购物。当完成了在线购物后,就可以给产品下订单了,下订单时需要将产品发给客户以备核对,本实例就来讲解其实现过程。

  效果说明 在“ index.apx ”中浏览公司产品,然后单击【购买】按钮将产品添加到购物车中,当订购完毕后,单击购物车中的【确定下订单按钮】,将购物车中的产品添加到订单数据库中,再用邮件将订单自动发给客户,并显示出如图 84-1 所示的订单效果。

  

Dreamweaver



  创作构思 单击购物车中的【确定下订单按钮】,将购物车中临时表“ Cpdat ”里的所有记录添加到“ CPDD ”(产品订单)表中,再通过 System.Web.Mail 对象完成电子邮件的发送。

  操作步骤

  步骤一 给产品下订单

  ( 1 ) 打开“ CPBY.aspx ”页面,在 <script runat="server"> 中添加过程“ NewOrder_Click ”,其代码如下所述。

  Sub NewOrder_Click(sender As object, e As EventArgs)

  Dim cpConn,Cpstring AS String

  Dim conn AS OleDbConnection

  Dim Cpadapter AS new OleDbDataAdapter

  Dim Cpdat AS DataSet

  Dim dt AS DataTable

  Dim Newnow

  Dim Tystring as string

  cpConn = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & server.MapPath ("dat/dwdat.mdb")

  conn = New OledbConnection(cpConn)

  Cpstring = "SELECT * from CPDD"

  Cpadapter = new OleDbDataAdapter(Cpstring,conn)

  Dim yy as OleDbCommandBuilder=new OleDbCommandBuilder (Cpadapter)

  Cpdat = New DataSet()

  Cpadapter.Fill(Cpdat,"CPDD")

  Dim i as integer

  Newnow=now

  Tystring=session("USENAME")+Cstr(year(Newnow))+iif(len(month(Newnow))=2,cstr(month(Newnow)),"0"+cstr(month(Newnow)))+iif(len(day(Newnow))=2,cstr(day(Newnow)),"0"+cstr(day(Newnow)))+cstr(hour(Newnow))+cstr(Minute(Newnow))+cstr(second(Newnow))

  For i=0 to Cpbt.Rows.Count-1

  Dim dr As DataRow = Cpdat.Tables("CPDD").NewRow()

  dr(0) = Tystring

  dr(1) = Cpbt.Rows(i)("CPID")

  dr(2) = session("USENAME")

  dr(3) = Cpbt.Rows(i)("SL")

  dr(4) = Newnow

  Cpdat.Tables("CPDD").Rows.Add(dr)

  next

  Cpadapter.Update(Cpdat, "CPDD")

  session("Cpshop")=nothing

  Cpbt=nothing

  Cpview=nothing

  Cpdat=nothing

  conn.close

  response.Redirect("ReEmail.aspx?DDID="+Tystring)

  End Sub

  (读者可打开【光盘】|【源文件】|【实例 84 】|【 84.1.txt 】文件,直接复制)

  提示: OleDbDataAdapter 对象是 DataAdapter 对象的一种。 DataAdapter 对象是用于充当 DataSet 与实际数据源之间的对象, DataSet 可以通过 OleDbDataAdapter 对象来更新实际数据源,同样,实际数据源也可以通过 DataAdapter 更新 DataSet 对象。 DataAdapter 对象分为 SQLDataAdapter 对象和 OleDbDataAdapter 对象两种。 SQLDataAdapter 对象用于访问 SQL Server 等数据库, OleDbDataAdapter 对象用于访问使用 OLE DB 链接的数据库,如 Access 。如果代码使用了 OleDbCommandBuilder 对象,通过该对象就可以自动生成 InserCommand 、 DeleteCommand 、 UpdateCommand 属性所需要的 Command 对象,本例就是用它生成 InserCommand 的 Command 对象。

  图 84-2 所示是 CPDD 表(产品订单)在 Access 中的数据结构。

  

Dreamweaver



  这里需要特别说明的是,订单编号( DDID )是由用户的登录名、年、月、日、小时、分钟、秒组成的(以上时间参数都是用户下订单时的时间参数),所以代码为 Newnow=now ,首先取得下订单时的时间。代码 iif(len(month (Newnow)) =2,cstr(month(Newnow)), "0"+cstr(month(Newnow)) ,表示当前月份的位数小于 2 时,在其上面加上“ 0 ”,如目前月份为“ 5 ”时,则显示为“ 05 ”,所以代码为 Tystring=session( "USENAME") + Cstr( year(Newnow )) + iif(len (month ( Newnow ))=2 ,cstr (month( Newnow )), "0" + cstr (month( Newnow ))) + iif (len ( day( Newnow)) = 2 ,cstr( day( Newnow)),"0" + cstr( day( Newnow))) + cstr( hour( Newnow ))+ cstr( Minute( Newnow )) + cstr( second( Newnow ))) 。