Ir para conteúdo

POWERED BY:

Arquivado

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

Thiago Sousa

[Resolvido] Como fazer validação antes de enviar ao banco?

Recommended Posts

Olá Thiago, em PHP você pode fazer assim:

 

$nome = trim($_POST['nome']);

 

if (!$nome) {

echo '<p>Você não digitou o nome<p>';

}

 

Mas a melhor mesmo seria você fazer esta validação com JavaScript, assim você poupa acessos ao servidor, tornanado mais rápida a sua aplicação.

 

Abração

Compartilhar este post


Link para o post
Compartilhar em outros sites

Só completando

 

faça a validação por javascript, mas tbm pelo servidor, porque pelo javascript basta o usuario cancelar o javascript que ele envia sem validação nenhuma

 

e para validar um campo primeiro verifique se ele existe e se foi postado alguma coisa do formulario

 

if($_SERVER["REQUEST_METHOD"] == "POST"){
$campo = isset($_POST["campo"]) ? trim($_POST['campo']) : '';
if($campo == ''){
	die("Mensagem");
}
}

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bom pessoal obrigado pela dica... mais como disse o Fábio eu preciso validar isso no servidor por ser mais seguro que com o javascript... com o javascript eu já fiz... só estava precisando mesmo é de fazer a validação do lado servidor.....

 

mais uma dúvida.... existe a possibilidade de colocar um alert do javascript no DIE do if que estou comparando se está vazio ou não???

 

 

UPDATE:

 

Galera consegui.. colocar o alert aki..... rs !!!!

 

if($_SERVER["REQUEST_METHOD"] == "POST"){
	$numero_conta = isset($_POST["numero_conta"]) ? trim($_POST['numero_conta']) : '';
	if($numero_conta == ''){
		die("<script>
alert(\"Campo em branco \");//window.location = 'java script:history.back(-1)';
</script>");

 

Mais tem uma coisa que não está funcionando.... é o voltar para a página.... após o clique de enviar, aparece o alert para o usuario, mais não retorna para a página para ele preencher o campo que ficou faltando... Como faço isso?? do jeito que fiz está certo??? usando o history.back????

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bom pessoal obrigado pela dica... mais como disse o Fábio eu preciso validar isso no servidor por ser mais seguro que com o javascript... com o javascript eu já fiz... só estava precisando mesmo é de fazer a validação do lado servidor.....

 

mais uma dúvida.... existe a possibilidade de colocar um alert do javascript no DIE do if que estou comparando se está vazio ou não???

 

 

UPDATE:

 

Galera consegui.. colocar o alert aki..... rs !!!!

 

if($_SERVER["REQUEST_METHOD"] == "POST"){
	$numero_conta = isset($_POST["numero_conta"]) ? trim($_POST['numero_conta']) : '';
	if($numero_conta == ''){
		die("<script>
alert(\"Campo em branco \");//window.location = 'java script:history.back(-1)';
</script>");

 

Mais tem uma coisa que não está funcionando.... é o voltar para a página.... após o clique de enviar, aparece o alert para o usuario, mais não retorna para a página para ele preencher o campo que ficou faltando... Como faço isso?? do jeito que fiz está certo??? usando o history.back????

crie ifs com as verificações dos seus campos e depois se passar por todas as verificações eh só criar um else com isso!!!

 

header("location: nome do arquivo.php");

Compartilhar este post


Link para o post
Compartilhar em outros sites

ao invés de enviar o alert() ao cliente, crie mensagens de erro amigáveis

 

exemplo,

aproveitando esse que o fabyo postou

 

$errors = false;


if($_SERVER["REQUEST_METHOD"] == "POST"){

	$v = 'Nome';
	$$v = isset($_POST[$v]) ? trim($_POST[$v]) : '';
	if($$v == ''){
		// aqui dentro pode fazer outras validações como quantidade de caracteres, charset, etc..
		$errors[$v] = 'favor preencher o campo ' . $v . ' corretamente';
	}

	$v = 'Email';
	$$v = isset($_POST[$v]) ? trim($_POST[$v]) : '';
	if($$v == ''){
		// como se trata de um campo de email, aqui dentro você faz a validação se possui formato email.
		$errors[$v] = 'favor preencher o campo ' . $v . ' corretamente';
	}


	// exibe todos os erros existentes
	if( $errors )
	{
		foreach( $errors as $k => $v )
		{
			 echo '<br>' . $v;
		}
	}

}

 

é bom exibir as mensagens de erro na própria página do formulário, em destaque para que o usuário não fique perdido ou irritado

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.