Ir para conteúdo

POWERED BY:

Arquivado

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

Sandro Caiado

Mostrar campo hidden

Recommended Posts

Olá a todos!

Estou fazendo uma rotina de verificação em um form de teste, na qual, ao inserir o nr do cpf no campo text, no evento onBlur, ele aciona uma janela com as verificações de cpf inválido, cpf ok, ou cpf já existente na base de dados.

 

Só que eu queria que, ao invés de aparecer nesse pop-up, pudesse aparecer num campo hidden por exemplo, onde, após ele sair desse campo text referente ao cpf, aparecesse uma msg ao lado com as mensagens que aparecem nesse pop-up que mencionei anteriormente.

 

Vejam que a chamada para a pagina de verificação do cpf está no evento onBlur, windows.open

 

Página Index

<?php
include("funcoes.php");
conecta();
?>
<html>
<head>
<title>inclusao de users</title>
</head>
<body>
<b><font size="2">inclusao de users</font></b>
<hr>
<a href="visualizar.php">Visualizar registros</a>
<hr>
<form name="form1" method="POST" action="validaform.php">
  <table>
  <tr>
		<td>Cpf</td>
		<td><input type="text" name="cpf" id="cpf" onBlur="window.open('validacpf.php?cpf=' + document.getElementById('cpf').value,'pesquisar','status=no,location=no,width=300,height=100,top=300,left=350');"></td></tr>
	 <tr>
		<td>nome</td>
		<td><input type="text" name="nome"></td>
	 </tr>
	 <tr>
		<td>dtnasc</td>
		<td><input type="text" name="dtnasc" id="data"></td>
	 </tr>
		 <tr><td>Sexo</td>
<td>
<select name="txtcodcat">
<?php
$sql = "Select * from sexo order by idsexo";
$rs = mysql_query($sql);
while ($linha = mysql_fetch_array($rs)) {
$idSexo = $linha["idsexo"];
$tpSexo = $linha["tpsexo"];
echo "<option value=$idSexo>$tpSexo </option>";
}
mysql_free_result($rs);
?>
</td>
	 </tr>

	 <tr>
		<td><input type="submit" value="Enviar"></td>
		<td> </td>
	 </tr>
  </table>
</form>
</body>
</html>

Agora a página validacpf.php

 

<?php

include("funcoes.php");
conecta();

// Função que valida o CPF
function validaCPF($cpf)
{	// Verifiva se o número digitado contém todos os digitos
	$cpf = str_pad(ereg_replace('[^0-9]', '', $cpf), 11, '0', STR_PAD_LEFT);

	// Verifica se nenhuma das sequências abaixo foi digitada, caso seja, retorna falso
	if (strlen($cpf) != 11 || $cpf == '00000000000' || $cpf == '11111111111' || $cpf == '22222222222' || $cpf == '33333333333' || $cpf == '44444444444' || $cpf == '55555555555' || $cpf == '66666666666' || $cpf == '77777777777' || $cpf == '88888888888' || $cpf == '99999999999')
	{
	return false;
	}
	else
	{   // Calcula os números para verificar se o CPF é verdadeiro
		for ($t = 9; $t < 11; $t++) {
			for ($d = 0, $c = 0; $c < $t; $c++) {
				$d += $cpf{$c} * (($t + 1) - $c);
			}

			$d = ((10 * $d) % 11) % 10;

			if ($cpf{$c} != $d) {
				return false;
			}
		}

		return true;
	}
}

//Verificar se CPF já existe no BD
$cpf_enviado = validaCPF($_REQUEST['cpf']);

	if($cpf_enviado == true)  {

$sql = mysql_query("SELECT * FROM user WHERE cpf = '$cpf'");

if(mysql_num_rows($sql) == 0){

echo "<b>Cpf Ok</b>";

}
else{

echo "<b>Cpf já Cadastrado</b>";
}
}
if($cpf_enviado == false) {
		echo "<b>Cpf Incorreto</b>";

}

?>

É possível fazer o que eu penso? Ao sair desse campo text ele aparece uma mensagem dentro do próprio form?

 

[]s

Compartilhar este post


Link para o post
Compartilhar em outros sites

Utilize AJAX! Dê uma olhada aqui no fórum.

Com AJAX você pode acessar a página validacpf.php e apresentar o retorno dela em qualquer elemento.

 

Obs.: se puder dá uma lida em JQUERY!

 

ABRAX!

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.