Saludos, no se si me hago entender, aun soy novato en esto pero tengo una funcion que valida campos de datos del usuario de un formulario, se le da el submit si esta mal sale el correspondiente mensaje de error sino todo ok y se graban esos datos en mi b/d, pero quiero validar las extensiones de las fotos que suban los usuarios igual con un onsubmit en ese mismo programa antes de que se grabe en la b/d, he tratado de juntar las 2 funciones y no me funciona la de las fotos.
codigo de validacion de datos del usuario :
Código:
function validarForm(formulario) {
if(formulario.usuario.value.length==0) { //¿Tiene 0 caracteres?
formulario.usuario.focus(); // Damos el foco al control
alert('No puedes dejar campos en blanco'); //Mostramos el mensaje
return false; //devolvemos el foco
}
if(formulario.mail.value.length==0) { //¿Tiene 0 caracteres?
formulario.mail.focus(); // Damos el foco al control
alert('No puedes dejar campos en blanco'); //Mostramos el mensaje
return false; //devolvemos el foco
}
if(formulario.contrasena.value.length==0) { //¿Tiene 0 caracteres?
formulario.contrasena.focus(); // Damos el foco al control
alert('No puedes dejar campos en blanco'); //Mostramos el mensaje
return false; //devolvemos el foco
}
if(formulario.repcontrasena.value.length==0) { //¿Tiene 0 caracteres?
formulario.repcontrasena.focus(); // Damos el foco al control
alert('No puedes dejar campos en blanco'); //Mostramos el mensaje
return false; //devolvemos el foco
}
if(formulario.contrasena.value!=formulario.repcontrasena.value) {
formulario.contrasena.focus(); //comprueba que sean iguales
alert('Las contraseñas no coinciden');
return false;
}
if ((formulario.mail.value.indexOf ('@', 0) == -1)||(formulario.mail.value.length < 5)) {
formulario.mail.focus();
alert("Escriba una dirección de correo válida en el campo \"Dirección de correo\".");
return (false);
}
if ((formulario.mail.value.indexOf ('.', 0) == -1)) {
formulario.mail.focus();
alert("Escriba una dirección de correo válida en el campo \"Dirección de correo\".");
return (false);
}
value=e.value;
return true; //Si ha llegado hasta aquí, es que todo es correcto
}
y el codigo de validacion de las fotos:
Código:
function validar(){
var OK = true;
var frm = document.forms["frm"];
var f = frm.elements["archivo"];
if( !f.value.match(/.(jpg)|(gif)|(png)|(jpeg)$/) ){
document.getElementById("msg").innerHTML = "Extension debe ser jpg, jpeg, gif o png";
OK = false;
}
return OK;
}
y los envio a la pagina que los procesa asi:
Código HTML:
<form method="post" name= "frm" action="insertar.php" enctype="multipart/form-data" onsubmit="return validarForm(this); validar(); ">
E-mail
<br />
<INPUT TYPE= "TEXT" NAME="mail" />
<br />
Nombre de usuario
<br />
<INPUT TYPE= "TEXT" NAME="usuario" />
<br />
Contraseña
<br />
<INPUT TYPE= "TEXT" NAME="contrasena" />
<br />
Repita Contraseña
<br />
<INPUT TYPE= "TEXT" NAME="repcontrasena" />
<br />
<br />
<SPAN STYLE="position:absolute; top:1220px; left:-600px;" >
<input type="file" name="foto1" id="foto1" >
Foto Perfil
</SPAN>
<SPAN STYLE="position:absolute; top:1395px; left:-600px;" >
<input type="submit" value = "REGISTRAR PERFIL" >
</form>
</SPAN>
como ven me funciona la primera validacion pero la de las fotos no, y quisiera que funcionaran las 2 con un onsubmit, no se como integrarlas.