Foros del Web » Programando para Internet » PHP »

validad todos los campos de mail php

Estas en el tema de validad todos los campos de mail php en el foro de PHP en Foros del Web. hola amigos del foro! Tengo un problema con un formulario php mail. funciona bien, pero lo que ocurre es que manda el correo por mas ...
  #1 (permalink)  
Antiguo 02/02/2010, 19:33
 
Fecha de Ingreso: septiembre-2009
Mensajes: 30
Antigüedad: 14 años, 7 meses
Puntos: 0
validad todos los campos de mail php

hola amigos del foro!
Tengo un problema con un formulario php mail. funciona bien, pero lo que ocurre es que manda el correo por mas que alguno campos es esten sin llenar, o sea, vacios.
Me gustaria hacer que solamente mande el mail cuando todos los campos esten llenos. Por favor me gustaria que me den una mano, soy novato en el php, desde ya muchas gracias.

Aqui les dejo el codigo.

Código PHP:
<?php 

$nombre 
$_POST['nombre'];
$empresa $_POST['empresa'];
$mail $_POST['mail'];



$header 'From: ' $mail" \r\n"
$header .= "X-Mailer: PHP/" phpversion() . " \r\n"
$header .= "Mime-Version: 1.0 \r\n"
$header .= "Content-Type: text/plain"

$mensaje "Este mensaje fue enviado por " $nombre ", de la empresa " $empresa " \r\n";
$mensaje .= "Su e-mail es: " $mail " \r\n"
$mensaje .= "Mensaje: " $_POST['mensaje'] . " \r\n"
$mensaje .= "Enviado el " date('d/m/Y'time()); 

$para '[email protected]';
$asunto 'Contacto'

mail($para$asuntoutf8_decode($mensaje), $header); 

echo 
'<META HTTP-EQUIV="Refresh" CONTENT="1;URL=http://www.miweb.com./contacto.html"/>'

?>
muchas gracias!

R
  #2 (permalink)  
Antiguo 02/02/2010, 20:00
 
Fecha de Ingreso: octubre-2009
Mensajes: 67
Antigüedad: 14 años, 6 meses
Puntos: 1
Respuesta: validad todos los campos de mail php

con un if como este:

Código:
if (!empty($nombre) && !empty($empresa) && !empty(mail))
{
//Mandar mail
}
else
{
//Campo vacio
}
Saludos

Última edición por Dhl14; 02/02/2010 a las 22:01
  #3 (permalink)  
Antiguo 02/02/2010, 21:03
Avatar de Esck21  
Fecha de Ingreso: septiembre-2009
Mensajes: 50
Antigüedad: 14 años, 7 meses
Puntos: 1
Respuesta: validad todos los campos de mail php

Seria algo asi.

Código PHP:

   
if(isset($_POST)) {
      
      
$email   trim($_POST['email']);
      
$nombre  trim($_POST['nombre']);
      
$empresa trim($_POST['empresa']);

       if(!
strlen($mail) > 0) {
            echo 
'Error: email esta vacio.';
       }
       elseif(!
strlen($empresa) > 0) {
            echo 
'Error: empresa esta vacio.';
       }
       elseif(!
strlen($nombre) > 0) {
            echo 
'Error: nombre esta vacio.';
       }

      
// Enviar email.
  
} else { echo 'Error: Campos vacios'; }       < -- es la misma cosa

Última edición por Esck21; 02/02/2010 a las 21:05 Razón: Error de tipografia.
  #4 (permalink)  
Antiguo 07/02/2010, 14:57
 
Fecha de Ingreso: septiembre-2009
Mensajes: 30
Antigüedad: 14 años, 7 meses
Puntos: 0
Respuesta: validad todos los campos de mail php

Cita:
Iniciado por Esck21 Ver Mensaje
Seria algo asi.

Código PHP:

   
if(isset($_POST)) {
      
      
$email   trim($_POST['email']);
      
$nombre  trim($_POST['nombre']);
      
$empresa trim($_POST['empresa']);

       if(!
strlen($mail) > 0) {
            echo 
'Error: email esta vacio.';
       }
       elseif(!
strlen($empresa) > 0) {
            echo 
'Error: empresa esta vacio.';
       }
       elseif(!
strlen($nombre) > 0) {
            echo 
'Error: nombre esta vacio.';
       }

      
// Enviar email.
  
} else { echo 'Error: Campos vacios'; }       < -- es la misma cosa
hola! mil gracias por la ayuda!! Lo que hice fue pegar el codigo que me diste dentro de mi php de contacto, pero no parece funcionar bien, (seguramente yo hice algo mal, ya que mi conocimiento de php es casi nulo) sigue mandando el mail por mas que los campos esten vacios......por favor dime en que me equivoque o como debo incluir lo que me pasaste.

Desde ya mucha gracias!

el codigo quedo asi:

Código PHP:
<?php 

$nombre 
$_POST['nombre'];
$empresa $_POST['empresa'];
$mail $_POST['mail'];

if(isset(
$_POST)) {
      
      
$email   trim($_POST['email']);
      
$nombre  trim($_POST['nombre']);
      
$empresa trim($_POST['empresa']);

       if(!
strlen($mail) > 0) {
            echo 
'Error: email esta vacio.';
       }
       elseif(!
strlen($empresa) > 0) {
            echo 
'Error: empresa esta vacio.';
       }
       elseif(!
strlen($nombre) > 0) {
            echo 
'Error: nombre esta vacio.';
       }

      
// Enviar email.
  
} else { echo 'Error: Campos vacios'; } 


$header 'From: ' $mail" \r\n"
$header .= "X-Mailer: PHP/" phpversion() . " \r\n"
$header .= "Mime-Version: 1.0 \r\n"
$header .= "Content-Type: text/plain"

$mensaje "Este mensaje fue enviado por " $nombre ", de la empresa " $empresa " \r\n";
$mensaje .= "Su e-mail es: " $mail " \r\n"
$mensaje .= "Mensaje: " $_POST['mensaje'] . " \r\n"
$mensaje .= "Enviado el " date('d/m/Y'time()); 

$para '[email protected]';
$asunto 'Contacto'

mail($para$asuntoutf8_decode($mensaje), $header); 

echo 
'<META HTTP-EQUIV="Refresh" CONTENT="1;URL=http://www.miweb.com.ar/contacto.html"/>'

?

Etiquetas: campos, mail
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 11:14.