NFelipeFL 1 Denunciar post Postado Abril 19, 2012 bom, quero dizer que tudo está funcionando 100% perfeitamente. Mas tem uma questão: o usuario pode acessar diretamente o arquivo do action= no form. Vendo o código fonte. ex: Se o cliente for olhar o codigo fonte, vai aparecer: <form name="formulario" method="post" action="sucess.php"> Caso o cliente acesse diretamente sem preencher os forms corretamente, indo no browser e digitando: www.meusite.com.br/sucess.php, irá escrever no meu banco de dados... mas dados em branco. Tem alguma forma de evitar isto? Compartilhar este post Link para o post Compartilhar em outros sites
cristian_web 15 Denunciar post Postado Abril 19, 2012 Cheque os dados que está recebendo! exemplo: Formulario.php Nome |=========| E-mail |=========| Fone |=========| |=Submit=| sucess.php <? if(isset($_POST['nome']) and isset($_POST['mail']) and isset($_POST['fone'])){ //executa a query pra incluir o registro }else{ echo 'Ocorreu um erro ao tentar acessar esta pagina!'; // Aki mostra o erro caso o usuário tente fazer isso! } ?> Compartilhar este post Link para o post Compartilhar em outros sites
D2th3 3 Denunciar post Postado Abril 19, 2012 Sim. No seu formulário pega o campo qualquer, por exemplo input name="nome" Na página susses.php // Verifica se existe o POST nome e se tem algo digitado (!empty) = diferente de vazio. if(isset($_POST['nome']) && !empty($_POST['nome']) { executa a gravação no banco } else { // entrou na página sem dados, então redireciona para a pagina do formulário header('Location: http://www.seusite.com/page_do_formulario.php'); } Compartilhar este post Link para o post Compartilhar em outros sites
D2th3 3 Denunciar post Postado Abril 19, 2012 Sim. No seu formulário pega o campo qualquer, por exemplo input name="nome" Na página susses.php // Verifica se existe o POST nome e se tem algo digitado (!empty) = diferente de vazio. if(isset($_POST['nome']) && !empty($_POST['nome']) { executa a gravação no banco } else { // entrou na página sem dados, então redireciona para a pagina do formulário header('Location: http://www.seusite.com/page_do_formulario.php'); } Compartilhar este post Link para o post Compartilhar em outros sites
NFelipeFL 1 Denunciar post Postado Abril 19, 2012 obrigado!! ajudou mt!! Compartilhar este post Link para o post Compartilhar em outros sites
Leonardo Leal 4 Denunciar post Postado Abril 19, 2012 Também pode usar $_SERVER[ 'HTTP_REFERER' ] para verificar se ele entrou direto ou veio da página que você quer. Compartilhar este post Link para o post Compartilhar em outros sites