Melodysoft
Contactar | Regístrate | Panel de control | Publicidad  

 
Foros de discusión

Características
Diseños disponibles
Índice de foros

Libros de visitas

Características
Diseños disponibles

Formularios de envío


AdFREE - Bonos

libres de publicidad


Documentación

Personalización
F.A.Q.

Noticias


Contactar


 


Documentación » Verificar la entrada de datos necesarios


Volver


Es posible realizar una comprobación en los formularios que aparecen en foros, libros, o en cualquier otro tipo de formulario, de esta manera se puede informar al usuario de los campos necesarios que no ha rellenado.

Además de esta comprobación, cuando después se envía un mensaje, los servicios de Melodysoft pueden mostrar algún aviso de error, por ejemplo si cuando alguien firma en el foro o libro, no indica su nombre o el propio texto del mensaje.

Esta opción no inhabilita la propia comprobación que se realizará después, pero puede ser muy útil para acelerar el envío de datos, ya que el formulario no se enviará hasta que se cumplan las condiciones, una vez que todo está correcto, los datos se enviarán. Para hacer todo esto es necesario que tengas algunas nociones de HTML, lo primero es personalizar el diseño del foro, libro o formulario desde la sección Personalizar del panel de control, es recomendable que eches un vistazo a algún manual de HTML para que te familiarices con todo.

Lo que debes hacer es localizar el código <form> del formulario donde se recogen los datos que posteriormente se enviarán al sistema de foros, libros o de cualquier otro formulario. Esta etiqueta HTML indica el principio del bloque donde se encuentran los campos y las cajas de texto necesarias. Aproximadamente tiene esta estructura:

<form method = "post" action = "???">

(...aquí irían los campos de datos...)

</form>


El valor method indica el método por el que se envía el formulario, suele ser POST, aunque también podría ser GET, action indica la dirección a la que se envían los datos, y depende del servicio si es foro, libro o formulario, pero en principio no es necesario que modifiques nada ya que debes partir de una de las plantillas disponibles, o del propio diseño que tiene el foro o libro que estás personalizando.

Lo único que tienes que añadir es el evento onSubmit que se disparará cuando se pulse el botón de "Enviar", se le asigna que devuelva una función de JavaScript mediante return, de manera que se llamará cuando se intente enviar el formulario, a esta función la podemos llamar por ejemplo Verificar(), también hay que indicar un nombre único al formulario en toda la página mediante la etiqueta name, en este caso lo llamamos frm, el código del formulario con estos dos nuevos valores quedaría así:

<form method = "post" action = "???" name = "frm" onSubmit = "return Verificar()">

(...aquí irían los campos de datos...)

</form>


Delante del formulario podemos poner la función JavaScript que comprobará que los campos están introducidos, el código es parecido al de muchos lenguajes de programación como C++, se comprueba el valor que tiene cada campo de ese formulario:

if(document.frm.NOMBRE_CAMPO.value == "") {

(...aquí iría lo que queremos que haga la función si no tiene valor en el campo...)

}


document indica que nos estamos refiriendo al documento actual, frm es el nombre del formulario que hemos llamado mediante name en el <form>, NOMBRE_CAMPO sería el nombre del campo y value la propiedad que devuelve el valor de ese campo. No es necesario que se realice una comprobación en los campos HIDDEN de los formularios.

Para comprobar si un campo de tipo CHECK tiene el valor activo, se haría mediante:

if(document.frm.NOMBRE_CAMPO.checked) { ... }

El método focus() fijaría el foco en la caja de texto donde falta rellenar el campo, así no sería necesario que el usuario tenga que posicionarse mediante el ratón o teclado, ya que el cursor se situaría en ese lugar, listo para esperar las pulsaciones del teclado.

Este sería un ejemplo de cómo quedaría todo en el formulario que se emplea en los foros, aquí se solicita que se indique sólo el nombre y el mensaje:

<script>
function Verificar() {
  if(document.frm.nombre.value == "") {
    alert("Por favor indica tu nombre");
    document.frm.nombre.focus();
    return false;
  }

  if(document.frm.mensaje.value == "") {
    alert("Por favor indica un mensaje");
    document.frm.mensaje.focus();
    return false;
  }

  return true;
}
</script>



Añadir mensaje Recargar
 
Nombre
E-Mail
Asunto
  Notificar por e-mail respuestas.

Mensaje


   




Perfeccionando las funciones...


return true se pone al final de la función para que devuelva verdadero y así el formulario pueda enviarse, si lo deseas podrías poner una confirmación con un mensaje de aviso, para hacerlo quita return true y pon:

return confirm("Por favor confirma que deseas enviar los datos");

También podrías mostrar al usuario los datos que se van a enviar de la siguiente manera:

return confirm("Vas a enviar estos datos:\nNombre: "+document.frm.nombre.value+"\nMensaje: "+document.frm.mensaje.value);




Volver



Sobre Melodysoft | Aviso legal | Privacidad | Condiciones del servicio | Condiciones de contratación
Índice foros | Tiendas | Boards2