Ir para conteúdo

Arquivado

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

andredoom

Script verificar se já existe registro no banco de dados [modificação]

Recommended Posts

Tenho um script que faz uma checagem no banco de dados procurando se já existe algum registro igual ao que for digitado no campo.. Os códigos estão abaixo:

 

index.html

<html>
<head>
<title>Meu cadastro</title>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.5/jquery.min.js" type="text/javascript"></script>
<script type="text/javascript">
        $(function(){ // declaro o início do jquery
				    $("input[name='nomeUsuario']").blur( function(){  

                        var nomeUsuario = $("input[name='nomeUsuario']").val();
                        //alert(nomeUsuario);

                        $.post('usuario.php',{nomeUsuario: nomeUsuario},function(data){
                                $('#resultado').html(data);//onde vou escrever o resultado
                        });
                });
        });// fim do jquery

			
</script>
</head>
<body>
<form action="" method="">
<label>Nome Usuário: <input type="text" name="nomeUsuario" /></label>
</form>
<div id="resultado"></div>
</body>
</html>

 

 

usuario.php

 

<?php
        //envio o charset para evitar problemas
        header("Content-Type: text/html; charset=ISO-8859-1");

        $con = mysql_connect('localhost', 'user', 'pass');//faço a conexão com o banco
        mysql_select_db('db', $con);//seleciono a tabela no banco

        $sql = "
                SELECT * FROM `usuario`
                WHERE `nomeUsuario` = '{$_POST['nomeUsuario']}' ";//monto a query

        $q = mysql_query( $sql );//executo a query

        if( mysql_num_rows( $q ) > 0 )//se retornar algum resultado
                echo 'Já existe!';
        else
                echo 'Não existe ainda!';
?>

 

Ok, vamos la.

 

Eu queria modificar esse script, para que o alerta seja exibido somente se o registro já existir, e que o alerta seja exibido com a função "alert", não mostrado na própria página.

 

Outra modificação é apos ele mostrar o alerta falando que o registro ja existe, ele apagar o valor que foi digitado no campo..

 

Alguém sabe como fazer essa modificação, alguém poderia me ajudar?

 

Obrigado.

Compartilhar este post


Link para o post
Compartilhar em outros sites

troque:

$('#resultado').html(data);//onde vou escrever o resultado

por:
alert(data);

$("input[name='nomeUsuario']").val('');//apagando o input

Compartilhar este post


Link para o post
Compartilhar em outros sites

 

troque:

$('#resultado').html(data);//onde vou escrever o resultado
por:
alert(data);
$("input[name='nomeUsuario']").val('');//apagando o input

 

Se não me engano quem criou esse script foi você né? Se sim, parabéns pelo ótimo trabalho e obrigado pela resposta..

 

Testei aqui e funcionou, porém ele esta dando o aviso de que o usuario não existe, eu queria que o alerta fosse exibido somente se o registro ja existir.. Sera que tem como fazer isso?

Compartilhar este post


Link para o post
Compartilhar em outros sites

tem sim, basta trocar isso aqui:

alert(data);
$("input[name='nomeUsuario']").val('');//apagando o input
por isso:
if( data!='Não existe ainda!' ){ 
    alert(data);
    $("input[name='nomeUsuario']").val('');//apagando o input
}

e sim, esse script é do meu blog. Eu que fiz

Compartilhar este post


Link para o post
Compartilhar em outros sites

 

 

Perfeito, funcionou! :)

 

Esse scrip esta me ajudando muito.. tenho apenas uma última dúvida.

 

Como faço para ele puxar as informações de um banco de dados que esta em outro arquivo? Eu naõ quero colocar os dados diretamete no arquivo "usuario.php", quero que ele pegue as informação do db de outro arquivo.

 

Tem como fazer isso?

 

Eu tentei sar o require, mas não funcionou.

 

require("arquivo.php");

Compartilhar este post


Link para o post
Compartilhar em outros sites

é isso mesmo, basta fazer corretamente.

Compartilhar este post


Link para o post
Compartilhar em outros sites

é isso mesmo, basta fazer corretamente.

Rapaz modifiquei tanto e no final não vai dar para usar o script...

 

O campo que eu quero colocar esse script já tem um "name" no input. Você sabe se tem como colocar dois names no mesmo input, ou então executar esse script de outra forma?

Compartilhar este post


Link para o post
Compartilhar em outros sites

não cara, dispare por outro seletor. Por uma class por exemplo:

$(".pesquisa-ajax").blur( function(){
ai vc dá essa class no teu input
<label>Nome Usuário: <input type="text" name="xxx" class="pesquisa-ajax" /></label>

Compartilhar este post


Link para o post
Compartilhar em outros sites

cara integrei ele aqui e começou a aparecer esse erro:

 

PHP Notice: Undefined index: value in usuario.php on line 11

a linha 11 é essa:

 

 WHERE `nomeUsuario` = '{$_POST['nomeUsuario']}' ";//monto a query

Sabe o que houve?

Compartilhar este post


Link para o post
Compartilhar em outros sites

ai é php, poste no fórum de php. :lol:

Compartilhar este post


Link para o post
Compartilhar em outros sites

Boa tarde, desculpa reabrir o tópico depois de muito tempo

 

 

Achei o script e conseguir usar na minha aplicação, mas não estou conseguindo implementar uma logica.

 

Caso o login já exista ele mostra para o usuário a mensagem de erro e apaga o input.

 

Se o login não existir ele da mensagem de sucesso e não apaga o input.

 

no caso acima está acontecendo isso.

 

Obrigado desde já.

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.