Vamos a crear una página en PHP que recoja los datos del formulario de contacto.html. La página, recogerá los datos, comprobará que el nombre, la consulta y el email no estén vacíos, y que además, el email repetido sea el mismo. Si todo es correcto, enviaremos un correo a nuestra cuenta con los datos. Si algún campo no pasa la validación, informaremos al usuario, mostraremos un enlace para volver al formulario, y no enviaremos el correo.
Para enviar un correo con PHP empleamos la función mail()
, de la siguiente manera:
mail("email_destino", "asunto", "cuerpo_mensaje");
Nota: Por seguridad, algunos hostings gratuitos, aunque permiten PHP, no permiten enviar mensajes.
Abre el archivo base.html, y guárdalo como enviar_mail.php.
h2
), escribe Contacto.<?php
) y cierre (?>
) del PHP. Todo el código que escribiremos a continuación, irá dentro de esas etiquetas.function recogeDato($campo) { return (isset($_REQUEST
[$campo]
)) ?$_REQUEST
[$campo]
) : ""; }
$email1 = recogeDato('email1');
$email2 = recogeDato('email2');
$consulta = recogeDato('consulta');
$nombre = recogeDato('nombre');
$conocio = recogeDato('conocio');
$referente = recogeDato('referente');
$algunerror = FALSE;
$nombre==""
). Si es verdadero, ponemos $algunerror a verdadero ($algunerror = TRUE;) y mostramos el mensaje de error. Si no es cierto, continuamos.if($nombre==""){
$algunerror = TRUE;
echo "<p class=\"erroneo\">No has introducido tu nombre.</p>\n";
}
if($consulta==""){
$algunerror = TRUE;
echo "<p class=\"erroneo\">El área de la consulta no puede quedar en blanco.</p>\n";
}
$email1==""
). Si lo está marcamos el error y mostramos el mensaje. Si no, tenemos que comprobar si los dos son distinto ($email1!=$email2
). Si se cumple, es decir, si son distintos, marcamos el error y mostramos el mensaje. Si no, continuamos. Añade el siguiente bloque de instrucciones:
if($email1==''){
$algunerror = TRUE;
echo "<p class=\"erroneo\">No has introducido tu eMail</p>\n";
} elseif($email1!=$email2){
$algunerror = TRUE;
echo "<p class=\"erroneo\">Los eMails introducidos no coinciden.</p>\n";
}
if ($algunerror){
echo "<p> </p>\n";
echo "<p>No se ha podido enviar el mensaje por los errores que se detallan arriba.</p>\n";
echo "<p>Por favor, vuelve a rellenar el formulario.</p>\n";
echo "<p class=\"centrado\"><a href=\"contacto.html\">Volver al formulario</a></p>\n";
} else {
$para = "micorreo@mail.com";
$asunto = "Contacto web Floramics - consulta sobre ".$referente;
$mensaje = "Datos del formulario de contacto:\n".
"Nombre: $nombre \n".
"eMail: ".$email1."\n".
"Nos conoció por: ".$conocio." \n".
"Pregunta: ".$consulta;
mail($para, $asunto, $mensaje);
echo "<p>Tu mensaje se ha enviado correctamente. Gracias por contactar con nosotros.</p>\n";
echo "<p>Nos pondremos en contacto lo antes posible.</p>\n";
}
.erroneo {color: darkred;}
.Síguenos en: Facebook Sobre aulaClic Política de Cookies
© aulaClic S.L. Todos los derechos reservados. Prohibida la reproducción por cualquier medio.