Ver Mensaje Individual
  #1 (permalink)  
Antiguo 20/01/2008, 08:55
Mirry
 
Fecha de Ingreso: enero-2008
Mensajes: 9
Antigüedad: 16 años, 3 meses
Puntos: 0
problema validacion en servidor

Hola, tengo un pequeño gran problema. Estoy haciendo una pagina web para la facultad, y tengo que validarla en cliente y servidor. Para la validacion en cliente no tengo ningun problema, y para los caracteres alfanumericos en servidor tampoco, sin embargo, cuando kiero validar el telefono , el codigo postal o algun otro campo numerico , aparecen errores, aunque los campos esten dentro de la expresion regular de la validacion.
ahi os dejo algo del codigo usado , a ver si me podeis ayudar un poco.
Gracias de antemano


function valida(f) {
var errores="";
var er_nombre = /^([a-z]|[A-Z]|á|é|í|ó|ú|ñ|ü|\s|\.|-)+$/; //letras, '.' y '-' o vacio
var er_apellidos = /^([a-z]|[A-Z]|á|é|í|ó|ú|ñ|ü|\s|\.|-)+$/;
var er_dni = /^\d{8}$/; //numeros
var er_letra = /^([A-Z]|[a-z])$/;
var er_telefono = /^\d{8,9}$/; //numeros
var er_pass = /^(\w{6,})$/;
var er_email = /^[\w-\.]+@([\w-]+\.)+[\w-]{2,4}$/;
var er_CP = /^\d{5}$/;

if(f.nombre.value == "") {
errores+= "El campo nombre no puede estar vacío.";
}
else if(!er_nombre.test(f.nombre.value)) {
errores+="</br>El campo nombre contiene caracteres no permitidos. Solo puede introducir letras,'.' y '-'. ";
}

if(f.apellidos.value == "") {
errores+="</br>El campo apellidos no puede estar vacío.";

}
else if (!er_apellidos.test(f.apellidos.value)) {
errores+="</br>El campo apellidos contiene caracteres no permitidos. Solo puede introducir letras,'.' y '-'. ";
}



if(f.telefono.value == "") {
errores+="</br>El campo telefono no puede estar vacio";
}

else if (!er_telefono.test(f.telefono.value)) {
errores+="</br>El campo telefono contiene caracteres no permitidos. Introduzca entre 8 y 9 numeros.";
}


return errores;

}



la expresion regular creo que esta bien, os pongo tambien el archivo asp, donde supongo que estara el error;


<% @language="JavaScript" %>
<script language="JavaScript" src="ProcesamientoFormulario.js" runat="server"></script>

<%
var formulario = Session("formulario");
var errores = Session("errores");

if( formulario && errores ){
formulario.nombre = Request.Form("nombre").Item;
formulario.apellidos = Request.Form("apellidos").Item;
formulario.telefono = Request.Form("telefono").Item;

errores = valida(formulario);

if(errores.length > 0){
Session("formulario") = formulario;
Session("errores") = errores;
Response.Redirect( "a.asp" );
}
else{
Response.Redirect("exito.asp");
}
}else{
Response.Redirect("c.asp");
}
%>


si elimino el campo telefono de la funcion valida no pasa nada, pero si lo meto, aunque meta el telefono bien, se me va a "a.asp"

bueno eso es todo

gracias!