1.-
Cuando pongo comprobar no ahy ningun problema me sale el mensaje:
http://img251.imageshack.us/img251/753/46995162.jpg
2.- Pero cuando realizo un busqueda y ese numero esta libre repite dos veces el forma asi:
http://img210.imageshack.us/img210/1945/56235236.jpg
3.- Y cuando encuentra el numero lo mismo pasa asi:
http://img42.imageshack.us/img42/1679/24664366.jpg
Este es mi codigo la verdar no entiendo pq repite mi forma.
Código php:
Ver original
<title>UNO SOLO</title> <script type="text/javascript"> function nuevoAjax() { /* Crea el objeto AJAX. Esta funcion es generica para cualquier utilidad de este tipo, por lo que se puede copiar tal como esta aqui */ var xmlhttp=false; try { // Creacion del objeto AJAX para navegadores no IE xmlhttp=new ActiveXObject("Msxml2.XMLHTTP"); } catch(e) { try { // Creacion del objet AJAX para IE xmlhttp=new ActiveXObject("Microsoft.XMLHTTP"); } catch(E) { xmlhttp=false; } } if (!xmlhttp && typeof XMLHttpRequest!="undefined") { xmlhttp=new XMLHttpRequest(); } return xmlhttp; } function eliminaEspacios(cadena) { // Funcion equivalente a trim en PHP var x=0, y=cadena.length-1; while(cadena.charAt(x)==" ") x++; while(cadena.charAt(y)==" ") y--; return cadena.substr(x, y-x+1); } function validaIngreso(valor) { /* Funcion encargada de validar lo ingresado por el usuario. Se devuelve TRUE en caso de ser valido, FALSE en caso contrario */ var reg=/(^[a-zA-Z0-9.@ ]{4,40}$)/; if(reg.test(valor)) return true; else return false; } function nuevoEvento(evento) { // Obtengo el div donde se mostraran las advertencias y errores var divMensaje=document.getElementById("error"); /* Dependiendo de cual sea el evento que ejecuto esta funcion (ingreso o verificacion) se setean distintas variables */ if(evento=="ingreso") { var input=document.getElementById("ingreso"); // Boton presionado var boton=document.getElementById("botonIngreso"); // Valor ingresado por el usuario var valor=input.value; // Texto a colocar en el input mientras se esta cargando la respuesta del servidor var textoAccion="Ingresando..."; } else { var input=document.getElementById("verificacion"); // Boton presionado var boton=document.getElementById("botonVerificacion"); // Valor ingresado por el usuario var valor=input.value; // Texto a colocar en el input mientras se esta cargando la respuesta del servidor var textoAccion="Comprobando..."; } // Elimino espacios por delante y detras de lo ingresado por el usuario valor=eliminaEspacios(valor); // Si el ingreso es invalido coloco un mensaje de error en la capa correspondiente if(!validaIngreso(valor)) { divMensaje.innerHTML="El texto ingresado contiene caracteres o longitud inválida"; } else { // Deshabilito inputs y botones para evitar dobles ingresos boton.disabled=true; input.disabled=true; input.value=textoAccion; // Creo la conexion con el servidor y le envio la variable evento (que le indica si debe ingresar o verificar) y el dato a utilizar var ajax=nuevoAjax(); ajax.open("POST", "index.php?mod=ajax&pag=proceso", true); ajax.setRequestHeader("Content-Type", "application/x-www-form-urlencoded"); ajax.send(evento+"="+valor); ajax.onreadystatechange=function() { if (ajax.readyState==4) { // Habilito nuevamente botones e inputs input.value=""; boton.disabled=false; input.disabled=false; // Muestro el mensaje enviado desde el servidor divMensaje.innerHTML=ajax.responseText; } } } } </script> </head> <body> <?php include 'conectar.php'; function validaIngreso($valor) { // Funcion utilizada para validar el dato a ingresar recibido por POST else return FALSE; } function verificaExistencia($apodo) { /* Funcion encargada de verificar la existencia del apodo recibido en base de datos. Devuelve TRUE si el apodo existe, FALSE de lo contrario */ $consulta=mysql_query("SELECT id FROM jugadores WHERE registro_fbf='$apodo'") or die(mysql_error()); else return FALSE; } { // Quito espacios en blanco al comienzo y fin de la cadena // Si el valor recibido es valido... if(validaIngreso($valor)) { conectar(); // Verifico que la base de datos no rebase los 600 registros (numero arbitrario) // Si el apodo ya existe en base de datos... if(verificaExistencia($valor)) echo "Tu apodo ya existe en la base de datos"; else { // Ingreso el nuevo apodo echo "Tu apodo ha sido ingresado"; } desconectar(); } } { // Quito espacios en blanco al comienzo y fin de la cadena // Si el valor recibido es valido... if(validaIngreso($valor)) { Conectarse(); // Si el apodo ya existe en base de datos... if(verificaExistencia($valor)) echo "El registro ya existe Chequea bien aver"; else echo "Numero generado disponible"; desconectar(); } } ?> <center> <form name="forma" action="index.php?mod=ajax&pag=proceso" method="post"> <div id="demo" style="width:600px;"> <div id="demoDer"> <input type="text" id="verificacion" name="verificacion"> <button type="button" id="botonVerificacion" onclick="nuevoEvento('verificacion')">Comprobar</button> </div> <div id="demoIzq"> </div> <div class="mensaje" id="error"></div> </div> </form> </center> </body> </html>
Y este es mi pq cobtrolador:
Código php:
Ver original
<?php $pagina = $_GET['pag']; switch($pagina) { case 'vista': include('modulos/ajax/vistas/uno.html.php'); break; case 'proceso': include('modulos/ajax/vistas/uno.html.php'); break; } ?>
Alguien podria decirme q es lo que esta pasando y como debp proceder a lo solucion muchas gracias??