Verifica Se Cpf/Cnpj Já Está Cadastrado
#1
Posted 21/03/2011, 15:17
Preciso consultar se um CPF/CNPJ já está cadastrado no banco de dados. Eles estão em 2 'inputs' diferente no meu formulário: cli_cpf e cli_cnpj.
Acontece que a pesquisa SEMPRE retorna que o número já está cadastrado, mesmo não estando.
Estes são os inputs:
<tr>
<td colspan="3"><input type="radio" id="cpf" name="doc" checked="checked"/>CPF:
<input type="text" id="cli_cpf" name="cli_cpf" maxlength="14"/></td>
<td colspan="3"><input type="radio" id="cnpj" name="doc"/>CNPJ:
<input type="text" id="cli_cnpj" name="cli_cnpj" disabled="disabled" maxlength="18"/></td>
</tr>
E este é meu código sql:
<?php
include "../config.php";
$cli_id = ($_POST['cli_id']);
$cli_status = ($_POST['cli_status']);
$cli_razao = ($_POST['cli_razao']);
$cli_fantasia = ($_POST['cli_fantasia']);
$cli_cpf = ($_POST['cli_cpf']);
$cli_cnpj = ($_POST['cli_cnpj']);
$cli_ie = ($_POST['cli_ie']);
$cli_im = ($_POST['cli_im']);
$cli_tipo = ($_POST['cli_tipo']);
$cli_cep = ($_POST['cli_cep']);
$cli_end = ($_POST['cli_end']);
$cli_bairro = ($_POST['cli_bairro']);
$cli_cidade = ($_POST['cli_cidade']);
$cli_uf = ($_POST['cli_uf']);
$cli_cob_cep = ($_POST['cli_cob_cep']);
$cli_cob_end = ($_POST['cli_cob_end']);
$cli_cob_bairro = ($_POST['cli_cob_bairro']);
$cli_cob_cidade = ($_POST['cli_cob_cidade']);
$cli_cob_uf = ($_POST['cli_cob_uf']);
$cli_tipo_edif = ($_POST['cli_tipo_edif']);
$cli_contato1 = ($_POST['cli_contato1']);
$cli_contato2 = ($_POST['cli_contato2']);
$cli_contato3 = ($_POST['cli_contato3']);
$cli_funcao1 = ($_POST['cli_funcao1']);
$cli_funcao2 = ($_POST['cli_funcao2']);
$cli_funcao3 = ($_POST['cli_funcao3']);
$cli_tel_res1 = ($_POST['cli_tel_res1']);
$cli_tel_res2 = ($_POST['cli_tel_res2']);
$cli_tel_res3 = ($_POST['cli_tel_res3']);
$cli_tel_cel1 = ($_POST['cli_tel_cel1']);
$cli_tel_cel2 = ($_POST['cli_tel_cel2']);
$cli_tel_cel3 = ($_POST['cli_tel_cel3']);
$cli_tel_com1 = ($_POST['cli_tel_com1']);
$cli_tel_com2 = ($_POST['cli_tel_com2']);
$cli_tel_com3 = ($_POST['cli_tel_com3']);
$cli_tel_radio1 = ($_POST['cli_tel_radio1']);
$cli_tel_radio2 = ($_POST['cli_tel_radio2']);
$cli_tel_radio3 = ($_POST['cli_tel_radio3']);
$cli_tel_fax1 = ($_POST['cli_tel_fax1']);
$cli_tel_fax2 = ($_POST['cli_tel_fax2']);
$cli_tel_fax3 = ($_POST['cli_tel_fax1']);
$cli_email1 = ($_POST['cli_email1']);
$cli_email2 = ($_POST['cli_email2']);
$cli_email3 = ($_POST['cli_email3']);
$cli_obs = ($_POST['cli_obs']);
$data_cadastro = date("y-m-d");
$hora_cadastro = strftime("%H:%M:%S");
$query_ver_sql = mysql_query("SELECT * FROM cad_cliente WHERE cli_cpf = '$cli_cpf' OR cli_cnpj = '$cli_cnpj'");
$query_ver= mysql_num_rows($query_ver_sql); // conta quantos registros foram encontrados na query anterior
if($query_ver>0){
echo "<p align=\"center\"><font face=arial size=2>PFJ já cadastrada!<br><br></font><br><a href=\"javascript:history.go(-1)\"><img src=\"../imagens/voltar.jpg\" alt=\"Voltar\" border=\"0\" align=\"center\"></a>";
} else {
$sqlinsert = "INSERT INTO cad_cliente (cli_id, cli_status, cli_razao, cli_fantasia, cli_cpf, cli_cnpj, cli_ie, cli_im, cli_tipo, cli_cep, cli_end, cli_bairro, cli_cidade, cli_uf, cli_cob_cep, cli_cob_end, cli_cob_bairro, cli_cob_cidade, cli_cob_uf, cli_tipo_edif, cli_contato1, cli_contato2, cli_contato3, cli_funcao1, cli_funcao2, cli_funcao3, cli_tel_res1, cli_tel_res2, cli_tel_res3, cli_tel_cel1, cli_tel_cel2, cli_tel_cel3, cli_tel_com1, cli_tel_com2, cli_tel_com3, cli_tel_radio1, cli_tel_radio2, cli_tel_radio3, cli_tel_fax1, cli_tel_fax2, cli_tel_fax3, cli_email1, cli_email2, cli_email3, cli_obs, data_cadastro, hora_cadastro)
VALUES ('', '', '$cli_razao', '$cli_fantasia', '$cli_cpf', '$cli_cnpj', '$cli_ie', '$cli_im', '$cli_tipo', '$cli_cep', '$cli_end', '$cli_bairro', '$cli_cidade', '$cli_uf', '$cli_cob_cep', '$cli_cob_end', '$cli_cob_bairro', '$cli_cob_cidade', '$cli_cob_uf', '$cli_tipo_edif', '$cli_contato1', '$cli_contato2', '$cli_contato3', '$cli_funcao1', '$cli_funcao2', '$cli_funcao3', '$cli_tel_res1', '$cli_tel_res2', '$cli_tel_res3', '$cli_tel_cel1', '$cli_tel_cel2', '$cli_tel_cel3', '$cli_tel_com1', '$cli_tel_com2', '$cli_tel_com3', '$cli_tel_radio1', '$cli_tel_radio2', '$cli_tel_radio3', '$cli_tel_fax1', '$cli_tel_fax2', '$cli_tel_fax3', '$cli_email1', '$cli_email2', '$cli_email3', '$cli_obs', '$data_cadastro', '$hora_cadastro')";
Mysql_query($sqlinsert) or die ("<p align=\"center\"><font face=arial size=2 color=#ff0000>Não foi possível cadastrar o cliente!<br><br></font><br><a href=\"javascript:history.go(-1)\"><img src=\"../imagens/voltar.jpg\" alt=\"Voltar\" border=\"0\" align=\"center\"></a>");
echo "<div align=center><font face=arial size=2><br>Cliente <font face=arial size=2 color=#ff0000>$cli_razao </font>foi inserido com sucesso em <font face=arial size=2 color=#ff0000>".$data_cadastro."</font> às <font face=arial size=2 color=#ff0000>".$hora_cadastro."</font>.<br>
<br><a href=\"form_cadastra_contrato.php\">Cadastrar Contrato</a>";
}
?>
Alguém pode me ajudar?
#2
Posted 25/03/2011, 22:34
tenho um script nesses moldes que funciona direitinho.
Substitua essa parte do seu código:
// verifica cpf e cnpj
$query_ver_sql = mysql_query("SELECT * FROM cad_cliente WHERE cli_cpf = '$cli_cpf' OR cli_cnpj = '$cli_cnpj'");
$query_ver = mysql_num_rows($confere);
if($query_ver != 0) {
echo "<p align=\"center\"><font face=arial size=2>PFJ já cadastrada!<br><br></font><br><a href=\"javascript:history.go(-1)\"><img src=\"../imagens/voltar.jpg\" alt=\"Voltar\" border=\"0\" align=\"center\"></a>";
exit;
}
// faz consulta no banco para inserir os dados do usuario
$sqlinsert = "INSERT INTO ....
?>
Qualquer dúvida avise ok?
Abs.
#3
Posted 29/03/2011, 10:15
Olá Renata,
tenho um script nesses moldes que funciona direitinho.
Substitua essa parte do seu código:
// verifica cpf e cnpj
$query_ver_sql = mysql_query("SELECT * FROM cad_cliente WHERE cli_cpf = '$cli_cpf' OR cli_cnpj = '$cli_cnpj'");
$query_ver = mysql_num_rows($confere);
if($query_ver != 0) {
echo "<p align=\"center\"><font face=arial size=2>PFJ já cadastrada!<br><br></font><br><a href=\"javascript:history.go(-1)\"><img src=\"../imagens/voltar.jpg\" alt=\"Voltar\" border=\"0\" align=\"center\"></a>";
exit;
}
// faz consulta no banco para inserir os dados do usuario
$sqlinsert = "INSERT INTO ....
?>
Qualquer dúvida avise ok?
Abs.
Obrigada pela ajuda, mas não funcionou.... Até troquei a variável de consulta, mas ainda não deu certo.
#4
Posted 31/03/2011, 16:22
$sql = mysql_query("SELECT * FROM suatabela where email='$email'"); $dados=mysql_fetch_array($sql); if($email == "$dados[email]"){?> <h3>O e-mail <strong><font color="#FF0000"><? echo $email?></font></strong> já está cadastrado!</h3> <meta http-equiv="refresh" content="2;URL=javascript:history.go(-1)">
é esse o codigo espero que te ajude
http://diegodeveloper.wordpress.com
#5
Posted 06/04/2011, 12:19
Não funcionou!
Tenho esse código funcionando perfeitamente em outra parte do sistema:
<?php $doc = ($_POST['doc']); if ($doc == ""){ echo "<p align=\"center\"><font face=arial size=2 color=#ff0000>Sem argumentos para verificar!<br><br></font><br><a href=\"javascript:history.go(-1)\"><img src=\"../../imagens/voltar.jpg\" alt=\"Voltar\" border=\"0\" align=\"center\"></a>"; }else{ $query_ver_sql = mysql_query("SELECT * FROM cad_cliente WHERE cli_cpf = '$doc' OR cli_cnpj = '$doc'"); $query_ver= mysql_num_rows($query_ver_sql); // conta quantos registros foram encontrados na query anterior if($query_ver>0){ echo "<p align=\"center\"><font face=arial size=2>PFJ já cadastrada!<br><br></font><br><a href=\"javascript:history.go(-1)\"><img src=\"../../imagens/voltar.jpg\" alt=\"Voltar\" border=\"0\" align=\"center\"></a>"; } else { header ("Location: form_cadastra_cliente.php"); } } ?>
Mas esse outro não funciona.... Acredito que seja pq tem duas variáveis diferentes; Só pode ser, o resto é tudo igual:
<?php $cli_cpf = ($_POST['doc_cpf']); $cli_cnpj = ($_POST['doc_cnpj']); $query_ver_sql = mysql_query("SELECT * FROM cad_cliente WHERE cli_cpf = '$cli_cpf' OR cli_cnpj = '$cli_cnpj'"); $query_ver= mysql_num_rows($query_ver_sql); // conta quantos registros foram encontrados na query anterior if($query_ver>0){ echo "<p align=\"center\"><font face=arial size=2>PFJ já cadastrada!<br><br></font><br><a href=\"javascript:history.go(-1)\"><img src=\"../imagens/voltar.jpg\" alt=\"Voltar\" border=\"0\" align=\"center\"></a>"; } else { $sqlinsert = "INSERT INTO ....
#6
Posted 06/04/2011, 14:47
DESSE GEITO FUNFA SÓ QUE VC TERIA QUE FAZER DUAS VEZES COM PARA O CPF E OUTRA PARA O CNPJ OU ADPITAR?
<?php $cli_cpf = ($_POST['doc_cpf']); $sql = mysql_query("SELECT * FROM cad_cliente where cli_cpf='$cli_cpf'"); $dados=mysql_fetch_array($sql); if($cli_cpf == "$dados[cli_cpf]"){?> <h3>O CPF <strong><font color="#FF0000"><? echo $email ?></font></strong> já está cadastrado!</h3> <meta http-equiv="refresh" content="5;URL=javascript:history.go(-1)">
dICA???
MEU AMIGO EXISTE UM FRAMEWORK QUE TORNA ESSE PROCESSO MUITO MAIS BONITO (NÃO USO) MAIS ELE É MUITO INTERESANTE CHAME-SE raxan
#7
Posted 06/04/2011, 21:40
Não funciona de jeito nenhum!!!
Já tentei de tudo... o problema está no fato de ter dois campos com variáveis diferentes.
#8
Posted 07/04/2011, 00:09
Tudo bem?
Bem eu acredito que o erro seja outro... será que por acaso você tem algum cpf ou cnpj cadastrado no banco em branco?
Pelo que eu vi no seu formulário, você está enviando sempre somente um dos dois campos certo? Você não está cadastrando um cliente com CNPJ e CPF correto?
Então o que acontece como você sempre envia um dos dois em branco essa consulta sempre vai dar verdadeiro
$query_ver_sql = mysql_query("SELECT * FROM cad_cliente WHERE cli_cpf = '$cli_cpf' OR cli_cnpj = '$cli_cnpj'");
Esta consulta pergunta se o cli_cpf é igual a $cli_cpf OU cli_cnpj = $cli_cnpj.
Como um dos dois estará em branco e no banco de dados deve ter algum registro salvo então ele dá verdadeiro. Entendeu?
Nesse caso a verificação correta seria:
1 - Verificar se os dois campos estão vazios... (um dos dois tem que ser informado certo?!)
2 - Verificar qual dos dois estão preenchidos, se for o CPF você faz uma consulta somente com o CPF.
"SELECT * FROM cad_cliente WHERE cli_cpf = '$cli_cpf'"
3 - Se for o CNPJ que estiver preenchido você verifica se o CNPJ existe...
"SELECT * FROM cad_cliente WHERE cli_cnpj = '$cli_cnpj'"
Acho que assim vai dar certo. Verifique se a idéia está correta...
Meu post lhe ajudou? Reputar/votar é uma das formas de agradecer.
#9
Posted 07/04/2011, 22:10
Fiz isso aqui, mas sei que está errado:
if ($cli_cpf == ""){ $sql = mysql_query("SELECT * FROM cad_cliente WHERE cli_cnpj = '$cli_cnpj'"); $qry = mysql_num_rows($sql); if($qry != 0) { echo "<p align=\"center\"><font face=arial size=2>CNPJ já cadastrado!<br><br></font><br><a href=\"javascript:history.go(-1)\"><img src=\"../../imagens/voltar.jpg\" alt=\"Voltar\" border=\"0\" align=\"center\"></a>"; } if ($cli_cnpj == ""){ $sql = mysql_query("SELECT * FROM cad_cliente WHERE cli_cpf = '$cli_cpf'"); $qry = mysql_num_rows($sql); if($qry != 0) { echo "<p align=\"center\"><font face=arial size=2>CPF já cadastrado!<br><br></font><br><a href=\"javascript:history.go(-1)\"><img src=\"../../imagens/voltar.jpg\" alt=\"Voltar\" border=\"0\" align=\"center\"></a>"; } else { $sqlinsert = "INSERT INTO cad_cliente ...
#10
Posted 25/09/2017, 11:26
0 user(s) are reading this topic
0 membro(s), 0 visitante(s) e 0 membros anônimo(s)