Foros del Web » Programando para Internet » Javascript »

Si desactivo JavaScript, mi formulario ya no pasa por la validacion

Estas en el tema de Si desactivo JavaScript, mi formulario ya no pasa por la validacion en el foro de Javascript en Foros del Web. Tengo un pequeño formulario con solo un campo de texto y un boton, se supone que debo ingresar un texto y al presionar el boton ...
  #1 (permalink)  
Antiguo 17/08/2011, 16:44
 
Fecha de Ingreso: julio-2011
Mensajes: 20
Antigüedad: 12 años, 9 meses
Puntos: 2
Si desactivo JavaScript, mi formulario ya no pasa por la validacion

Tengo un pequeño formulario con solo un campo de texto y un boton, se supone que debo ingresar un texto y al presionar el boton llama a una funcion javascript para validar que el campo de texto no esté vacio, si es asi entonces me redirecciona a youtube, de lo contrario no lo hace y me muestra una alerta.

PERO, tengo un problema, SI ALGUN USUARIO DESACTIVA JAVASCRIPT DE SU NAVEGADOR, entonces el proceso de validacion pasaria de largo y entraria a youtube de todos modos.

este es mi codigo:

Código PHP:
<html>
<
head>
<
script type="text/javascript">
    function 
validar(){
        if(
document.getElementById("texto").value==""){
            
alert("ERROR, Ingrese un texto");
            return 
false;
        }else{
            return 
true;
        }
    }
</script>
</head>

<body>
<form id="form1" method="post" action="http://www.youtube.com" onsubmit="return validar()">
    <input type="text" name="texto" id="texto"><br>
    <input type="submit" value="ENTRAR">
</form>
</body>
</html> 
¿como puedo evitar esto?.
Me estoy iniciando en la programacion web, y si a futuro creo formularios, no quiero que tengan ese tipo de vulnerabilidad al momento de desactivar javascript.

espero que me ayuden, no me digan que lo haga con PHP en lado de servidor, ya se que es mas seguro, pero en este momento necesito hacerlo en el lado cliente, ademas varias webs validan con javascript.
  #2 (permalink)  
Antiguo 17/08/2011, 16:48
Avatar de IsaBelM
Colaborador
 
Fecha de Ingreso: junio-2008
Mensajes: 5.032
Antigüedad: 15 años, 10 meses
Puntos: 1012
Respuesta: Si desactivo JavaScript, mi formulario ya no pasa por la validacion

no hay nada que puedas hacer. si el usuario tiene desactivado js, se acabó el invento. y como no quieres que te diga que la verdadera validación se hace del lado del servidor, no te lo digo
  #3 (permalink)  
Antiguo 17/08/2011, 17:18
Avatar de _cronos2
Colaborador
 
Fecha de Ingreso: junio-2010
Mensajes: 2.062
Antigüedad: 13 años, 10 meses
Puntos: 310
Respuesta: Si desactivo JavaScript, mi formulario ya no pasa por la validacion

Cita:
Iniciado por 3dw4rd
PERO, tengo un problema, SI ALGUN USUARIO DESACTIVA JAVASCRIPT DE SU NAVEGADOR, entonces el proceso de validacion pasaria de largo y entraria a youtube de todos modos.
http://www.youtube.com/watch?v=XRm4xEd67hU
No ahora en serio, si JS está desactivado, no puedes hacer una validación JS, así que o la haces en el servidor u obligas a tener JS activado creando/mostrando el formulario con JS.
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
  #4 (permalink)  
Antiguo 17/08/2011, 18:00
 
Fecha de Ingreso: agosto-2010
Ubicación: Tenerife
Mensajes: 893
Antigüedad: 13 años, 8 meses
Puntos: 202
Respuesta: Si desactivo JavaScript, mi formulario ya no pasa por la validacion

¿Y por qué no validas ADEMÁS con un lenguaje del lado del servidor como php y no sólo del lado del cliente?

De hecho es lo más correcto hacerlo desde los dos lados (aunque yo me quedo con el del servidor por el mismo motivo). Aún si desactivan javascript el formulario podría valisarse desde php y eso no hay forma de evitarlo.
__________________
Pensaba que internet era una gran biblioteca de sabiduría, hasta que comprendí que un libro no puede tener mil páginas llenas de faltas de ortografía... :(
  #5 (permalink)  
Antiguo 17/08/2011, 22:12
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: Si desactivo JavaScript, mi formulario ya no pasa por la validacion

buenas @3dw4rd,
comparto la misma opinión que los demás compañeros. una vez javascript desactivado, tendrías que recurrir a otras soluciones mientras estén en las capacidades de las tecnologías que empleas. por ejemplo, en html no puedes controlar ese aspecto pero con lenguaje de servidor tienes la posibilidad. ahora bien, otra cosa que puedes hacer pero es contraproducente es obligar al visitante activar javascript. y para lograrlo, simplemente tienes que crear el componente del documento (por ejemplo, todo o al menos gran parte en lo concerniente al formulario) con javascript. por ejemplo, especificar el valor del atributo action con javascript. es contraproducente porque estas obligando al usuario, no necesariamente activar javascript, sino posiblemente cambiar de navegador.

__________________
la maldad es una virtud humana,
y la espiritualidad es la lucha del hombre contra su maldad.
  #6 (permalink)  
Antiguo 18/08/2011, 03:49
Avatar de yournightmare86  
Fecha de Ingreso: abril-2006
Ubicación: Madrid
Mensajes: 875
Antigüedad: 18 años
Puntos: 9
Respuesta: Si desactivo JavaScript, mi formulario ya no pasa por la validacion

Lo más correcto es lo que te comentan, usar un lenguaje del lado del servidor. No obstante, puedes hacer algo menos elegante, y redirigir a una página determinada a todos los usuarios que tengan javascript desactivado mediante la etiqueta <noscript>

Código:
<noscript>
	<meta http-equiv="refresh" content="0;url=http://www.tuweb.com/pagina.html">
</noscript>
Y en esa página indicar que es necesario tener javascript activado.

Saludos.
  #7 (permalink)  
Antiguo 18/08/2011, 05:16
Avatar de _cronos2
Colaborador
 
Fecha de Ingreso: junio-2010
Mensajes: 2.062
Antigüedad: 13 años, 10 meses
Puntos: 310
Respuesta: Si desactivo JavaScript, mi formulario ya no pasa por la validacion

Cita:
Iniciado por zerokilled
es contraproducente porque estas obligando al usuario, no necesariamente activar javascript, sino posiblemente cambiar de navegador.
¿Todavía existen navegadores sin soporte para JS?
Por cierto, se me encendió la bombilla
No es "seguro", pero tampoco te va a ocasionar problemas con los browsers: usar un input url. Sí, es HTML5, pero afortunadamente los inputs que no saben qué son los convierte a text, así que no tendrías problemas.
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
  #8 (permalink)  
Antiguo 18/08/2011, 09:40
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: Si desactivo JavaScript, mi formulario ya no pasa por la validacion

hay quienes, aunque es una gran minoria, que navegan la web con un navegador tremendamente obsoleto. si buscas los usuarios, posiblemente son del tipo geek. hubo un tiempo que use Lynx solo para tener una idea de como google ve nuestras paginas, y de hecho, fue parte de lo que me motivo a navegar sin javascript. y sin irnos tan lejos, aunque no lo he usado, según Amaya no tiene soporte para javascript. http://en.wikipedia.org/wiki/Compari...Script_support
__________________
la maldad es una virtud humana,
y la espiritualidad es la lucha del hombre contra su maldad.
  #9 (permalink)  
Antiguo 18/08/2011, 17:04
 
Fecha de Ingreso: agosto-2010
Ubicación: Tenerife
Mensajes: 893
Antigüedad: 13 años, 8 meses
Puntos: 202
Respuesta: Si desactivo JavaScript, mi formulario ya no pasa por la validacion

No es sólo que haya usuarios con navegadores obsoletos, es que los actuales también disponen la opción para desactivar javascript, por lo que validar sólo con JS un formulario puede hacer vulnerable la página web a ataques.
__________________
Pensaba que internet era una gran biblioteca de sabiduría, hasta que comprendí que un libro no puede tener mil páginas llenas de faltas de ortografía... :(

Etiquetas: desactivado, vulnerabilidad, validar
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:10.