Mi codigo php que uso para procesar el form es este:
Código PHP:
<?php
//reCAPTCHA GOOGLE
require_once '../script/ReCaptcha/ReCaptcha.php';
require_once '../script/ReCaptcha/RequestMethod.php';
require_once '../script/ReCaptcha/RequestParameters.php';
require_once '../script/ReCaptcha/Response.php';
require_once '../script/ReCaptcha/RequestMethod/Curl.php';
require_once '../script/ReCaptcha/RequestMethod/CurlPost.php';
require_once '../script/ReCaptcha/RequestMethod/Post.php';
require_once '../script/ReCaptcha/RequestMethod/Socket.php';
require_once '../script/ReCaptcha/RequestMethod/SocketPost.php';
if($_POST['Enviar']){
$nombre=$_POST["nombre"]; //Input Nombre
$apellido=$_POST["apellido"]; //input apellido
$telefono=$_POST["fono"]; // input fono
$direccion=$_POST["direccion"]; // input direccion
$correo=$_POST["email"]; // input direccion
$asunto=$_POST["asunto"]; // select asunto
$contenido=$_POST["comentario"]; //textarea mensaje
$recaptcha = new ReCaptchaReCaptcha("6Ld58P4SAAAAAC9pu3NFIKz9Lc8JVfqn0SfvEclq");
$respuesta = $recaptcha->verify($_POST['g-recaptcha-response'], $_SERVER['REMOTE_ADDR']);
if($respuesta->isSuccess()){
//si esta ok post, Recogemos las variables desde el formulario
//Validamos que no hay campos vacios
if(empty($_POST["nombre"])){
echo "Debe Ingresar su Nombre";
} else if (empty($_POST["apellido"])){
echo "Debe Ingresar su Apellido";
} else if(empty($_POST["fono"])){
echo "Debe Ingresar Telefono";
} else if(empty($_POST["direccion"])){
echo "Debe Ingresar su Dirección";
} else if(empty($_POST["email"])){
echo "No ha ingresado email";
} else if (empty($_POST["asunto"])){
echo "Debe Seleccionar Asunto";
} else if (empty($_POST["mensaje"])){
echo "Debe Escribir su Mensaje/Consulta";
} else{
//Si pasó validaciones ejecutar la funcion enviar_correo
envia_correo();
}
exit;
}else{
echo 'No ha seleccionado el Captcha de Seguridad';
foreach ($respuesta->getErrorCodes() as $error_code) {
echo '<tt>' . $error_code . '</tt> ';
}
exit;
}
}
function envia_correo(){
//Variables
$correo_destino='[email protected]'; //Correo al que se enviara el formulario
$nombre=$_POST["nombre"]; //Input Nombre
$apellido=$_POST["apellido"]; //input apellido
$telefono=$_POST["fono"]; // input fono
$direccion=$_POST["direccion"]; // input direccion
$correo=$_POST["email"]; // input direccion
$asunto=$_POST["asunto"]; // select asunto
$contenido=$_POST["comentario"]; //textarea mensaje
//Creacion de Mensaje a enviar al Email
$mensaje="
Mensaje enviado desde Formulario de Contacto Web Dekoplus:
Asunto del Mensaje: $asunto
Enviado por: $nombre $apellido
Telefono: $telefono
Dirección: $correo
Dirección: $direccion
Mensaje: $contenido
";
//Confirmación de Envio
if(mail($correo_destino,"Formulario Contacto Dekoplus","$mensaje")){
//si se cumple
echo "<div class='alert alert-success alert-dismissable'>
<button type='button' class='close' data-dismiss='alert'>×</button>
<p class='principal'><strong>¡GRACIAS POR CONTACTARNOS!</strong>
Su mensaje ha sido enviado con exito..Le responderemos a la brevedad posible.</p>
</div>";
//Redireccionamos al index
}else{
//si falla el envio
echo "<div class='alert alert-danger alert-dismissable'>
<button type='button' class='close' data-dismiss='alert'>×</button>
<p class='principal'><strong>ERROR:</strong>
No hemos Podido Enviar Su Mensaje..Intente mas tarde.</p>
</div>";
}
}
?>
Código:
/*=== Validacion Formulario Contacto ===*/ $("#formulario_contacto").validate({ /*Declaramos las reglas de validacion *Reglas: *required:true -> Campo Requerido *maxlength:2 -> Maximo de Caracteres (Se debe crear el mensaje en 'messages') *minlength:2 -> Minimo de Caracteres (Se debe crear el mensaje en 'messages') * */ debug: false, rules:{ nombre:{required:true},//validacion para el input nombre apellido:{required:true}, fono:{required:true},//validacion para el input telefono direccion:{required:true},//validacion para el input direccion email:{required:true, email:true},//validacion para el input email asunto:{required:true},//validacion para el Select Asunto comentario:{required:true},//validacion para el input comentario }, messages:{ nombre:{ required:"Debe Ingresar su Nombre"},//Mensaje para el input nombre apellido:{required:"Debe ingresar su Apellido"}, fono:{ required:"Debe Ingresar Numero Telefonico"},//Mensaje para el input Telefono direccion: {required:"Debe ingresar su dirección"}, email:{ required:"Debe Ingresar Email", email:"Email no Valido"},//Mensaje para el input email asunto:{ required:"Debe Seleccionar Asunto"},//Mensaje para el Select Asunto comentario:{ required:"Debe Ingresar Comentario o Consulta"},//Mensaje para el input comentario }, submitHandler: function(form) { // do other stuff for a valid form $.post('../script/formContacto.php', $("#formulario_contacto").serialize(), function(data) { $('#resultado').html(data); $('#resultado').fadeOut(10000); /*CIERRE AUTOMATICO DE VENTANA*/ }); $("#formulario_contacto")[0].reset(); //Resetea el Formulario } });