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

Script Carrinho de Compras com BD MySql


jow

Pergunta

Bom dia galera,

Estava procurando um script de carrinho de compras na net, achei alguns, uns complicados, outros nem tanto porém não eram funcionais ... achei melhor eu desenvolver um do meu jeito e ir melhorando com a ajuda de vocês ... Por isso tentei criar o mais simples possivel ... Espero a ajuda de vocês, para criarmos um script q todos possam usar ... Bom vamos lá ...

Primeiro criei um banco de dados simples em MySql, com a seguinte estrutura:

[b]Criando a Base de Dados carrinho_compras[/b]
CREATE DATABASE carrinho_compras;

[b]Usando esta base de dados[/b]
use carrinho_compras;

[b]Criando a minha tabela[/b]
CREATE TABLE carrinho(
id int(10) unsigned not null auto_increment,
produto varchar(100) not null,
preço varchar(11) not null,
quantidade varchar(11) not null,
primary key (id));

[b]obs:[/b] Agora no painel de controle escolho a minha fonte de dados do sistema OK, criei a minha Base de dados do sistema
conexao.asp
<%
dim cnn
sub abre_conectar
set cnn=server.CreateObject("adodb.connection")
cnn.open "carrinho_compras" 
end sub
sub fecha_conectar
     cnn.close
     Set cnn = nothing
end sub 
%>

[b]obs:[/b] Criada dentro de uma pasta config, para organizar melhor a estrutura do projeto, mas é opcional
default.asp
<html>
<head></head>
<title>Carrinho de Compras</title>
<body>
<form action="inserir_carrinho.asp" method="post">
<table width="100%">
<tr>
<td>Produto</td>
<td>Preço</td>
<td>Quantidade</td>
</tr>
<tr>
<td><input type="text" name="produto"></td>
<td><input type="text" name="preço"></td>
<td><input type="text" name="quantidade" size="5"></td>
</tr>
</table>
<table width="100%">
<tr>
<td><input type="submit" value="Adicionar ao Carrinho"></td>
</tr>
</table>
</form>
inserir_carrinho.asp
<!--#include file="config/conexao.asp"-->

<% call abre_conectar 
produto=request.Form("produto")
preço=request.Form("preço")
quantidade=request.Form("quantidade")


sql = "insert into carrinho (produto, preço, quantidade)"
sql = sql & " values ('"&produto& "', '"&preço&"', '"&quantidade&"')"
set tab = cnn.execute(sql) 

call fecha_conectar
set tab = nothing
response.Redirect("default.asp")%>
form_alterar.asp
<!-- #include file="config/conexao.asp"-->
<%

call abre_conectar

id1 = Request.QueryString("alterar")

sql = "Select * from carrinho WHERE id = "&id1  

set tab = cnn.execute(sql) %>

<style type="text/css">
<!--
body {
    margin-left: 0px;
    margin-top: 0px;
    margin-right: 0px;
    margin-bottom: 0px;
}
-->
</style>


<%
On error resume Next
'Dim objConn, stringSQL, strConnection, id, strDBPath


'Deletando registro da tabela contato onde esta a id
if err <> 0 Then%>
    
<div align="left">
    <center><span class="titulo1">Ocorreu algum erro!</span>
    </font>
  <a href="java script:history.back(-1)" class="link1_inativo">Volta</a></center></div>

      <%else%>
            
      <form action="altera_dados.asp" method="post">

             <table width="100%">
<tr>
<td>Produto</td>
<td>Preço</td>
<td>Quantidade</td>
</tr>
<tr>
<td><input type="text" name="produto" value="<%=tab("produto")%>"></td>
<td><input type="text" name="preço" value="<%=tab("preço")%>"></td>
<td><input type="text" name="quantidade" size="5" value="<%=tab("quantidade")%>">
<input type="hidden" name="id" value="<%=tab("id")%>"></td>
</tr>

                  <td> 
                    <input name="enviar" type="submit" class="formulario" value="Alterar">
                    </td>
                  </tr>
              </table>
            
      </form>
      <%end if
      call fecha_conectar
     set tab = nothing%>
altera_dados.asp
<!--#include file="config/conexao.asp"-->
<%

call abre_conectar

produto=request.Form("produto")
preço=request.Form("preço")
quantidade=request.Form("quantidade")

id=request.Form("id")

sql = "UPDATE carrinho SET produto = '"&produto&"', preço = '"&preço&"', quantidade = '"&quantidade&"' WHERE id ="&id

'Caso ocorra um erro esta função de erro será chamada
On error Resume Next
'Executaa inserção no Banco de Dados 
set tab = cnn.execute(sql)
'Fecha o Objeto de Conexão
call fecha_conectar
set tab = nothing 
if err = 0 Then
    'Redireciona o usuário caso não tenha ocorrido erro na transação
    response.redirect "default.asp"
end if
%>
action_excluir.asp
<!-- #include file="config/conexao.asp"-->
<%

call abre_conectar

'Option Explicit
Dim objConn, stringSQL, strConnection, array_id, i, sql_id, id,strDBPath
id = Request.QueryString("radio")
'Caso ocorra algum erro os precessos não são interrompidos 
'e é passado para a próxima linha de comando
On error Resume Next %><style type="text/css">
<!--
body {
    margin-left: 0px;
    margin-top: 0px;
    margin-right: 0px;
    margin-bottom: 0px;
}
-->
</style>

  
            <% 
        if err = 0 and id <> "" then
            array_id = split(id,",")
            For i=0 to ubound(array_id)
                sql_id = sql_id & "carrinho.id = " & Trim(array_id(i)) & " OR "
                                                         'campo texto, então" & Trim(array_id(i)) & " OR "
                                                         'caso numerico '" & Trim(array_id(i)) & "' OR "
            Next
            sql_id = left(sql_id,(len(sql_id)-4))
            sql = "DELETE FROM carrinho WHERE "&sql_id&""
            
                        set tab = cnn.execute(sql)
            
            call fecha_conectar
set tab = nothing
          
%>
            <table align="center">
                <tr bgcolor="">
                  <td><%response.Redirect("default.asp")%></td>
                          </tr>
              </table>
            
              
                <%else%>
                <br>
                <center>Ocorreu algum erro!<br>
                <br>
                Nenhum dado foi excluido!</span><br><br>
                <a href="java script:history.back(-1)" class="link1_inativo">Volta</a></center></div>
          
          <%End if%>        </td>
      </tr>
    </table>

</td>
  </tr>
</table></td>
  </tr>
</table>

Bom isso é o primeiro passo, agora vamos melhorar este código ... Abraços

Link para o comentário
Compartilhar em outros sites

0 respostass a esta questão

Posts Recomendados

Até agora não há respostas para essa pergunta

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...