hola!
me interesa saber hacer un formulario con validacion y que consulta a la db por ajax si existe el usuario o el email.
alguien sabe alguno?
| |||
Re: Formulario ¿Y qué tal te llevas con AJAX? Aquí http://leimnud.info/index.php?&artic...=view&cat=AJAX tienes un tutorial. Si no tienes mucho manejo de JavaScript deberías empezar por allí; en el foro de JS tienes las FAQ donde puedes informarte al respecto. Sobre lo que tu quieres hacer, aquí he colgado un ejemplo http://www.formatoweb.com.ar/ajax/co...d_de_apodo.php, posiblemente te resulte de utilidad. Saludos. |
| |||
Formulario http://www.formatoweb.com.ar/ajax/co...d_de_apodo.php, mire baje este ejemplo y estoy probando con el formulario que hize en php. he ingresado el primer valor que este es nickname pero aun no se como ingresar los otros valores del formulario. Este es el PHP de proceso cuando manda los valores el ajax al servidor. pero solo recibe uno. ya he intensado poner aqui Código PHP: Cita: eSTE Es el Formulario. solo manda un solo valor.<?php function validaIngreso($valor) { // Funcion utilizada para validar el dato a ingresar recibido por POST if(eregi("^[a-zA-Z0-9.@ ]{4,40}$", $valor)) return TRUE; else return FALSE; } function conectar() { // Conexion a base de datos mysql_connect("localhost", "root", "golden") or die(mysql_error()); mysql_select_db("tunerspot") or die(mysql_error()); } function desconectar() { mysql_close(); } 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 member WHERE username='$username'") or die(mysql_error()); $registro=mysql_fetch_row($consulta); if(!empty($registro)) return TRUE; else return FALSE; } if($_POST["ingreso"]) { // Quito espacios en blanco al comienzo y fin de la cadena $valor=trim($_POST["ingreso"]); // Si el valor recibido es valido... if(validaIngreso($valor)) { conectar(); // 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 mysql_query("INSERT INTO member (username) VALUES ('$valor')") or die(mysql_error()); echo "Tu apodo ha sido ingresado"; } desconectar(); } } Cita: haber si alguien tiene la solucion de como mandar mas valores.<script language="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 para eliminar espacios delante y detras de cada cadena while(cadena.charAt(cadena.length-1)==" ") cadena=cadena.substr(0, cadena.length-1); while(cadena.charAt(0)==" ") cadena=cadena.substr(1, cadena.length-1); return cadena; } 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) { var divMensaje=document.getElementById("mensaje"); /* 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"); var boton=document.getElementById("boton_1"); var valor=input.value; var accion="Ingresando..."; } else { var input=document.getElementById("verificacion"); var boton=document.getElementById("boton_2"); var valor=input.value; var accion="Comprobando..."; } // Elimino espacios por delante y detras de lo ingresado por el usuario valor=eliminaEspacios(valor); // Si el ingreso es invalido... 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=accion; var ajax=nuevoAjax(); ajax.open("POST", "test1.php", 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> <style type="text/css"> .boton { height:16px; width:58px; font-size:8px; font-family:Verdana, Arial, Helvetica, sans-serif; } .inputs { width:130px; height:12px; font-size:10px; font-family:Verdana, Arial, Helvetica, sans-serif; } .aviso { text-align:center; font-size:11px; font-family:Verdana, Arial, Helvetica, sans-serif; background-color:#FFFFFF; color:#FF0000; } .punteado { border-style:dotted; border-color:#000000; background-color:#EAEAEA; font-family:Verdana; font-size:10px; text-align:center; } </style> </head> <label for="username">Username</label> <input id="ingreso" name="username"><span class="do">4-15 Chars</span><br> <label for="password">Password</label> <input id="password" name="password"><span class="do">4-15 Chars</span><br> <label for="Password2">Retype Password</label> <input id="password2" name="password2"><span class="do">4-15 Chars</span><br> <label for="name">Full Name</label> <input id="name" name="name"><br> <label for="E-mail">E-Mail</label> <input id="email" name="email" value="@"><br> <label for="country">Country</label> <select name="pais"> <option>Select...</option> <option>---</option> </select><br> <label for="city">City</label> <select name="ciudad"> <option>Select...</option> <option>---</option> </select><br> <label for="bithyear">Bith Year</label> <input id="bithday" name="bithday" value="YYYY/MM/DD"><span class="do">Ex:1987/12/02</span> <br> <label for="gender">Gender</label> <select name="genero"> <option>Select...</option> <option>Male</option> <option>Female</option> </select><br> <input id="boton_1" onclick="nuevoEvento('ingreso');" type="button" value="Ingresar" class="boton"> <div class="aviso" id="mensaje"></div> </center> </body> </html> Gracias! |