Ir ao conteúdo
  • Cadastre-se

PHP Formulário de Cadastro em HTML + PHP - Bloquear confirmação de envio.


Posts recomendados

Boa tarde, pessoal.

 

Estou criando um formulário em PHP e HTML, consigo fazer o cadastro normalmente e envia para o banco de dados, mas quando aperto o F5 ele reenviar o formulário novamente, não quero que isso aconteça, quero que quando aperte o F5 ele limpar a tela e comece do zero e que não envie os dados novamente.

 

Segue o pop-up que aparece quando aperto o F5:

 Capturar.PNG.f4ef0ac88d9d1398eec6301ecbb24c6b.PNG

 

Segue como está o código:

<html lang="pt-br"/>

<head>
    <title> FORM</title>
    <meta charset="utf-8"/>
    <link rel="stylesheet" type="text/css" href="../css/style.css">
    <link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.1.3/css/bootstrap.min.css">
    <script type="text/javascript">
    function limpar(){
        window.location='http://localhost/principal/historico/historico.php';
    }
    </script>
</head>

<body>    
    <span aling= class="collapse navbar-collapse " id="navbarSupportedContent" >
        <nav class="navbar navbar-expand-lg navbar-light justify-content-between" style="background-color: #ee7f01" >
            <a class="navbar-brand" href="../home.php"> <img src="../img/logo.png" > </a>
            <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarSupportedContent" aria-controls="navbarSupportedContent" aria-expanded="false" aria-label="Toggle navigation">
                <span class="navbar-toggler-icon"></span>
            </button>
            <h2 class="titulo">HISTÓRICO</h2>
            <ul id="nave" class="navbar-nav" >
                <li class="nav-item active">
                    <a class="nav-link" href="../cadastro/cadastro.php">CADASTRAR</a>
                </li>
                <li class="nav-item">
                    <a class="nav-link" href="../medida/medida.php">AVALIAÇÃO</a>
                </li>
                <li class="nav-item">
                    <a class="nav-link" href="../núcleos/núcleos.php">NÚCLEOS</a>
                </li>
            </ul>
        </nav>
    </span>

    <!-- ================================= FORMULARIO ================================= -->

    <form name="frmBusca" method="post" action="historico.php" >
        <div class="container">
            <h1>Dados do cliente</h1>
            <div class="form-group row">
                <label for="cpf" class="col-sm-1 col-form-label">CPF:</label>
                <div class="col-sm-5">
                    <input type="text" class="form-control" required name="cpf" /> 
                </div>
            </div>
            <input  type="submit" class="btn btn-primary" value="Buscar" display="none" />
            
        </form >

        <br>

        <?php session_start(); 

        if($_SERVER['REQUEST_METHOD'] == 'POST') {
            $request = md5(implode($_POST)); 
            $host="localhost";
            $user="root";
            $pass="";
            $banco="cadastro";
            $conexao=mysqli_connect($host, $user, $pass) or die(mysqli_error());
            mysqli_select_db($conexao,$banco) or die(mysqli_error());
            // Pegamos o CPF
            $cpf = $_POST['cpf'];

            // Verificamos no banco de dados produtos equivalente a palavra digitada
            $sql = mysqli_query($conexao,"SELECT * FROM usuarios WHERE cpf = ".$cpf." ORDER BY núcleo");

            // Descobrimos o total de registros encontrados
            $numRegistros = mysqli_num_rows($sql);

            // Se houver pelo menos um registro, exibe-o
            if ($numRegistros != 0) {
                // Exibe as pessoas
                if($cadastro = mysqli_fetch_object($sql)){
                echo "<br>Nome completo: ".$cadastro->nome ." ".$cadastro->sobrenome ."<br>CPF: ".$cadastro->cpf ."<br>Núcleos: ".$cadastro->núcleo."";
                while ($cadastro = mysqli_fetch_object($sql)) {
                    echo ", ".$cadastro->núcleo."";
                }
                echo "<br><input type='button' class='btn btn-secondary' onclick='limpar()' value='limpar'>";
            // Se não houver registros
            } else {
                echo "Nenhum usuario foi encontrado";
            }
            session_write_close();
        }}    
        ?> 

    </div>
    <footer class="page-footer font-small blue ">
        <div class="container">
            <div class="row">

                <div class="col-lg-12 text-center">
                    <br>
                    <p class="copyright text-muted small" class="teste">teste</p>
                </div>
            </div>
        </div>
    </footer>
</body>
</html>

 

Como faço para resolver esse problema ? Muito obrigado

 

 

Link para o comentário
Compartilhar em outros sites

 esse formulário "pré-preenchido" é uma configuração de auto fill do seu navegador. De qualquer forma existem alguns Esquemas que você pode tentar fazer para driblar isso. exemplo:

 

<form class="signin-form" action="/signin" method="post"> <label>E-mail</label> <input class="fill-with-cached-email" type="email" required="" name="email" id="login-email" value="" autofocus=""> <label>Senha</label> <input type="password" required="" name="password"> ... <button class="btn-login" type="submit">Entrar</button> </form>

 

Repare que existe uma classe chamada "fill-with-cached-email". Provavelmente há uma rotina Javascript que faz esse trabalho e exibe o e-mail, caso ele esteja no cache, por exemplo. De qualquer forma, no meu navegador, por exemplo, não é exibida a lista e muito menos o preenchimento automático, porque a configuração está feita de outra forma.

 

by: Bruno Borghi de Freitas

Como acima tente encontrar um Js que faça esse trabalho ...

adicionado 2 minutos depois

Dando uma solução simples que talvez funcione tente o input value=""

Link para o comentário
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

Ebook grátis: Aprenda a ler resistores e capacitores!

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!