como integro 2 funciones en un solo onsubmit
Publicado por Gabriel (8 intervenciones) el 20/09/2012 00:20:39
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 :
y el codigo de validacion de las fotos:
y los envio a la pagina que los procesa asi:
como ven la primera validacion me funciona, pero no la segunda y lo que quisiera es que el usuario tambien recibiera un mensaje de error si la extension de la foto no es la adecuada y que extensiones usar antes de ser mandadas correctamente a mi b/d, todo con un onsubmit.
codigo de validacion de datos del usuario :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
function validarForm(formulario) {
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);
}
return true; //Si ha llegado hasta aquí, es que todo es correcto
}
y el codigo de validacion de las fotos:
1
2
3
4
5
6
7
8
9
10
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:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
<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 la primera validacion me funciona, pero no la segunda y lo que quisiera es que el usuario tambien recibiera un mensaje de error si la extension de la foto no es la adecuada y que extensiones usar antes de ser mandadas correctamente a mi b/d, todo con un onsubmit.
Valora esta pregunta


0