marceloy 0 Denunciar post Postado Fevereiro 10, 2006 Ola pessoal, tenho uma pagina que insere um registro no banco de dados e volta pra ela mesma para inserção de outro registro. Porém quando aperto F5 o mesmo registro é gravado no banco de dados.Gostaria de saber qual a maneira correta de bloquear esse tipo de reenvio de informação.obs: não encontrei algo especifico no forum. Compartilhar este post Link para o post Compartilhar em outros sites
Fabyo 66 Denunciar post Postado Fevereiro 10, 2006 da um select antes e verifica se ja existo o dado que você quer gravar se nao existir você deixa gravar Compartilhar este post Link para o post Compartilhar em outros sites
marceloy 0 Denunciar post Postado Fevereiro 11, 2006 Caro Fabyo,essa opção, no meu caso, esta fora de questao .. (os motivos saem um pouco do padrão, porém se quiser eu os explico)Voltando a pergunta: Qual a maneira correta de bloquear esse tipo de reenvio de informação?? (desculpa, sem a opção acima)Uma solução seria bloquear a tecla F5 do teclado, mas esse controle em JavaScript não é seguro.Existe alguma outra opção sem ter que fazer a verificação no banco de dados ??? Compartilhar este post Link para o post Compartilhar em outros sites
Fabyo 66 Denunciar post Postado Fevereiro 11, 2006 marceloy a opção que eu passei é uma forma correta e segura, o que você ta tentando fazer é uma gambiarra, bloquear F5 ou qualquer outra coisa parecida, nao sei porque você nao pode fazer do jeito que eu passei, imagina um sistema de cadastro onde nao se pesquisa que o usuario exista antes o que aconteceria?, um monte de usuarios om o mesmo nome Compartilhar este post Link para o post Compartilhar em outros sites
marceloy 0 Denunciar post Postado Fevereiro 11, 2006 Fabyo, o problema é o seguinte: A tabela que eu acesso é um dbase como postado em http://forum.imasters.com.br/index.php?sho...164287&hl=dbase, e nao pode ser diferente por enquanto. Pelo metodo de trabalho do PHP/dbase, teria que varrer a base de dados em busca do ultimo registro, ou seja, verificar aproximadamente 4,4 milhões de registros em uma base que não é nativa em PHP (não dá pra usar indices). O processo de verificação do ultimo registro demora em média 3min no meu Hardware e Infra atual, ou seja, prefiro qualquer gambiarra, rsrs. Assim, refaço a minha pergunta: Existe alguma gambi segura pra evitar o reenvio de informações ???? obs: dando unset() em variaveis consigo alguma coisa ?? Compartilhar este post Link para o post Compartilhar em outros sites
marceloy 0 Denunciar post Postado Fevereiro 13, 2006 somente ressaltando ...Existe alguma gambi segura pra evitar o reenvio de informações ???? Compartilhar este post Link para o post Compartilhar em outros sites
yetiH 0 Denunciar post Postado Fevereiro 13, 2006 ao final de fazer sua inserção no bd.. dê um CODE <?php print "<script>window.location.href='nome_dessa_pagina.php'</script>"; ?> assim vai pegar as informações. salvá-las.. e "atualizar" a página... a partir daí.. se apertares F5 simplesmente irá atualizar a página... flw Compartilhar este post Link para o post Compartilhar em outros sites
UselessThoughts 0 Denunciar post Postado Fevereiro 14, 2006 já q é pra usar uma gambiarra não seria melhor limpar o cache e usar o header não?afinal de contas javascript é javascript dentro ou fora do php, então com o navegador sem o javascript habilitado isso não vai funcionar. Compartilhar este post Link para o post Compartilhar em outros sites
yetiH 0 Denunciar post Postado Fevereiro 14, 2006 ele tava brigando com todo mundo e queria alguma solução.. ;) mas o header é mais interessante sim... Compartilhar este post Link para o post Compartilhar em outros sites