les pondré los códigos
index.html
Código:
comprueba.php<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>Documento sin título</title> <script type="text/javascript" language="javascript" src="comprueba.js" ></script> </head> <body> <div id="contenedor"> <table width="500" border="0" cellspacing="0" cellpadding="0"> <tr> <td width="180"><form> <input type="text" size="30" name="campotexto" id="username" onkeyup="comprueba()" /> </form> </td> <td width="320"><div id="respuesta"></div></td> </tr> </table> </div> </body> </html>
Código:
comprueba.js<?php /** * @author * @copyright 2010 */ $username = $_GET[username]; function db_connect() { $link = mysql_connect("localhost", "root", "oooooo"); $conn = mysql_select_db("pruebas", $link); } db_connect(); $query = "SELECT username FROM usuarios WHERE username='$username'"; $resultado = mysql_query($query); $num = mysql_num_rows($resultado); // genera la salída XML header('Content-Type: text/xml'); // genera el header XML echo '<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>'; // crea el elemento response echo '<response>'; if($num > 0) { echo "El nombre de usuario que ha elegido No esta disponible, por favor elija otro"; } else { echo "El nombre de usuario esta dispponible para usted"; } echo '</response>'; ?>
Código:
/** * @author JORDAN */ function getXMLHTTPRequest() { var req = false; try { req = new XMLHttpRequest(); } catch(err1) { try { req = new ActiveXObject("Msxml2.XMLHTTP"); } catch(err2) { try { req = ActiveXObject("Microsoft.XMLHTTP"); } catch(err3) { req = false; } } } return req; } var http = getXMLHTTPRequest(); function comprueba() { if(http.readyState == 4 || http.readyState == 0) { var username = encodeURIComponent(document.getElementById("username").value); // creamos la url var url = "comprueba.php?username=" + username; // abrimos la url en el servidor http.open("GET", url, true); // define la funcion para manejar la respuesta del servidor http.onreadystatechange = useHttpResponse; // enviamos http.send(null); } else { setTimeout("proceso()", 300); } } // ejecutado automáticamente cuando obtiene respuesta del servidor function useHttpResponse() { if(http.readyState == 4) { if(http.status == 200) { // extraemos el XML recibido del servidor xmlResponse = http.responseXML; // obtenemos el document element (elemento raíz) de la estructura XML xmlDocumentElement = xmlResponse.documentElement; // obtenemos el mensaje de texto que está en el prime hijo del "document element"; msj = xmlDocumentElement.firstChild.data; // actualizamos la pantalla del usuario con los datos devueltos del servidor document.getElementById("respuesta").innerHTML = msj } // un status distinto a 200 indica que es un error else { alert("ha ocurrido un error: " + http.statusText); } } }