Verificar disponibilidade do nome no BD via AJAX

Artigos comentados e explicados sobre MySQL

Moderador: web

responder a dúvida

Verificar disponibilidade do nome no BD via AJAX

Mensagem por web Offline » Sex Out 17, 2008 6:02 pm

Esse script verifica se um nome está disponível no BD via AJAX. Um script útil para consulta antes de um cadastro.

form_base.php

Código: Selecionar todos
<script type="text/javascript">
try{
xmlhttp = new XMLHttpRequest();
}
catch(ee){
try{
xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
}
catch(e){
try{
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
}
catch(E){
xmlhttp = false;
}
}
}
div_base = "";
valor = 0;
function abre(arquivo,metodo,div){
valor++;
div_base = div;
xmlhttp.open(metodo,arquivo+"&n="+valor);
xmlhttp.onreadystatechange=conteudo
xmlhttp.send(null)
}
function conteudo() {
nova_div = div_base;
document.getElementById(nova_div).innerHTML="verificando..."
if (xmlhttp.readyState==4){
document.getElementById(nova_div).innerHTML=xmlhttp.responseText
}
}
</script>

<form name="form">
<input type="text" name="nome" value="">
<a href="javascript: abre('consulta.php?nome='+document.form.nome.value,'GET','conteudo');">verificar disponibilidade</a>

<div id="conteudo"></div>

consulta.php

Código: Selecionar todos
<?php
header("Content-Type: text/html; charset=ISO-8859-1",true)
?>

<?php
/* CONEXÃO COM O BD */
$conexao = mysql_connect("localhost", "login", "senha") or die(mysql_error());
$db = mysql_select_db("bd");
?>

<?php
$nome = $_GET['nome'];
/* RECEBE VIA GET O PEDIDO DE VERIFICAÇÃO */
if(isset($nome)) {

$nome = $_GET['nome'];

/* PROCURA NA SUA TABELA ONDE nome SEJA IGUAL AO VALOR PASSADO */
$selec = "SELECT * FROM suatabela WHERE campo='".$nome."'";
$exec = mysql_query($selec, $conexao) or die(mysql_error());
$total = mysql_num_rows($exec);
?>

<?php
/* SE ENCONTRAR NA TABELA O VALOR PASSADO RETORNA INDISPONÍVEL */
if($total>="1") {

while($dados=mysql_fetch_array($exec)) {
echo "<font color=red>$nome está indisponível</font>";
exit;
}

/* CASO CONTRÁRIO RETORNA DISPONÍVEL */

} else {
echo "<font color=green>$nome está disponível</font>";
exit;
}

}
?>



detalhes...

Gostou do que encontrou? Divulgue, indique, participe, agradeça pelas respostas.

Faço scripts personalizados ou reparos em scripts. Orçamento MSN codigosnaweb [@] hotmail [.] com

Avatar do usuário
web
ADMIN
ADMIN
Mensagens: 11909
Registrado em: Sáb Jan 20, 2007 6:08 pm
Localização: RJ / RJ / Brasil

responder a dúvida

Voltar para Artigos sobre MySQL

Quem está online

Usuários navegando neste fórum: Nenhum usuário registrado e 1 visitante