⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 gocertogo.aspx

📁 asp做的新闻系统
💻 ASPX
字号:
<%@ Import Namespace="System.Data" %>
<%@ Import Namespace="System" %>
<%@ Import Namespace="System.Data.oledb" %>
<html>
<head>
<title>电子商店</title>
<script language="VB" runat=server>
  public Sub Page_Load(sender As Object, e As EventArgs)
      if (Not IsPostBack) Then
         '预设货价上的商品
         ProductListing.SelectedIndex =0
           UpdateProducts()
       End If
   End Sub
   '更新被选中的商品
   public Sub ProductListing_Select(sender As Object, e As EventArgs)
      UpdateProducts()
   End Sub
   '更新货价上的商品种类
   public Sub CategoryList_Select(sender As Object, e As EventArgs)     
       CurrentCategory.Text = CategoryList.Items(CategoryList.SelectedIndex).Text
       UpdateProducts()
   End Sub
   '将商品放入购物篮
   public Sub AddBtn_Click(sender As Object, e As ImageClickEventArgs)
      Dim productID As Integer
      Dim OrderList As ArrayList
      Dim qtyList As ArrayList
      '获取已经放入购物篮中的商品列表
      OrderList=Session("orderList")
      qtyList=Session("qtyList")
      '获取所选中的商品的编号
      productID=ProductListing.DataKeys(ProductListing.SelectedIndex)
      '首先检查是否已经有订购了这种商品
      If OrderList.IndexOf(productID)=-1 Then
         '将商品添加到购物篮中 
         OrderList.Add(productID)
         '预设商品的件数为1
         qtyList.Add("1")
      Else
         '如果该商品已经在购物篮中,则将其数量加一
         Dim num As integer= OrderList.IndexOf(productID)
         qtyList(num)=CInt(qtyList(num))+1
     End If
     '使用Session对象存储购物篮
     Session("orderlist")=orderlist
     Session("qtylist")=qtylist
    '重新显示购物篮
     UpdateShoppingCart()
    End Sub

   '更新购物篮
    Sub UpdateShoppingCart()
    '根据当前的session变量生成一张数据表
    Dim dt As New DataTable()
    Dim OrderList As ArrayList
    Dim qtyList As ArrayList
    Dim i As Integer
    Dim product As DataRow
    Dim productId as integer 
   '创建一个新表
   Dim myDataTable As DataTable=New DataTable("myDataTable")
   '声明行和列
   Dim myDataColumn As DataColumn
   Dim myDataRow As DataRow
   '创建数据列 
   myDataColumn=New DataColumn()
   myDataColumn.DataType= System.Type.GetType("System.Int32")
   myDataColumn.ColumnName = "qty"
   myDataTable.Columns.Add(myDataColumn)
   myDataColumn = New DataColumn()
   myDataColumn.DataType =System.Type.GetType("System.String")
   myDataColumn.ColumnName = "productname"
   myDataTable.Columns.Add(myDataColumn)
   myDataColumn = New DataColumn()
   myDataColumn.DataType =System.Type.GetType("System.Double")
   myDataColumn.ColumnName ="price"
   myDataTable.Columns.Add(myDataColumn)
   myDataColumn = New DataColumn()
   myDataColumn.DataType =System.Type.GetType("System.Double")
   myDataColumn.ColumnName = "total"
   myDataTable.Columns.Add(myDataColumn)
   ' 创建数据行    
   OrderList=Session("orderList")
   qtyList=Session("qtyList")
   for i=0 to OrderList.count-1
      productId=OrderList(i)
      product=GetProduct(productId)
      mydatarow=myDataTable.NewRow()
      mydatarow("qty")=qtylist(i)
      mydatarow("productname")=product("productname")
      mydatarow("price")=product("price")
      mydatarow("total")=mydatarow("qty")*product("price")
      myDataTable.Rows.Add(myDataRow)
   Next 
   ShoppingCartList.datasource=mydatatable.defaultview
   ShoppingCartList.databind()
   '更新收银台帐目
   updateshopchart()
End Sub

'更新收银台帐目
sub updateshopchart()
    Dim OrderList As ArrayList
    Dim qtyList As ArrayList   
    Dim productId As Integer
    Dim product As DataRow
    Dim i As Integer
    Dim subt,tal As Double
    Dim de as double=0.9
    OrderList=Session("orderList")
    qtyList=Session("qtyList")
    '统计总费用
    subt=0
    for i=0 to OrderList.count-1
      productId=OrderList(i)
      product=GetProduct(productId)
      subt+=product("price")*qtylist(i)       
    Next
    '显示总费用及打折后的费用
    tal=subt*de
    subtotal.text=string.format("{0:C}",subt)
    dec.text=de
    total.text=string.format("{0:C}",tal)
End sub

'根据商品编号获取商品的信息
Function GetProduct(productID As Integer) As DataRow
     Dim myConnString As String = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & server.MapPath("product.mdb")
     Dim myConnection As New OleDbConnection(myConnString)
     Dim product As New DataSet()
     myConnection.Open()
     Dim Adapter1 as OleDbDataAdapter
     Adapter1=new OleDbDataAdapter("Select * from Product where productID=" & productID, myConnection)
     Adapter1.Fill(product, "product")
     '返回该商品对应的数据记录
     GetProduct=product.Tables(0).Rows(0)
     myConnection.Close()
End function

'更新货架上的所有商品
Sub UpdateProducts()
    Dim categoryID As Integer
    '获取货价种类编号
    categoryID=CategoryList.Items(CategoryList.SelectedIndex).value
    Dim myConnString As String = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & server.MapPath("product.mdb")
    Dim myConnection As New OleDbConnection(myConnString)
    myConnection.Open()
    '将该种类的商品生成一张数据表products
    Dim Adapter1 as OleDbDataAdapter
    Adapter1=new OleDbDataAdapter("Select * from Product where categoryid=" & categoryID, myConnection)
    Dim products As New Dataset
    Adapter1.Fill(products, "products")
    ProductListing.DataSource=products.Tables(0).DefaultView
    ProductListing.DataBind()
    '更新商品信息
    Dim productID As Integer
    '获取当前被选中的商品的编号
    productID=ProductListing.DataKeys(ProductListing.SelectedIndex)
    '获取当前商品的详细信息
    Dim mySelectQuery As String = "Select detail,ProductName,Image from Product where productID=" & ProductId
    Dim myCommand As New OleDbCommand(mySelectQuery, myConnection)
    Dim myReader As OleDbDataReader=myCommand.ExecuteReader()
    '输出当前商品的名称、说明和对应的图片
    if myReader.Read() then
       detail.text=myReader.GetString(0)
       productname.text=myReader.GetString(1)
       SelectedProdPicture.Src = myReader.GetString(2)
    End if
    myConnection.Close()          
End sub

'清空购物篮
sub ClearCart_Click(sender As Object, e As ImageClickEventArgs)
    '清空Session对象中的购物信息
    Session("orderlist")=new ArrayList()
    Session("qtylist")=new ArrayList()
    '更新购物篮
    UpdateShoppingCart()
End Sub

'重新计算收银台的帐目
public Sub Recalculate_Click(sender As Object, e As ImageClickEventArgs)
    Dim qty As textbox
    Dim item as DataGridItem
    Dim i as integer
    '将购物篮中的商品数目重新写入qytlist
    for i=0 to session("orderlist").count-1
       qty=ctype(ShoppingCartList.Items(i).FindControl("Qty"),textbox)
       session("qtylist")(i)=qty.text
    next
    '更新购物篮
    UpdateShoppingCart()
End Sub
</script>
</head>
<body topmargin="0" leftmargin="0" marginwidth="0" marginheight="0">
<Form runat="server">    
<table cellspacing=0 cellpadding=3 bgcolor="white" border=0 width="100%">
    <tr>
     <td align="left"><img src="images/logo.gif"></td>
     <td align="right">
     <a><img border=0 src="images/home.gif"></a>
     </td>
    </tr>
    <tr>
     <td align="right" class="select" colspan="2">
     <b>选择商品种类: &nbsp;</b> 
     <select id="CategoryList" style="width:100" runat="server">
     <option selected value="1">时尚用品</option>
     <option value="2">食品饮料</option>
     <option value="3">书刊杂志</option>
     </select>
     <asp:button text="选择"  OnClick="CategoryList_Select"  runat=server/>
     </td>
    </tr>
</table>
        
<table border=0 width=100% cellspacing=0 cellpadding=15 bgcolor="white">
   <tr>
    <td valign=top bgcolor=bbffcc>
    <p>
    <h3>
    <b>商品种类: <asp:label id="CurrentCategory" runat=server></asp:label><b>
    </h3>
    <table width="100%" cellpadding=0 cellspacing=0 >
     <tr style="padding-left:12">
      <td align="center" style="border-style:inset;" bgcolor="white" width=140>
      <img id="SelectedProdPicture" runat=server>
      </td>
      <td align="center" bgcolor="bbffcc" style="padding-right:0;">                    
      <table cellpadding=1 >
        <tr>
         <td colspan=3>
         <b><font face="Verdana" size=3><asp:label id="Name" runat=server>                              </asp:label></font></b>
         </td>
         <td align=right>
         <asp:imagebutton ImageUrl="images/addcart.gif"  OnClick="AddBtn_Click" runat=server/>
         </td>
        </tr>
        <tr>
         <td colspan=4>
         <asp:label id=productname runat="Server"/>
         </td>
        </tr>
        <tr>
          <td colspan=4>                         
          <asp:textbox textmode="multiline" id="detail" readonly=true
               columns=40 rows=4 backcolor="#bbffcc" 
               borderstyle="dotted" runat="server"/>
          </td>
        </tr>
      </table>
      </td>
      </tr>
    </table>
    <p>

    <table>
    <tr>
     <td>
      <asp:datalist id="ProductListing" 
           DataKeyField="ProductId" showheader=false 
           showfooter=false OnSelectedIndexChanged="ProductListing_Select" 
           repeatdirection="horizontal" borderwidth=0 runat="server">
           <ItemTemplate>
             <table>
               <tr>
                <td width="150">
                <asp:imagebutton borderwidth=6 bordercolor="#ffffcc" 
                     commandname="Select" ImageUrl='<%#                                                                              DataBinder.Eval(Container.DataItem, "Image") %>' 
                     runat=server/>
                <p>
                <%# DataBinder.Eval(Container.DataItem, "ProductName") %> <br>
                <%# DataBinder.Eval(Container.DataItem, "Price", "{0:C}") %><br>
                </td>
               </tr>
             </table>
          </ItemTemplate>
          <SelectedItemTemplate>
            <table>
               <tr>
                <td width="150">
                <asp:imagebutton borderwidth=6 bordercolor="red" 
                     commandname="select" ImageUrl='<%# 
                     DataBinder.Eval(Container.DataItem, "Image") %>' runat=server/>
                <p>
                <%# DataBinder.Eval(Container.DataItem, "Productname") %><br>
                <%# DataBinder.Eval(Container.DataItem, "price", "{0:C}") %><br>
                </td>
               </tr>
            </table>
         </SelectedItemTemplate>
      </asp:datalist>
     </td>
    </tr>
   </table>
  </td>
  <td width="315" valign=top class="cart" bgcolor="#EDBE7B">
  <h3>购物篮</h3>

  <asp:DataGrid id="ShoppingCartList"
       BorderColor="black"
       BorderWidth="1"
       CellPadding="3"
       AutoGenerateColumns="false"
       runat="server">
  <HeaderStyle BackColor="#00aaaa">
  </HeaderStyle>
  <Columns>
    <asp:BoundColumn 
         HeaderText="商品" 
         DataField="productname"/>
    <asp:TemplateColumn
         Headertext="数量">
         <ItemTemplate>
         <asp:textbox size=1 id="Qty" runat=server
         text='<%# DataBinder.Eval(Container.DataItem, "Qty") %>'/>
         </ItemTemplate>
     </asp:TemplateColumn>
     <asp:BoundColumn 
         HeaderText="单价" 
         DataField="price"
         DataFormatString="{0:c}"/> 
     <asp:BoundColumn 
         HeaderText="总计" 
         DataField="total" 
         DataFormatString="{0:c}">
         <ItemStyle HorizontalAlign="right">
         </ItemStyle>
     </asp:BoundColumn>
  </Columns>
  </asp:DataGrid>
  
  <table border=0 width="100%">
  <tr>
   <td colspan=3><hr></td>
  </tr>
  <tr>
   <td width=225 colspan="2" align="left">
    <b>总共</b>
   </td>
   <td align="right" style="padding-right:10">
    <asp:label id="subtotal" runat=server/>
   </td>
  </tr>
  <tr>
   <td width=225 colspan="2" align="left">
    <b>打折</b>
   </td>
   <td align="right" style="padding-right:10">
    <asp:label id="dec" runat=server/>
   </td>
  </tr>
  <tr>
   <td width=225 colspan="2" align="left">
    <b>支付</b>
   </td>
   <td align="right" style="padding-right:10">
    <b><asp:label id="Total" runat=server/></b>
   </td>
  </tr>
  </table>
  <p>
  <div id="CheckoutPanel" runat="server">
  <center>
  <asp:imagebutton borderwidth=0 OnClick="Recalculate_Click"    
       ImageUrl='images\recalculate.gif' runat=server/>
  <asp:HyperLink id="check" NavigateUrl="check.aspx" 
       ImageUrl='images\checkout.gif' runat=server/>
  <asp:imagebutton borderwidth=0 OnClick="ClearCart_Click"
       ImageUrl='images\clear_cart.gif' runat=server/>
  </center>
  </div>
  </td>
 </tr>
 </table>
 </form>
</body>
</html>  

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -