Como hacer un formulario de contacto con PHP (IV)

Si ya sabemos como diseñar un formulario, Validar campos por JavaScript y también por PHP ya estamos en condiciones de aprender a enviarlo. La verdad es que este proceso no es para nada complicado, pero nunca esta demás una pequeña explicación.
La función mail()
Para facilitarnos la tarea de enviar e-mails PHP ah definido la funcion mail() en su API, es realmente facil de usar y básicamente se implementa de la siguiente manera:
Parámetros:
Mail :
Con este parámetro definimos el o los mail a los que queremos que la información del formulario sea enviada.
Por ejemplo puedes escribir:
Asunto:
Este simplemente será el titulo del mail.
Contenido:
Es todo el cuerpo del mail. Nosotros lo armaremos con la información enviada desde el formulario.
Tan solo con escribir ese código en nuestro PHP se enviara un mail, con la información entregada en los parámetros. La función mail tiene más parámetros, pero para hacerlo más fácil solo dejare los principales.
Por lo tanto nuestro código final que recibía los datos y valida los mismos ahora deberá constar con unas líneas más.
-
<?php
-
$valido = true;
-
if($_POST['nombre']==''){
-
$valido = false;
-
}
-
$valido = false;
-
}
-
if($_POST['comentario']==''){
-
$valido = false;
-
}
-
}else{
-
$valido = false;
-
}
-
if($valido){
-
$contenido = "Nombre : ".$_POST['nombre']."\n";
-
$contenido .= "E-Mail : ".$_POST['email']."\n";
-
$contenido .= "Comentario : ".$_POST['comentario'];
-
echo "<h3>Su formulario se envio correctamente, Gracias.</h3>";
-
}else{
-
echo "<h3>Sus datos contienen errores.</h3>";
-
}
-
?>
Con esto el formulario queda completo y en funcionamiento.
Aquí tienes los archivos para descargar.
No olvides que la función mail solo se ejecutara en servidores de pago, porque estos están correctamente configurados y tienen todos los servicios necesarios.
Saludos y espero que te sea de utilidad.
Sphere: Related Content

Septiembre 3rd, 2008 at 6:15 am
Quisiera saber como puedo hacer para que al enviar los datos por formulario a un webmail, en el campo de no aparezca Apache, no se a que se debe pero estuve viendo que al poner un header
$headers .= “From: Pedro Perez \r\n”; esto aparecia en el “De” del webmail al que el php envia los datos. Como puedo hacer un header que llame a la direccion de mail de quien envia el mensaje?? para que esta aparezca en “de” en lugar de Apache. agradezco mucho esto que colgaste, me sirvio para realizar mi formulario.
Septiembre 4th, 2008 at 2:24 am
Hola, buscando un poco en la documentacion de php te podras dar cuenta que a la funcion mail() le falta un parametro opcional, y tienes razon, con ese parametro puedes espesificar el remitente y varias cosas mas, es solo cuestion de que busques lo que necesitas en http://www.php.net
Octubre 14th, 2008 at 12:22 pm
Hola, como va?
La primera vez que hice el formulario para unos amigos me salio bien… ahora me surge un error: Warning: mail() [function.mail]: “sendmail_from” not set in php.ini or custom “From:” header missing in \\hmfsw01\web01\DTCWIN157\mazz-frio.com.ar\public_html\recibe_datos.php on line 58
Como podria solucionarlo?
Gracias!
Octubre 14th, 2008 at 2:02 pm
Hola juan, puede ser que le estes pasando mal los parametros a la funcion Mail(), creo que le estas enviando el header en el mensaje, si dejas un poco de tu codigo en donde sale la funcin mail() creo que podre ayudarte más.
=)