Ir para conteúdo
Fórum Script Brasil
  • 0

Carrinho De Compras


Guest MXPBrasil

Pergunta

Guest MXPBrasil

Rapaz, o problema é o seguinte:

Eu desenvolvi um carrinho de compras baseado em BD Access e ASP.

Quanto ao carrinho tá tudo ok, o problema é na hora de pegar o valor total da compra....

Tá da seguinte forma:

A Quantidade comprada, e o preço do produto estão no BD, aí eu criei uma variável para pegar o valor total do produto (quantidade * preço)...assim...

<%

Dim total

total = i("quantidade") * id("preço")

%>

funciona beleza.. só que esse é o valor total de cada produto....

Agora como faço para pegar o valor total da compra?

Me ajudem aí... Beleza...

Link para o comentário
Compartilhar em outros sites

1 resposta a esta questão

Posts Recomendados

  • 0

estou postando o exemplo de um carrinho, se tiver dúvidas avisa aí

<%

Option Explicit

%>

<!--#include file="bib_conexao.asp"-->

<!--#include file="../header.htm"-->

<%

Dim Conexao, rsMax, rsPedidoItem, strSQL, novo_codPedido, sub_total, field_name, strSQLPed

'abre a conexão

Call abre_Conexao

' codPed - nome da sessão - associando a sessão ao bd

If Session("codPed") = "" Then

  Set rsMax = Server.CreateObject("ADODB.Recordset")

  ' relacionando o campo da tabela com o campo da sessão

  rsMax.Open "SELECT MAX(COD_pedido) AS max_codPedido FROM Pedidos", Conexao

' contador de pedido

  If IsNull(rsMax("max_codPedido")) Then

      novo_codPedido = 1

  Else

    novo_codPedido = rsMax("max_codPedido") + 1

  End If

  rsMax.Close

  Set rsMax = Nothing

  Conexao.Execute "INSERT INTO Pedidos (COD_Pedido) VALUES (" & novo_codPedido & ")"

  Session("codPed") = novo_codPedido

End If

Set rsPedidoItem = Server.CreateObject("ADODB.Recordset")

If Request.QueryString("id") <> "" Then

  rsPedidoItem.Open "SELECT * FROM Pedido_Item WHERE COD_Pedido = " & Session("codPed") & " AND COD_Produto = " & Request.QueryString("id"), Conexao

  If rsPedidoItem.EOF Then

      Conexao.Execute "INSERT INTO Pedido_Item (cod_Pedido, cod_Produto, qtd_Pedido) VALUES (" & Session("codPed") & ", " & Request.QueryString("id") & ", 1)"

  End If

  rsPedidoItem.Close

End If

If Request.Form <> "" Then

  Conexao.Execute "DELETE FROM Pedido_Item WHERE COD_Pedido = " & Session("codPed")

  For Each field_name In Request.Form

      If field_name <> "B1" And Request.Form(field_name) <> "0" And Trim(Request.Form(field_name)) <> "" Then

          'atualiza a tabela pedido_item para acompanhar os pedidos em geral

          strSQL = "INSERT INTO Pedido_Item (COD_Pedido, COD_Produto, QTD_Pedido) VALUES ("& Session("codPed") & ", " & field_name & ", " & Request.Form(field_name) & ")"

          Conexao.Execute strSQL

      End If

    Next

End If

%>

<html>

<head>

<title>Carrinho</title>

</head>

<body BGCOLOR="#FFFFFF" topmargin=0 leftmargin=0>

<%

strSQLPed = "SELECT Pedido_Item.*, Produtos.Produto, "

'busca os campos da tabela

strSQLPed = strSQLPed & "Produtos.VRL_Unitario, Produtos.URL_Imagem "

'relação entre as tabelas

strSQLPed = strSQLPed & "FROM Produtos INNER JOIN Pedido_Item "

'mostra que os campos serão iguais e relacionados

strSQLPed = strSQLPed & "ON Produtos.COD_Produto = Pedido_Item.COD_Produto"

'chamar o que está na sessão referente ao pedido

strSQLPed = strSQLPed & " WHERE Pedido_Item.COD_Pedido = " & Session("codPed") & " AND Produtos.COD_Produto = Pedido_Item.COD_Produto"

'executa a query

Set rsPedidoItem = Conexao.Execute(strSQLPed)

'se estiver vazio

If rsPedidoItem.EOF = True then

  Response.write ("<br><div align=center><b>Não há produtos em sua cesta.</b></div>")

Else

%>

<form method="POST" action="<%= Request.ServerVariables("SCRIPT_NAME") %>">

  <div align="center"><center>

  <table border="0" cellspacing="1" cellpadding="1" width="675">

    <tr bgcolor="#FF6633">

      <td width="271" align="center">

          <div align="center"> <b>

          <p><font face="Verdana, Arial, Helvetica, sans-serif" color="#FFFFFF" size="2"><small>Nome

                do produto</small></font>

              </b> </div>

      </td>

      <td width="115" align="center">

          <div align="center"> <b>

          <p><font face="Verdana, Arial, Helvetica, sans-serif" color="#FFFFFF" size="2"><small>Preço

                Unitário</small></font>

              </b> </div>

      </td>

      <td width="108" align="center">

          <div align="center"> <b>

          <p><font face="Verdana, Arial, Helvetica, sans-serif" color="#FFFFFF" size="2"><small>Quantidade</small></font>

              </b> </div>

      </td>

      <td width="101" align="center"><b>

          <p><font face="Verdana, Arial, Helvetica, sans-serif" color="#FFFFFF" size="2"><small>Total</small></font>

            </b>

      </td>

      <td width="59" align="center">

            <div align="center"> <b>

              <p>&nbsp;

              </b></div>

      </td>

    </tr>

<%

'olhou tudo volta para o primeiro

If not rsPedidoItem.EOF then rsPedidoItem.MoveFirst

    sub_total = 0

    While Not rsPedidoItem.EOF

    'enquanto o pedido não for efetuado, a sessão continua, e exibe os resultados até agora abaixo

    %>

      <tr align="center">

        <td width="271" bgcolor="#EEEEEE" align="left" height="13"><font face="Verdana" color="#000000" size="1"><%= rsPedidoItem("Produto") %>

          </font>

        </td>

        <td width="115" bgcolor="#EEEEEE" align="right" height="13"><font face="Verdana" size="1"><%= FormatNumber(rsPedidoItem("VRL_Unitario"),2) %>

            </font>

        </td>

        <td width="108" bgcolor="#EEEEEE" align="center" height="13"> <font face="Verdana" = size=1>

            <input type="TEXT" name="<%= rsPedidoItem("cod_Produto") %>" size="2" maxlength="2" value="<%= rsPedidoItem("QTD_Pedido") %>">

                </font>

        </td>

        <td width="101" bgcolor="#EEEEEE" align="right" height="13"><font face="Verdana" size="1">

            <%= FormatNumber(rsPedidoItem("QTD_Pedido") * rsPedidoItem("VRL_Unitario"))%></font>

        </td>

        <td width="59" bgcolor="#EEEEEE" align="center" height="13">

            <a href=ExcluiItemCarrinho.asp?id=<%= rsPedidoItem("cod_Produto")%>>

            <font face="Verdana" size="1">excluir</font></a>

        </td>

      </tr>

      <%

      'Calcula subtotal e peso total vezes o valor unitário

      sub_total = sub_total + rsPedidoItem("QTD_Pedido") * rsPedidoItem("VRL_Unitario")

      rsPedidoItem.MoveNext

    Wend

    rsPedidoItem.Close

    Session("sub_total") = sub_total

    'substitui o valor antigo pelo novo recalculado

    sub_total = replace(sub_total, ",",".")

    'atualiza os valores envolvidos para alterar o banco de dados

    Conexao.Execute "UPDATE Pedidos SET sub_total = " & sub_total & " WHERE cod_Pedido = " & Session("codPed")

    Conexao.Close

    %>

    <tr align="center">

      <td align="center" width="271">

          <div align="center"> <font face="Arial, Helvetica, sans-serif">

              <p>&nbsp;

              </font> </div>

      </td>

      <td align="center" width="115">

      </td>

      <td width="108" bgcolor="#EEEEEE" align="center">

            <div align="right"><small><font face="Arial" size="2">

              <p><b><font face="Verdana, Arial, Helvetica, sans-serif">Subtotal:

                </font></b>

              </font></small></div>

      </td>

      <td width="101" bgcolor="#EEEEEE" align="right">

            <font face="Verdana" size=2><b>

            <%= FormatNumber(Session("sub_total"),2) %>

            </b></font> </td>

      <td width="59" bgcolor="#EEEEEE" align="center">&nbsp;

      </td>

    </tr>

  </table>

  </center></div><div align="center"><center>

  <table border="0" cellpadding="0" cellspacing="0" width="100%">

    <tr>

      <td width="100%" valign="middle">

          <div align="center">

              <p><input type="submit" value="Recalcular" name="B1">

          </div>

      </td>

    </tr>

  </table>

  </center>

  </div>

</form>

<table border="0" cellpadding="0" cellspacing="0" width="400" align="center">

  <tr>

      <td align="center" width="183">

          <a href="DadosPedido.asp">Dados do pedido </a>

      </td>

      <td align="center" width="217">

          <a href="ExcluiCarrinho.asp">Excluir o carrinho </a>

      </td>

  </tr>

</table>

<%

End If

%>

</body>

</html>

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,5k
×
×
  • Criar Novo...