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

Problema con almacenamiento memo

Estas en el tema de Problema con almacenamiento memo en el foro de ASP Clásico en Foros del Web. Hola que tal... Bueno, paso a comentaros un problemilla que tengo en una sección de postales virtuales que he hecho: 1.- Tengo una página llamada ...
  #1 (permalink)  
Antiguo 24/10/2005, 02:49
Avatar de 3pies
Colaborador
 
Fecha de Ingreso: diciembre-2003
Ubicación: Desde una destilería
Mensajes: 2.584
Antigüedad: 20 años, 6 meses
Puntos: 144
Problema con almacenamiento memo

Hola que tal...

Bueno, paso a comentaros un problemilla que tengo en una sección de postales virtuales que he hecho:

1.- Tengo una página llamada "postales.asp" donde el usuario selecciona a través de un select distintas temáticas de postales. Si pulsa un botón para seleccionar un tema en concreto, pues se le muestran las postales de esa temática, y abajo un formulario con los datos a rellenar, del remitente y destinatario de la postal, y además, un textarea donde el usuario puede añadir algún comentario adicional. El textarea lo tengo limitado por javascript (y luego más adelante, también por asp, a 500 caracteres como máximo).

2.- Una vez rellenado el formulario (previa selección de la postal que desea enviar), se le muestra la postal en grande, junto con los datos del formulario en una página llamada "confirmarpostal.asp", para que el usuario decida si le gusta o no la postal, y o bien vuelva atrás y la cambie (o cambie los datos del formulario), o bien la envíe al destinatario si es de su agrado. Aquí, si el comentario tiene por ejemplo el tope de 500 caracteres, pues se muestra correctamente (se muestran esos 500 caracteres).

3.- Cuando se envía la postal, si hay errores, evidentemente no se envía la postal y además no se graba nada en la BD, y si no hay errores, se envía y a continuación se graban los datos en una BD (página "postalenviada.asp"). En la BD hay un campo llamado "comentarios" que es de tipo memo.

El problema es el siguiente:
El textarea lo paso de postales.asp a confirmarpostal.asp, a través del formulario y se me muestran correctamente hasta 500 caracteres (limitado con javascript, y no se pueden meter más de 500). En esa página de confirmación de la postal, hay un formulario oculto, con campos hidden, que recoge los datos del form anterior que ha enviado el usuario a esta página (confirmarpostal.asp). Cuando se confirma la postal, y se envía, al almacenarla en la BD, es cuando me surge el problema... Si el input de texto oculto del comentario (el que recojo del textarea original) tiene más de 251 caracteres, solo me graba en la BD esos 251 caracteres (los he contado en Word, y veo que solo graba en la BD los primeros 251 caracteres), cuando lo que tengo es lo siguiente (en la página "postalenviada.asp"):

Código:
'Cuando recojo los datos del form oculto de "confirmarpostal.asp"
comentarios=request.form("comentarios")
Código:
'Una vez se envía la postal, almaceno los datos, entre ellos este
'(la función CortarCadenaLarga no afecta a esa limitación de 251 caracteres,
'pues la uso sin problemas en un libro de visitas)
if comentarios<>"" then rs.Fields("comentarios")=CortarCadenaLarga(left(comentarios,500))
¿Se os ocurre donde puede estar el error?.

Gracias por vuestra paciencia y perdón por el rollete.

Editado: Por ningún lado, y en ninguna página tengo nada del tipo: comentarios=left(comentarios,251), ya que solo es en postalenviada.asp, donde tengo esa limitación de 500 caracteres, para almacenarlos en la BD.

Última edición por 3pies; 24/10/2005 a las 02:58
  #2 (permalink)  
Antiguo 24/10/2005, 04:53
Avatar de ludovico2000  
Fecha de Ingreso: noviembre-2003
Ubicación: Bizkaia
Mensajes: 1.315
Antigüedad: 20 años, 7 meses
Puntos: 2
Puede que esa limitación no esté en el asp, sino en la propia base de datos
  #3 (permalink)  
Antiguo 24/10/2005, 05:01
Avatar de 3pies
Colaborador
 
Fecha de Ingreso: diciembre-2003
Ubicación: Desde una destilería
Mensajes: 2.584
Antigüedad: 20 años, 6 meses
Puntos: 144
Gracias ludovico2000, pero el campo es memo (como ponía en el primer post).

Acabo de hacer una prueba, mandando una postal yo, y a mí me funciona (como debería ser, pues me acabo de autoenviar una postal, y me ha almacenado los 390 caracteres que tenía el comentario), pero por lo que veo, al resto de usuarios, cuando ponen un comentario a la postal, solo se les almacenan los primeros 251 caracteres. He usado el mismo servidor en ambos casos.

¡¡¡Qué cosas más raras pasan!!!. La verdad es que no sé ya por donde pillarlo.

Editado: Acabo de darme cuenta de una cosa. En la BD hay 6 postales que aparentemente el texto excedía de 251 caracteres, pero solo se han almacenado esos 251 (la frase está cortada por mitad de una palabra, así que entiendo que el texto era de mayor longitud). En cambio en otra postal (solo en una), me ha almacenado 176 caracteres, estando cortada también la frase. ¡¡¡Alucinante!!!. Porque no creo que los que mandan postales sean tan torpes como para hacer eso intencionadamente para que me vuelva loco buscando un error, jajajajaja (acabo de autoenviarme una segunda postal de más de 290 caracteres, y en la BD se almacena como Dios manda, completa).

Última edición por 3pies; 24/10/2005 a las 05:15
  #4 (permalink)  
Antiguo 24/10/2005, 09:46
Avatar de AlZuwaga
Colaborador
 
Fecha de Ingreso: febrero-2001
Ubicación: 34.517 S, 58.500 O
Mensajes: 14.550
Antigüedad: 23 años, 3 meses
Puntos: 535
Será que "alguien" está usando algún navegador que tenga algunos problemillas o limitaciones en cuanto al largo de los campos de formulario y éste lo corte automáticamente? (aunque siempre lo cortaría en la misma cantidad de caracteres )
__________________
...___...
  #5 (permalink)  
Antiguo 24/10/2005, 11:26
Avatar de 3pies
Colaborador
 
Fecha de Ingreso: diciembre-2003
Ubicación: Desde una destilería
Mensajes: 2.584
Antigüedad: 20 años, 6 meses
Puntos: 144
Gracias A_Z, es una posibilidad, pues con Opera he visto que al insertar un emoticon (con javascript) en un libro de visitas, manda el mensaje al libro, sin terminar el mensaje que el usuario quería escribir (lo manda justo al insertar el emoticon). Esto me lo dijo un usuario por email.

Puede que sea una posibilidad, la que dices, aunque a algunos usuarios los conozco, y estoy seguro que no saben que existe vida después de IE, jajajajaja.
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 17:20.