Ir para conteúdo

POWERED BY:

Arquivado

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

ramiroramiro10

[Resolvido] Dado já cadastrado

Recommended Posts

Olá amigos, meu código não está retornando o comando esperado. gostaria que quando o formulario fosse cadastrar um cpf já cadastrado retornasse o comando echo "cpf ou cnpj já cadastrado" mas não estou consegundo...

 

segue o código:

 

<?php 
$cpf_cnpj = $_POST["cpf_cnpj"];
$nome_razao = $_POST["nome_razao"];
$contato = $_POST["contato"];
$email = $_POST["email"];
$senha = $_POST["senha"];
$endereco = $_POST["endereco"];
$bairro = $_POST["bairro"];
$cidade = $_POST["cidade"];
$uf = $_POST["uf"];
$dddfixo = $_POST["dddfixo"];
$telefixo = $_POST["telefixo"];
$dddcelular = $_POST["dddcelular"];
$telecelular = $_POST["telecelular"];

require("conectdb.php");

$consulta = "select cpf_cnpj from tbcliente";


if ( mysql_query($consulta) == $cpf_cnpj) 
{
echo "CPF OU CNPJ JÁ CADASTRADO";
}
elseif ( mysql_query($consulta) != $cpf_cnpj)
{
mysql_query("insert into tbcliente ( idcliente, cpf_cnpj, nome_razao, contato, email, senha, endereco, bairro, cidade, uf, dddfixo, telefixo, dddcelular, telecelular)
values ( NULL , '$cpf_cnpj', '$nome_razao', '$contato', '$email', '$senha', '$endereco', '$bairro', '$cidade', '$uf', '$dddfixo', '$telefixo', '$dddcelular', '$telecelular')");
} 
else
{
echo "nao foi possivel inserir";
}


?>

 

podem me ajudar?

Compartilhar este post


Link para o post
Compartilhar em outros sites

defina o campo cpf_cnpj como sua chave primária e o banco não aceitára a entrada duplicada, não há necessidade do campo idcliente visto que cpf e cnpj são campos únicos e podem ser utilizados como chave primária da tabela.

 

o mysql retorna o erro código 1062 quando ocorre entrada duplicada é só tratar esse erro e retornar uma mensagem amigável ao usuário.

 

qualquer dúvida é só falar

Compartilhar este post


Link para o post
Compartilhar em outros sites

Boa Victor, mais simples que minha dica. Mas não sabendo o nivel de conhecimento do nosso amigo, eu faria assim.

 

$consulta = "select cpf_cnpj from tbcliente";

$paracontar = mysql_query("select from tbcliente where cpf_cnpj='$$cpf_cnpj'");
$contacpf = mysql_num_rows($paracontar);

if ( $contacpf > 0) 
{
echo "CPF OU CNPJ JÁ CADASTRADO";
}
else
{
mysql_query("insert into tbcliente ( idcliente, cpf_cnpj, nome_razao, contato, email, senha, endereco, bairro, cidade, uf, dddfixo, telefixo, dddcelular, telecelular)
values ( NULL , '$cpf_cnpj', '$nome_razao', '$contato', '$email', '$senha', '$endereco', '$bairro', '$cidade', '$uf', '$dddfixo', '$telefixo', '$dddcelular', '$telecelular')");
} 


 

Antes de qualquer coisa ele verifica se o usuario colocou um cpf existente contando pelo "mysql_num_rows", caso já exista mostra o erro se não ele grava.

 

Vlw

Compartilhar este post


Link para o post
Compartilhar em outros sites

Boa Victor, mais simples que minha dica. Mas não sabendo o nivel de conhecimento do nosso amigo, eu faria assim.

 

$consulta = "select cpf_cnpj from tbcliente";

$paracontar = mysql_query("select from tbcliente where cpf_cnpj='$$cpf_cnpj'");
$contacpf = mysql_num_rows($paracontar);

if ( $contacpf > 0) 
{
echo "CPF OU CNPJ JÁ CADASTRADO";
}
else
{
mysql_query("insert into tbcliente ( idcliente, cpf_cnpj, nome_razao, contato, email, senha, endereco, bairro, cidade, uf, dddfixo, telefixo, dddcelular, telecelular)
values ( NULL , '$cpf_cnpj', '$nome_razao', '$contato', '$email', '$senha', '$endereco', '$bairro', '$cidade', '$uf', '$dddfixo', '$telefixo', '$dddcelular', '$telecelular')");
} 


 

Antes de qualquer coisa ele verifica se o usuario colocou um cpf existente contando pelo "mysql_num_rows", caso já exista mostra o erro se não ele grava.

 

Vlw

 

ok obrigado...funcionou apenas corrigi alguns erros de sintaxe:

 

$paracontar = mysql_query("select cpf_cnpj from tbcliente where cpf_cnpj = '$cpf_cnpj'"); 
$contacpf = mysql_num_rows($paracontar);

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.