el caso es que estoy haciendo un formulario de comprobacion de nombre de usuario(aquello que sale en muchos registros que mientras vas ecribiendo te comprueba si el USER ya esta registrado o no...) que en principio no tiene mas complicacion que hacer una simple consulta a la base de datos...
peero mi problema llega cuando tengo que comprobar el contenido de la caja de texto cada vez que se pulsa una tecla...
tengo el formulario ...
Código HTML :
<!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> <link href="inc/css/main.css" rel="stylesheet" type="text/css" /> <link href="inc/css/zurb_buttons.css" rel="stylesheet" type="text/css" /> <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/mootools/1.2.3/mootools-yui-compressed.js"></script> <script src="http://code.jquery.com/jquery-latest.js"></script> <script> function cambio(){ document.signup.us.value = document.signup.user_name.value; } </script> </head> <body> <div id="container"> <div id="content"> <form method="post" action="" id="signup" name="signup"> <ul class="form"> <li> <label for="ujser_name">Username</label> <input type="text" id="us" name="us"> <input type="text" name="user_name" id="user_name" class="text" onkeyup="javascript:cambio();" /> <label id="response"></label> </li> <li><input type="submit" value="Sign Up Now!" id="submit_button" class="large disabled button" disabled /></li> </ul> </form> </div> <script> $(document).ready(function(){ $("#user_name").keyup(function(){ var input_value =this.value; if(input_value.length >3){ new Request.JSON({ url: "inc/php/json.php", onSuccess: function(response){ //did it return as good, or bad? if(response.action != "success"){ //username is available $("#user_name").removeClass("error"); $("#user_name").addClass("success"); //update the response p $("#response").set('html','<em>'+response.user_name+'</em> is Available'); //activate the button $("#submit_button").disabled = false; $("#submit_button").removeClass('disabled'); $("#submit_button").addClass('blue'); }else{ //username is taken $('#user_name').removeClass('success'); $('#user_name').addClass('error'); //update the response p $('#response').set('html','<em>'+response.user_name+'</em> is not available. Please choose another!'); //disable the button $('submit_button').disabled = true; $('submit_button').removeClass('blue'); $('submit_button').addClass('disabled'); } } }).get($("#signup")); } }) }) </script> <?php include("inc/php/json.php"); ?> </div> </body> </html>
y la conexion al a base de datos
Código PHP :
<?php $result = null; $dbhost = "localhost"; if (trim(strtoupper($_SERVER["HTTP_HOST"]))=="LOCALHOST"){ $dbuser = "root"; $dbpass = ""; $dbname = "proyectologin"; } // Conexion a la base de datos $conexiondirecciones=mysql_connect($dbhost, $dbuser, $dbpass) or die("No se puede conectar"); mysql_select_db($dbname, $conexiondirecciones) or die("No se puede conectar a la base de datos"); //format the variables $user_name = mysql_real_escape_string($_GET['user_name']); //check the database for any users named $user_name $grab_user = mysql_query("SELECT `user_name` FROM `ajax_users` WHERE `user_name` = '$user_name'"); //check if the query returned anything if(mysql_num_rows($grab_user) == 0){ //no user by that name $result['action'] = 'success'; }else{ //oops, already taken $result['action'] = 'error'; } $result['user_name'] = $_GET['user_name']; //send the response back echo json_encode($result); ?>
en la pagina del formulario no consigo que me vaya cogiendo el valor $user_name cada vez que se pulsa una tecla y ya no se que hacer...alguna idea?
gracias de antemano
