Foros del Web » Programando para Internet » PHP »

Campos obligatorios... ¿Qué agregar al código?

Estas en el tema de Campos obligatorios... ¿Qué agregar al código? en el foro de PHP en Foros del Web. Hola, les comento mi problemas y espero puedan ayudarme, gracias! Tengo el siguiente código de un formulario: .................................................. .................................................. ............................. <?php $mail='[email protected]'; $nombre = $_POST['nombre']; ...
  #1 (permalink)  
Antiguo 19/04/2008, 04:55
 
Fecha de Ingreso: abril-2003
Mensajes: 74
Antigüedad: 21 años, 1 mes
Puntos: 0
Campos obligatorios... ¿Qué agregar al código?

Hola,

les comento mi problemas y espero puedan ayudarme, gracias!

Tengo el siguiente código de un formulario:

.................................................. .................................................. .............................

<?php

$mail='[email protected]';


$nombre = $_POST['nombre'];
$cargo = $_POST['cargo'];
$empresa = $_POST['empresa'];
$sector = $_POST['sector'];
$tel_fax = $_POST['tel_fax'];
$movil = $_POST['movil'];
$e_mail = $_POST['e_mail'];
$mensaje = $_POST['mensaje'];

$thank="gracias.html";

$message = "
NOMBRE:".$nombre."
CARGO:".$cargo."
EMPRESA:".$empresa."
SECTOR:".$sector."
TEL_FAX:".$tel_fax."
MOVIL:".$movil."
E_MAIL:".$e_mail."
MENSAJE:".$mensaje."";

if (mail($mail,"Formulario de Consulta",$message))
Header ("Location: $thank");

?>


.................................................. .................................................. ......................

El mail se envía bien y no hay problema, pero me han pedido que al menos el NOMBRE y el CORREO sean campos obligatorios.... ¿Alguien que hay que agregarle para hacer eso?

Muchas gracias por todo!

Gracias por su tiempo!!!
  #2 (permalink)  
Antiguo 19/04/2008, 05:35
Avatar de JavierB
Colaborador
 
Fecha de Ingreso: febrero-2002
Ubicación: Madrid
Mensajes: 25.052
Antigüedad: 22 años, 2 meses
Puntos: 772
Re: Campos obligatorios... ¿Qué agregar al código?

Mensaje movido al foro de PHP desde Javascript.

Saludos,
  #3 (permalink)  
Antiguo 19/04/2008, 07:39
(Desactivado)
 
Fecha de Ingreso: diciembre-2006
Mensajes: 529
Antigüedad: 17 años, 5 meses
Puntos: 11
Re: Campos obligatorios... ¿Qué agregar al código?

Hola Patri,

Código PHP:
<?php
 
if (!$mail)
$mensaje[] = "Ingrese un email";
 
if (!
$nombre)
$mensaje[] = "Ingrese su nombre";
 
 
if (!
count($mensaje)) {
 
$mail='[email protected]';
 
$nombre $_POST['nombre'];
$cargo $_POST['cargo'];
$empresa $_POST['empresa'];
$sector $_POST['sector'];
$tel_fax $_POST['tel_fax'];
$movil $_POST['movil'];
$e_mail $_POST['e_mail'];
$mensaje $_POST['mensaje'];
$thank="gracias.html";
$message "
NOMBRE:"
.$nombre."
CARGO:"
.$cargo."
EMPRESA:"
.$empresa."
SECTOR:"
.$sector."
TEL_FAX:"
.$tel_fax."
MOVIL:"
.$movil."
E_MAIL:"
.$e_mail."
MENSAJE:"
.$mensaje."";
if (
mail($mail,"Formulario de Consulta",$message)) {
Header ("Location: $thank");
exit;
}
}
else {
 
echo 
"El formulario no pudo ser enviado, se encontraron los siguientes errores:<br>";
foreach (
$mensaje as $valor)
echo 
"- ".$valor."<br>";
 
}
?>
Implementa esto y tus campos serán obligatorios del lado del servidor.
Además.. nunca olvides que cuando haces un "header("location: ")..." despues de esa linea debes poner exit;

Sino el código se sigue ejecutando antes de direccionar y a veces esto puede traer resultados no deseados. ¡Ojo! es muy importante esto...

Saludos
  #4 (permalink)  
Antiguo 20/04/2008, 03:19
Avatar de DooBie  
Fecha de Ingreso: septiembre-2004
Mensajes: 1.101
Antigüedad: 19 años, 7 meses
Puntos: 71
Re: Campos obligatorios... ¿Qué agregar al código?

Con tu permiso usermax, pero yo cambiaria tus "if" por estos:

if(!$_POST['e_mail'])
$mensaje[] = "Ingrese un email.";

if(!$_POST['nombre'])
$mensaje[] = "Ingrese un nombre.";

Más que nada por que tu estabas comparando las variables $mail y $nombre, la de $mail es el Email con el que se envia el Email y en $nombre, no hay nada, si antes no se le pasan los datos del formulario con $_POST['nombre']

saludos!
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 07:07.