Foros del Web » Programando para Internet » ASP Clásico »

Problema validación al insertar en base datos

Estas en el tema de Problema validación al insertar en base datos en el foro de ASP Clásico en Foros del Web. Hola, tengo un formulario con el que inserto datos en una BD. El formulario tiene un javascript que lo valida y además en la BD ...
  #1 (permalink)  
Antiguo 13/01/2006, 03:51
 
Fecha de Ingreso: enero-2006
Mensajes: 30
Antigüedad: 19 años, 4 meses
Puntos: 0
Problema validación al insertar en base datos

Hola, tengo un formulario con el que inserto datos en una BD. El formulario tiene un javascript que lo valida y además en la BD también tengo reglas de validación. El problema es que no consigo insertar los datos (correctos) a no ser que elimine las reglas de validación en la BD. Las reglas de validación que tengo en la BD son del tipo: "Como #####", ésta última por ejemplo para un código postal.
  #2 (permalink)  
Antiguo 13/01/2006, 10:40
Avatar de ElAprendiz  
Fecha de Ingreso: enero-2002
Ubicación: Maipu, Chile
Mensajes: 3.706
Antigüedad: 23 años, 3 meses
Puntos: 2
mejor pon el codigo
__________________
Manual de ASP Avanzado ;-)
  #3 (permalink)  
Antiguo 13/01/2006, 13:48
 
Fecha de Ingreso: enero-2006
Mensajes: 30
Antigüedad: 19 años, 4 meses
Puntos: 0
Hola. El código javascript de validación es correcto ya que además de validar correctamente, los datos del formulario se insertan sin problemas en la base de datos "desnuda" de Access (sin reglas de validación).
Pero cuando en Access le pongo reglas de validación a la BD, ya no se pueden insertar los datos, apareciendo en el mensaje de error del navegador justamente la frase que puse en Access, para la regla de validación.
  #4 (permalink)  
Antiguo 13/01/2006, 15:54
 
Fecha de Ingreso: enero-2006
Mensajes: 30
Antigüedad: 19 años, 4 meses
Puntos: 0
Acabo de hacer otra prueba y sigue ocurriendo lo mismo.
He creado un pequeño ejemplo (sin validar con javascript):
- Una base de datos access consistente en una tabla "usuarios" con 2 campos: nombre y email.
- Un pequeño formulario: nombre + email.
Y ocurre lo mismo, si en el Access pongo regla de validacion para el campo email, los datos no se envian y aparece en el navegador el mensaje de error de Access.
Si NO pongo regla de validación, los datos se insertan correctamente.
  #5 (permalink)  
Antiguo 13/01/2006, 15:58
 
Fecha de Ingreso: enero-2006
Mensajes: 30
Antigüedad: 19 años, 4 meses
Puntos: 0
El código html es el siguiente:

<html>
<head>
<title>insertar datos en BD</title>
</head>

<body>

<form method="post" name="formul" id="formul" action="introduce.asp" >
nombre: <input type="text" name="nombre" id="nombre" size="20"/> <br/>
email: <input type="text" name="email" id="email" size="50" /> <br/>

<input type="submit" value="inserta" />
</form>

</body>
</html>


El código ASP es el siguiente:

<%@ language="JavaScript" %>

<html>
<head>
<title>Untitled</title>
</head>
<body>

<%


var conexion = Server.CreateObject("ADODB.Connection");
conexion.Open("Provider=Microsoft.Jet.OLEDB.4.0;"+ "Data Source=" + Server.MapPath("bd/usuarios.mdb"));

var nom = Request.Form("nombre");
var eml = Request.Form("email");
var sql = "INSERT INTO usuarios(nombre,email) VALUES('";
sql +=nom+"','"+eml+"');";
try{
conexion.Execute(sql);

}catch(e){
Response.Write("Error conexion: "+e.message);
Response.End();
}

conexion.Close();
conexion = null;

%>

<a href="index.html">volver<a/>

</body>
</html>
  #6 (permalink)  
Antiguo 13/01/2006, 15:59
Avatar de ElAprendiz  
Fecha de Ingreso: enero-2002
Ubicación: Maipu, Chile
Mensajes: 3.706
Antigüedad: 23 años, 3 meses
Puntos: 2
en lo personal nunca valido desde access ya que siempre existe la posibilidad de que se ingrese un tipo de dato erroneo y por consiguiente error en el navegador. trata de validar desde ASP.
__________________
Manual de ASP Avanzado ;-)
  #7 (permalink)  
Antiguo 13/01/2006, 18:16
 
Fecha de Ingreso: enero-2006
Mensajes: 30
Antigüedad: 19 años, 4 meses
Puntos: 0
De acuerdo. Entonces valido con JavaScript en cliente y si falla valido con ASP en servidor. (en el caso de que por ejemplo JavaScript no esté habilitado en el cliente).Pero, ¿cómo se hace esto?

La validación en JavaScript me la sé de memoria. Pero lo de validar con ASP no lo tengo muy claro. ¿Valido con ASP si falló JavaScript? o ¿los datos siempre se validan con ASP después de validarlos con javascript en cliente? ¿Y si además quiero que la validación en ASP se haga en la misma página (para los mensajes de aviso)?
A todo esto, el lenguaje de script usando en ASP es javascript.
  #8 (permalink)  
Antiguo 13/01/2006, 21:07
Avatar de ElAprendiz  
Fecha de Ingreso: enero-2002
Ubicación: Maipu, Chile
Mensajes: 3.706
Antigüedad: 23 años, 3 meses
Puntos: 2
Cita:
¿Valido con ASP si falló JavaScript?
claro, puede que algun cliente deshabilite el Javascript a proposito


Cita:
¿los datos siempre se validan con ASP después de validarlos con javascript en cliente?
no siempre, pero recuerda que el validar del lado del cliente es para hacer la navegacion mas rapida, al no tener que enviar el formulario y tener que esperar un respuesta del servidor.

Cita:
¿Y si además quiero que la validación en ASP se haga en la misma página (para los mensajes de aviso)?
una vez que envias el formulario no puedes enviarle un mensaje al cliente desde ASP, aunque uses Jscript como lenguaje.

Como te dije si lo haces con ASP tienes que esperar la respuesta del servidor
__________________
Manual de ASP Avanzado ;-)
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 10:02.