Foros del Web » Programando para Internet » Javascript »

validar textarea muy largo

Estas en el tema de validar textarea muy largo en el foro de Javascript en Foros del Web. Buenas! A ver si alguien me puede aconsejar sobre esto: Tengo un formulario con un textarea que puede contener como maximo 1600000 caracteres. En la ...
  #1 (permalink)  
Antiguo 02/12/2010, 15:05
 
Fecha de Ingreso: septiembre-2010
Mensajes: 34
Antigüedad: 13 años, 7 meses
Puntos: 0
Pregunta validar textarea muy largo

Buenas!
A ver si alguien me puede aconsejar sobre esto:
Tengo un formulario con un textarea que puede contener como maximo 1600000 caracteres. En la base de datos mySql esta definido como mediumtext. Este campo recoge un resumen del historial médico de un paciente, por esto es tan largo y debe ser editable.
La duda que tengo, es cual seria la mejor manera de validar este campo?
No se demasiado del tema, hasta ahora validé todos los campos con expresiones regulares, y con este se queda colgado el browser. Deduzco que es por el tamaño, ya que cambiandolo a 50 no se cuelga.
Hay alguna otra forma de validar,los datos de entrada??
Alguna sugerencia??
Muchas gracias y saludos!
  #2 (permalink)  
Antiguo 02/12/2010, 16:23
Avatar de malakian  
Fecha de Ingreso: septiembre-2010
Ubicación: $malakian->Colombia();
Mensajes: 469
Antigüedad: 13 años, 7 meses
Puntos: 45
Respuesta: validar textarea muy largo

que tal esto..
Código Javascript:
Ver original
  1. if (document.miformulario.areatexto.value.length > 160000){
  2.   alert('no puede escribir mas de 1600000 caracteres');
  3. }
__________________
Guitar Loco, Desarrollador Web PHP
Sigueme: @jose1x
  #3 (permalink)  
Antiguo 02/12/2010, 16:50
 
Fecha de Ingreso: septiembre-2010
Mensajes: 34
Antigüedad: 13 años, 7 meses
Puntos: 0
Respuesta: validar textarea muy largo

Gracias por la respuesta, y disculpad creo que no me explique demasiado bien, a lo que me referia con validar és que si deberia comprobar que no se introduzcan caracteres tipo % : / ... que no sean alfanumericos, para evitar la entrada de 'codigo malicioso' o si no es necesario y puedo guardar el campo tal cual.
gracias!
  #4 (permalink)  
Antiguo 02/12/2010, 17:11
Avatar de _cronos2
Colaborador
 
Fecha de Ingreso: junio-2010
Mensajes: 2.062
Antigüedad: 13 años, 10 meses
Puntos: 310
Respuesta: validar textarea muy largo

Pues aunque no me gusta esta solución deberías usar eventos, y no permitir escribir ciertos carácteres.
Saludos (:
__________________
" Getting older’s not been on my plans
but it’s never late, it’s never late enough for me to stay. "
Cigarettes - Russian Red
  #5 (permalink)  
Antiguo 03/12/2010, 00:05
Avatar de zerokilled
Javascripter
 
Fecha de Ingreso: abril-2009
Ubicación: Isla del Encanto, La Borinqueña [+>==]
Mensajes: 8.050
Antigüedad: 15 años
Puntos: 1485
Respuesta: validar textarea muy largo

en primera instancia, 1.6 mega de caracteres me parece demasiado exagerado para estar enviandolo de ida y vuelta. la mejor forma de manejarlo habria que determinarlo de acuerdo a la estructura y formato del reporte. ¿quizas no sea mas facil si divides el historial por secciones? de todos modos, supongo que se te cuelga por el tiempo que demora en analizar en contenido. ¿no sera por el algoritmo? quiero decir, la forma en que estes validando, por ejemplo un bucle para iterar cada caracter. aunque no puedo decirlo plenamente, pero confio en que las expresiones regulares son mucho mas eficaz frente a otras tecnicas de deteccion. en resumen, no veo practico enviar aprox 1.5 mega de caracteres.
__________________
la maldad es una virtud humana,
y la espiritualidad es la lucha del hombre contra su maldad.
  #6 (permalink)  
Antiguo 03/12/2010, 02:17
 
Fecha de Ingreso: septiembre-2010
Mensajes: 34
Antigüedad: 13 años, 7 meses
Puntos: 0
Respuesta: validar textarea muy largo

Muchas gracias a todos por las respuestas!
Creo que se cuelga por el tiempo de analisis, pero no hay bucle alguno, solo una expresión regular:
Código:
if (cadena.match(/^[\a-zA-Z'üïñçÜÏÑÇàèìòùáéíóúÀÈÌÒÙÁÉÍÓÚ0-9]+([.,'\+\-\(\)\*\?\¿\!"%\sa-zA-ZüïñçÜÏÑÇàèìòùáéíóúÀÈÌÒÙÁÉÍÓÚ-]*)*[.,'\+\-\(\)\*\?\¿\!"%a-zA-ZüïñçÜÏÑÇàèìòùáéíóúÀÈÌÒÙÁÉÍÓÚ]$/ )){
		return true;  
	}else{
		return false;
	}
Que funciona bien con textos cortos.
Finalmente intentaré recortar el tamaño del campo a uno mas razonable y optaré por dividir en secciones.
Saludos!
  #7 (permalink)  
Antiguo 03/12/2010, 02:43
Avatar de zerokilled
Javascripter
 
Fecha de Ingreso: abril-2009
Ubicación: Isla del Encanto, La Borinqueña [+>==]
Mensajes: 8.050
Antigüedad: 15 años
Puntos: 1485
Respuesta: validar textarea muy largo

un detalle que has omitido, ¿que es lo que se supone estas validando? o dicho de otra forma, ¿que es lo que consideras un contenido valido? pregunto porque parece que la expresion es media rebuscada. por otro lado, opino que deberias usar la funcion test en lugar de match porque match genera un array el cual le toma tiempo al navegador generar todos los elementos.
__________________
la maldad es una virtud humana,
y la espiritualidad es la lucha del hombre contra su maldad.
  #8 (permalink)  
Antiguo 03/12/2010, 03:26
 
Fecha de Ingreso: septiembre-2010
Mensajes: 34
Antigüedad: 13 años, 7 meses
Puntos: 0
Respuesta: validar textarea muy largo

Si tienes razon, lo he cambiado y ahora uso test y ademas, la expresion regular no era completa y me estaba dando problemas, la cambié por esta otra.
function campEsCadenaAmpliada(cadena){
return (cadena.test(/^[a-zA-Z0-9üïñçÜÏÑÇàèìòùáéíóúÀÈÌÒÙÁÉÍÓÚ\s,.'+-?¿!¡()·%€ºª]*$/
}
Solo se permiten estos caracteres: \s,.'+-?¿!¡()·%€ºª ademas de los alfanumericos.
saludos y gracias!
  #9 (permalink)  
Antiguo 03/12/2010, 03:31
 
Fecha de Ingreso: septiembre-2010
Mensajes: 34
Antigüedad: 13 años, 7 meses
Puntos: 0
Respuesta: validar textarea muy largo

Perdon, en realidad la función seria así, antes escribí aquí directamente sin probar.
function campEsCadenaAmpliada(cadena){
regex=/^[a-zA-Z0-9üïñçÜÏÑÇàèìòùáéíóúÀÈÌÒÙÁÉÍÓÚ\s,.'+-?¿!¡()·%€ºª]*$/;
return(regex.test(cadena));
}
  #10 (permalink)  
Antiguo 31/03/2011, 06:52
 
Fecha de Ingreso: febrero-2011
Mensajes: 10
Antigüedad: 13 años, 2 meses
Puntos: 0
Respuesta: validar textarea muy largo

Buenas!

He leido tu post y visto que envias 160000 caracteres. Yo tengo un problema con los caracteres que envio al servidor y acabo de colgar un post sobre dicho problema.

Podrias hecharle un vistazo y explicarme como has hecho para enviar tanta informacion?
A mi con 7000-8000 no envia nada...

Aqui dejo el link:

http://www.forosdelweb.com/f4/problema-envio-informacion-demasiado-extensa-900083/

Etiquetas: largo, textarea
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 21:09.