Validar formulario

126 views
Skip to first unread message

Félix Sánchez Rodríguez

unread,
Nov 2, 2008, 1:08:27 AM11/2/08
to JScriptWeb
Hola a todos:

Estoy haciendo un sitio web en PHP y necesito validar varios formularios. Es
una validación relativamente sencilla, solo necesito que los campos de texto
contengan algo. Ya lo he hecho del lado del servidor pero necesito hacerlo
del lado del cliente. Ya sé que puedo hacerlo con Javascript, pero no sé
como. En definitiva, lo que necesito hacer es lo siguiente: cuando presione
el botón "submit" debe validar los campos de texto del formulario en que se
encuentra. Si alguno no contiene nada, al lado de ese se escribirá un texto
que yo especifique, si en definitiva alguno era inválido, o sea, no contenía
nada, no se hará el post. En realidad, ya tengo algo hecho, sé como escribir
el texto al lado utilizando un div, pero no sé ni como borrarlo cuando esté
bien, ni tampoco sé detener el post. Espero que puedan ayudarme.



Comanche

unread,
Nov 12, 2008, 6:31:22 AM11/12/08
to desarrollo web
La verdad es que hay mil formas de validar un formulario del lado del
cliente utilizando javascript (es importante que también se valide del
lado del servidor, porque también es muy fácil saltarse cualquier
seguridad que pongas con javascript), yo te voy a poner lo que suelo
hacer yo.

En principio, en el formulario, sólo tienes que indicarle que al
"submitir" devuelva verdadero o falso, según la función que valida el
propio formulario. Si esta función devuelve verdadero, se hará es
submit, si devuelve falso no hará nada.

Ejemplo:
<form ... onsubmit="javascript: return(validarFormulario());">
...
</form>

Después, en la función validarFormulario() haces todas las
comprobaciones que quieras de cada uno de los campos, ocultas o
muestras mensajes, etc. Yo lo que suelo hacer es resaltar de otro
color los campos donde se han producido los errores y mostrar un Alert
con el detalle de los errores producidos. Para resaltar los campos con
error, creo otra clase en el fichero CSS y se la asigno al campo
erróneo.

Ejemplo:
function validarFormulario() {
var campoNombre;
var errores = '';
var claseError = 'nombre de la clase';

campoNombre = document.getElementById('nombre');
if (allTrim(campoNombre.value) == '') {
errores += 'Nombre: es un campo obligatorio\n';
campoNombre.className = claseError;
}
//A partir de aquí repites la misma operación con cada uno de los
campos que quieras validar

//Al final comprobamos si se han producido errores y mostramos el
alert, retornando verdadero si errores está vacío o falso en caso
contrario
if (errores)
alert('Se han producido los siguientes errores:\n' + errores);
return(errores == '');
}

Espero haberte ayudado.

Saludos.

Félix Sánchez Rodríguez wrote:
> Hola a todos:
>
> Estoy haciendo un sitio web en PHP y necesito validar varios formularios. Es
> una validaci�n relativamente sencilla, solo necesito que los campos de texto
> contengan algo. Ya lo he hecho del lado del servidor pero necesito hacerlo
> del lado del cliente. Ya s� que puedo hacerlo con Javascript, pero no s�
> como. En definitiva, lo que necesito hacer es lo siguiente: cuando presione
> el bot�n "submit" debe validar los campos de texto del formulario en que se
> encuentra. Si alguno no contiene nada, al lado de ese se escribir� un texto
> que yo especifique, si en definitiva alguno era inv�lido, o sea, no conten�a
> nada, no se har� el post. En realidad, ya tengo algo hecho, s� como escribir
> el texto al lado utilizando un div, pero no s� ni como borrarlo cuando est�
> bien, ni tampoco s� detener el post. Espero que puedan ayudarme.

Gerardo Scolari (Yahoo)

unread,
Nov 12, 2008, 1:47:21 PM11/12/08
to desarro...@googlegroups.com
Hola.
Sabe alguien que programa puedo usar para poner una marca de agua cruzada a
una foto para que no la puedan imprimir?, y que trabaje de varias fotos a la
vez?.
Gracias!!!!
Gerardo.

Marco Antonio

unread,
Nov 12, 2008, 4:52:11 PM11/12/08
to desarrollo web
Bueno, soy nuevo por aquí y pues si quieres algo rápido y no te de
tantas trabas utiliza la herramienta integrada en Dreamweaver; Inserta
campos y validados sencillamente con las opciones que te da, ya que si
quieres algo mas complejo checa el plugin de JQuery que también es
sencillo pero requiere algo de programación.

http://bassistance.de/jquery-plugins/jquery-plugin-validation/


On 2 nov, 00:08, Félix Sánchez Rodríguez <fesa...@ciego.cult.cu>
wrote:

Pablo Pazos

unread,
Nov 18, 2008, 8:38:24 AM11/18/08
to desarro...@googlegroups.com
Hola,

La primer opción sería editar la misma foto, supongo que eso es lo que no quieres hacer.

La segunda opción es con un poco de HTML y CSS. La idea es poner una DIV del mismo tamaño de la imagen y en la misma posición de la imagen pero sobre la imagen. La imagen de la marca de agua deberá tener el fondo transparente para que la imagen debajo se vea correctamente, así que como parca de agua te recomiendo un GIF con fondo transparente o un PNG con alpha 0.

El código sería algo así:

<div style="position:absolute; z-index:10; top:Tpx; left:Lpx;"><img src="marcaDeAgua.gif" width="W" height="H" /></div>

position absolute, hace que podamos aplicar el z-index.
el z-index es lo que deja poner esta div delante de la imagen,
T y L son la posición de tu imagen, T es la distancia en pixels desde la parte superior, L es la distancia en pixels desde la izquierda.
Por último, W y H es el tamaño de tu imagen, W el ancho y H el alto.

Esto hace que si se imprime la página se muestre la marca de agua sobre la imagen, pero considera que un usuario medio ya tiene el conocimiento para ocultar elementos de la página, así que puede ocultar la marca de agua y guardar o imprimir las fotos sin problemas (es lo que yo hago), por lo que lo que es siempre seguro es la opción 1, editar sobre la imagen la marca de agua.

Saludos,
Pablo Pazos Gutierrez
http://groups.google.com/group/yuppframeworkphp

2008/11/12 Gerardo Scolari (Yahoo) <gerardo...@yahoo.com.ar>



--
Atte.
A/C Pablo Pazos Gutierrez
http://www.simplewebportal.net
http://pablo.swp.googlepages.com/home

Gerardo Scolari (yahoo)

unread,
Nov 19, 2008, 7:37:47 AM11/19/08
to desarro...@googlegroups.com
Ok.
Gracias!!!.
 
Encontré un programa que lles pone la marca a todas las fotos de una sola vez.
 



No virus found in this incoming message.
Checked by AVG - http://www.avg.com
Version: 8.0.175 / Virus Database: 270.9.7/1798 - Release Date: 18/11/2008 20:59

Reply all
Reply to author
Forward
0 new messages