Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

mestre fyoda

Problemas na inserção no banco de dados

Recommended Posts

isso é normal para evitar tem de adaptartipo assimtesta antes de inserir se a sessao("Inserir") está vaziaem caso afirmativo voce insere e seta ela como "nao" ou qualquer outra coisaai se for atualizada a pagina nao irá mais inserir

Compartilhar este post


Link para o post
Compartilhar em outros sites

nao vai dar certo!.

 

Veja bem , vou detalhar um pouco mais, estou fazendo um carrinho de compras, onde esse problema está acontecendo quando o cliente escolhe o produto e inseri no carrinho . Se o cliente dar o refresh inseri denovo no banco de dados, como eu faço para evitar isso ?

 

if Request("indice") <> "" Then					Set Inserir = con.Execute(" INSERT INTO Pedido (COD_Pedido, COD_Produto, QTD_Produto, Presente ) Values ('" & Request.Cookies("CODIGO_PEDIDO") & "', '" & indice & "', '1', 'Nao') ")							Response.Cookies(CStr(indice))("CODIGO_PRODUTO") = indice				Response.Cookies(CStr(indice)).Expires = Date + 3				Response.Cookies("CODIGO_PEDIDO").Expires = Date + 3											END IF

 

Caso eu use uma Session e o cliente dar refresh vai setar com "nao" e nao vai entrar no if para inserir no banco de dados !

Compartilhar este post


Link para o post
Compartilhar em outros sites

nao pode tirar este if com o indice e colocar com a session?

Compartilhar este post


Link para o post
Compartilhar em outros sites

tipo assim

 

se a session ainda nao foi setada por voce seu valor está vazio entao

 

seria assim

ASP
if Request("indice") <> "" AND Session(Inserir) = "" Then

   Set Inserir = con.Execute(" INSERT INTO Pedido (COD_Pedido, COD_Produto, QTD_Produto, Presente ) Values ('" & Request.Cookies("CODIGO_PEDIDO") & "', '" & indice & "', '1', 'Nao') ")

   Response.Cookies(CStr(indice))("CODIGO_PRODUTO") = indice

   Response.Cookies(CStr(indice)).Expires = Date + 3

   Response.Cookies("CODIGO_PEDIDO").Expires = Date + 3

   Session(Inserir) = "N"                                

END IF

 

Veja se é isso

Compartilhar este post


Link para o post
Compartilhar em outros sites

tem um pequeno problema nisso, vamos supor que você comprou o produto , vai setar Session(Inserir) = "N" e caso o clienmte dê um refresh nao vai inserir no banco de dados, otimo , mas depois disso vem o problema, e se o cliente comprar mais um produto, a Session(Inserir) = "N" nao vai inserir o novo produto escolhido pelo cliente!.

Compartilhar este post


Link para o post
Compartilhar em outros sites

quando comprar denovo voce seta como vazio

Compartilhar este post


Link para o post
Compartilhar em outros sites

sim claroé que fiz rapidoo seu ta corrreto

Compartilhar este post


Link para o post
Compartilhar em outros sites

relax, é que as vezes tem 200 maneiras de fazer :).VlwMais uma dúvida, por padrão a Session vem seta com 20 minutos de duração , nas hospedagens elas expiram quando fecha o Browser ?

Compartilhar este post


Link para o post
Compartilhar em outros sites

nao expira nao, so com o tempo programado

Compartilhar este post


Link para o post
Compartilhar em outros sites

ele espira em 20 minutos se voce nao setar

Compartilhar este post


Link para o post
Compartilhar em outros sites

so se tiver uma pagina com este codigo que seja chamada ao fechar o navegador

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.