Portada | Monotemáticos | Secciones | Desarrolladores | Comunidad | Servicios | Servicios profesionales | RSS
Desde 0 | HTML | CSS | ASP | PHP | AJAX | Javascript | Promoción de webs | Rentabilidad de webs
Directorio | Manuales | Scripts | FAQs | Programas | Artículos Copyleft | Actualidad | La Cosecha | Colabora
Registrarse | Vuestras páginas | Foros del web | Lista de correo | Boletín de novedades
Generador METAs | Compras | Busca cursos
Alojamiento | Dominios.es | Micropagos SMS | Buscadores | Patentes, marcas | Creación web | Multimedia | Videos
Desarrollo Freelance | Buscar proyectos | Buscar profesionales | Solicitar desarrollo

Comprobacion de formularios

Tengo un formulario en PHP terminado y quiero que no se envie hasta que todos los campos estén rellenados; no se cómo hacerlo agradecería mucho una ayudita.

La FAQ Comprobacion de formularios tiene Pertenece a la categoría:


 Respuesta de Miguel Angel Alvarez  15/6/04 
Si deseas que no se envíe hasta que no esté todo relleno tienes dos posibilidades:

- Hacer una comprobación con Javascript antes de enviar el formulario. Sólo se envía si dicha comprobación fue correcta.
- Hacer una comprobación con PHP en la página que recibe el formulario. Sólo se genera el correo electrónico para enviar el formulario si la comprobación fue correcta. Si no lo fue, lo mejor es mostrar un mensaje de error y volver a escribir el formulario en la página con los datos que se habían rellenado hasta el momento.

La diferencia entre una comprobación y otra es que con Javascript la comprobación es dependiente del ordenador del visitante y con PHP la comprobación es independiente del ordenador del usuario. Es más segura la comprobación con PHP.

Referencias:

Sección de Javascript
Manual de formularios y Javascript
Sección de PHP

Complementar la respuestaComplementar la respuesta
Volver al árbol de categoríasVolver al árbol de categorías

 Comentarios de los visitantes
Se muestra un comentario revisado

 Comentario de Liliana Rodríguez
29/10/05 
Este es el código, por ejemplo, que tenga campos como Nombre ó Email, :

<script language="JavaScript" type="text/JavaScript">
<!--
function MM_validateForm() { //v4.0
var i,p,q,nm,test,num,min,max,errors='',args=MM_validateForm.arguments;
for (i=0; i<(args.length-2); i+=3) { test=args[i+2]; val=MM_findObj(args[i]);
if (val) { nm=val.name; if ((val=val.value)!="") {
if (test.indexOf('isEmail')!=-1) { p=val.indexOf('@');
if (p<1 || p==(val.length-1)) errors+='El '+nm+' no es un email valido. ';
} else if (test!='R') { num = parseFloat(val);
if (isNaN(val)) errors+='- '+nm+' must contain a number. ';
if (test.indexOf('inRange') != -1) { p=test.indexOf(':');
min=test.substring(8,p); max=test.substring(p+1);
if (num<min || max<num) errors+='- '+nm+' must contain a number between '+min+' and '+max+'. ';
} } } else if (test.charAt(0) == 'R') errors += 'El campo '+nm+' es requerido. '; }
} if (errors) alert('Tiene los siguientes erorres: '+errors);
document.MM_returnValue = (errors == '');
}
//-->
</script>



y en el tag de formulario se pone:

<form action="" method="post" name="form1" onSubmit="MM_validateForm('nombre','','R','email','','RisEmail');return document.MM_returnValue">

 Comentarios sin revisar
Entre los comentarios no revisados puede haber algunos interesantes que se hayan enviado recientemente.
 Se han encontrado 3 comentarios sin revisar

Ver el comentario no revisadoVer los comentarios no revisados
 
FAQ relacionadas
  + Botón Javascript para Imprimir página web
  + Pasar variables de ASP o PHP hacia Javascript o viceversa
  + Enviar un mismo formulario a tres frames distintos
  + Retardo en Javascript
  + Enlace múltiple
  + Redimensionar en Netscape el tamaño de la ventana
  + ¿Cuál es la diferencia entre Java y Javascript?
  + Abrir ventanas secundarias en Javascript
  + Cómo tener dos scripts en la misma página para dos navegadores
  + Enviar al navegador a otra página si no tiene habilitado Javascript
  + Abrir una ventana pequeña que quede detrás de la principal.
  + Obtener datos de una base para construir mis javascripts
  + Sustituir puntos por comas en campos numéricos
  + Inhibir una caja de texto de formulario
  + Preguntar si desea enviar realmente un formulario
  + ¿Cómo puedo abrir y cerrar un popup?
  + Menú desplegable para la navegación
  + ¿Cómo puedo maximizar el navegador automáticamente?
  + Utilizar una ventana sin menús para mi web
  + Trabajar con un botón de radio en Javascript
  + JavaScript que muestra un mensage diferente cada día
  + Ir a la página anterior al pulsar una imagen
  + Como puedo hacer una ventana de navegador barra de herramientas.
  + Deshabilitar un botón de radio
  + Evitar que pueda verse el código fuente de la página
  + Habilitar o desabilitar checkbox en función del estado de otro checkbox
  + Evitar que pida confirmación al cerrar una ventana
  + Abrir popup desde Iframe
  + Función eval en Javascript
  + Generar un color con Javascript
  + Crear con JavaScript variables globales a todos los frames
  + Variables globales en Javascript
  + Propiedades de la clase Math de Javascript
  + Bloquear popups desde la propia web
  + Submenú en otra ventana con Javascript
  + Crear objetos con Javascript
  + Convertir una variable en constante con Javascript
  + Ayuda con Javascript
  + Borrar contenido input automaticamente
  + Utilizar Javascript en tus páginas web
  + ...

Para ver más FAQ relacionadas accede a las categorías:

Complementar la respuestaComplementar la respuesta
Volver al árbol de categoríasVolver al árbol de categorías

DesarrolloWeb.com | Copyright | Anunciese | Acerca de | Datos legales | Contacta | Por GuiarteMultimedia