Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Olá, estou com um problema que me está dando muita dor de cabeça, meu código verifica apenas se o e-mail já foi cadastrado, e não verifica o usuario! Sim, ja pesquisei MUITO na internet e nada me ajuda...
O código é: // Verifica se o usuario e o email existem, se existir resulta em erro
if (! empty( $user_id ) ) {
$erro = 'Usuário ou email já cadastrado'. $pdo_insere = $conexao_pdo->prepare('UPDATE usuarios SET user=?, user_password=?, user_name=?, user_email=? WHERE user_id=?'). $pdo_insere->execute( array( $form_usuario, crypt( $form_senha ), $form_nome, $user_id, $form_email ) ). Vlw galera!Esse seu código não verifica absolutamente nada... a query que valida isto deve vir antes disto dai...
Pode ajudar a arrumar de um jeito que verifique por favor? Pois esse código ajuda quando alguem digita um e-mail que já está sendo usado.
$email = 'aaaa@aaa.com';
$validacao = $con->prepare("SELECT id FROM tabela WHERE email = :email LIMIT 1");
$validacao ->bindParam(':email ',$email,PDO::PARAM_STR);
$validacao ->execute();
if($validacao->rowCount() == '1'){
//ACHOU ALGUMA COISA NA CONSULTA
}else{
//NÃO ACHOU NADA NA CONSULTA
}
>
$email = 'aaaa@aaa.com';
$validacao = $con->prepare("SELECT id FROM tabela WHERE email = :email LIMIT 1");
$validacao ->bindParam(':email ',$email,PDO::PARAM_STR);
$validacao ->execute();Acho que você não entendeu, esse código que estou usando no momento verifica apenas se o E-MAIL existe, eu queria um que verificasse se o USUARIO existe...
Aqui está a página de cadastro se quiser testar: http://www.clanrgn.com.br/sistema_login/register/
Obrigado.
Francamente, não entendi *orra nenhuma, qual a sua real dúvida? Como testar duas coisas ao mesmo tempo?
WHERE email = :email OR usuario = :usuario
Eu quero que quando uma pessoa vai registrar e coloca um usuário que já existe, retorne a mensagem para ela: Usuário já existe...
Qual a diferença entre o que eu passei #4? Ou consultar o nome de usuário? Nenhuma... é só trocar o nome da coluna, vamos supor que você tenha a necessidade de saber se a cor da cueca do cara já está em uso no sistema, no seu BD você tem uma coluna chamada, cor_da_cueca, então a query ficaria:
$cor = 'rosa';
$validacao = $con->prepare("SELECT id FROM tabela WHERE cor_da_cueca = :cor LIMIT 1");
$validacao ->bindParam(':cor',$cor,PDO::PARAM_STR);
$validacao ->execute();
if($validacao->rowCount() == '1'){
//COR JÁ EM USO
}else{
//NÃO ACHOU NADA NA CONSULTA
}
Agora vamos supor que eu queira o nome do cara, e a coluna se chame nome_do_cara, então:
$nome = 'zé das couves';
$validacao = $con->prepare("SELECT id FROM tabela WHERE nome_do_cara = :nome LIMIT 1");
$validacao ->bindParam(':nome',$nome ,PDO::PARAM_STR);
$validacao ->execute();
if($validacao->rowCount() == '1'){
//NOME JÁ EM USO
}else{
//NÃO ACHOU NADA NA CONSULTA
}
Viu só, é exatamente sempre a mesma coisa... se você quiser validar duas sentenças ao mesmo tempo, em que nenhuma delas por ser verdadeira:
$cor = 'rosa';
$nome = 'zé das couves';
$validacao = $con->prepare("SELECT id FROM tabela WHERE cor_da_cueca = :cor OR nome_do_cara = :nome LIMIT 1");
$validacao ->bindParam(':cor',$cor,PDO::PARAM_STR);
$validacao ->bindParam(':nome',$nome ,PDO::PARAM_STR);
$validacao ->execute();
if($validacao->rowCount() == '1'){
//COR/NOME JÁ EM USO
}else{
//NÃO ACHOU NADA NA CONSULTA
}
Tudo é uma questão de apenas usar a cabeça.Ah ok... consegui, obrigado! :D
Ah ok, obrigado! :D
Esse seu código não verifica absolutamente nada... a query que valida isto deve vir antes disto dai...