Ir para conteúdo

POWERED BY:

Arquivado

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

Igor FV

Cadastro repetido com F5...

Recommended Posts

Boa noite comunidade, Estou com um pequeno problema, tenho um form na pagina "cad.asp" e a pagina "cad_ok.asp", a primeira pagina tem a action para a segunda pagina que cadastra os dados no bd, porem se eu der um F5 nessa pagina os dados são cadastrados novamente, existe uma forma de acacar com isso amigos?cad.asp

  Citar

<% Dim nome,desc,gravarnome = request.form("nome_proc")desc = request.form("desc_proc")gravar = "INSERT INTO tbl_proc(nome_proc,desc_proc) values('"&nome&"','"&desc&"')"set rs = conn.execute(gravar)%>

vlw amigos...

Compartilhar este post


Link para o post
Compartilhar em outros sites

Amigo tentei fazer tudo na mesmo pagina, o form e o insert, tipo coloquei um campo hidden no form com valor igual a 1, quando submeto o form, que ta com a action para a mesma pagina, aparace a msg legal, mas se eu atualizar essa pagina, a msg de "Cadastro realizado com sucesso" não sai e tam é inserido outro registro no bd com as mesma informação preenchidas anteriormente, como posso resolver issso amigos?cad.asp

  Citar

<%@LANGUAGE="VBSCRIPT" CODEPAGE="1252"%><!--#include file="Connections/conn.asp" --><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /><title></title><link href="css/form.css" rel="stylesheet" type="text/css" /><link href="css/texto.css" rel="stylesheet" type="text/css" /><link href="css/body.css" rel="stylesheet" type="text/css" /></head><body><div align="center"> <form action="cad_proc.asp" method="post" name="cad_proc" target="_self" id="cad_proc"><% Dim nome,desc,gravar,acaonome = request("nome_proc")desc = request("desc_proc")acao = request("acao")If acao="1" Thengravar = "INSERT INTO tbl_proc(nome_proc,desc_proc) values('"&nome&"','"&desc&"')"set rs = conn.execute(gravar)response.Write("OK!")elseresponse.write("")end if %> <br /> <table width="301" border="1" align="center" cellpadding="0" cellspacing="0" bordercolor="#000000" bgcolor="#FFFFFF"> <tr> <td height="20" colspan="2" bordercolor="#FFFFFF" bgcolor="#CCCCCC"><div align="center" class="preto_negrito">Cadastro de Procedimento</div></td> </tr> <tr> <td width="72" height="20" bordercolor="#FFFFFF" bgcolor="#FFFFFF"> </td> <td width="198" height="20" bordercolor="#FFFFFF" bgcolor="#FFFFFF"><input name="acao" type="hidden" id="acao" value="1" /></td> </tr> <tr> <td height="20" bordercolor="#FFFFFF" bgcolor="#FFFFFF" class="preto_negrito"><div align="right" class="negrito">Nome:</div></td> <td height="20" bordercolor="#FFFFFF" bgcolor="#FFFFFF"><div align="left"> <input name="nome_proc" type="text" class="input" id="nome_proc" size="30" /> </div></td> </tr> <tr> <td height="20" bordercolor="#FFFFFF" bgcolor="#FFFFFF" class="preto_negrito"> </td> <td height="20" bordercolor="#FFFFFF" bgcolor="#FFFFFF"> </td> </tr> <tr> <td height="20" bordercolor="#FFFFFF" bgcolor="#FFFFFF" class="preto_negrito"><div align="right">Descrição:</div></td> <td height="20" bordercolor="#FFFFFF" bgcolor="#FFFFFF"><div align="left"> <textarea name="desc_proc" cols="30" rows="5" class="textarea" id="desc_proc"></textarea> </div></td> </tr> <tr> <td height="20" bordercolor="#FFFFFF" bgcolor="#FFFFFF" class="preto_negrito"><div align="right" class="negrito"></div></td> <td height="20" bordercolor="#FFFFFF" bgcolor="#FFFFFF"><div align="left"></div></td> </tr> <tr> <td height="20" bordercolor="#FFFFFF" bgcolor="#FFFFFF"> </td> <td height="20" bordercolor="#FFFFFF" bgcolor="#FFFFFF"> </td> </tr> <tr> <td height="20" colspan="2" bordercolor="#FFFFFF" bgcolor="#FFFFFF"><div align="center"> <input name="submit" type="submit" class="botao" value="Cadastrar" /> </div></td> </tr> <tr> <td height="20" bordercolor="#FFFFFF" bgcolor="#FFFFFF"> </td> <td height="20" bordercolor="#FFFFFF" bgcolor="#FFFFFF"> </td> </tr> </table> </form></div></body></html>

Vlw amigos... e aguardo resposta.

Compartilhar este post


Link para o post
Compartilhar em outros sites

na página que executa o cadastro você faz um redirect pra outra página(pode até retornar para o formulario) e passa por querystring o status da ação

exemplo:

 

If acao="1" Thengravar = "INSERT INTO tbl_proc(nome_proc,desc_proc) values('"&nome&"','"&desc&"')"set rs = conn.execute(gravar)response.redirect("cad.asp?msg=Cadastro realizado")elseresponse.write("")end if
e na página que vai retornar, no exemplo cad.asp, você adiciona um campo pra escrever a mensagem

<%=request.querystring("msg")%>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Vlw amigo... ta resolvido.....Só mais uma pergunta, teria como colocar um tempo, tipo 3s, para essa msg desaparecer na pagina do form, pois se eu cadastrar novamente, a msg ja fica direto em cima do form... e nao da a ideia de continuidade, pois a msg fica na url...Vlw...

Compartilhar este post


Link para o post
Compartilhar em outros sites

creio que somente com javascript ou ultilizando ajax para efetuar o cadastro. tipo pega a querystring msg com javascript, faz um time e coloca uma mensagem dentro de uma DIV, quando atingir o time a Div fica oculta

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.