Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?php
- use PHPMailer\PHPMailer\PHPMailer;
- use PHPMailer\PHPMailer\Exception;
- require 'PHPMailer/src/Exception.php';
- require 'PHPMailer/src/PHPMailer.php';
- require 'PHPMailer/src/SMTP.php';
- if ($_SERVER["REQUEST_METHOD"] !== "POST") {
- /* No es una solicitud POST, Mensaje de respuesta 403 (prohibido). */
- http_response_code(403);
- echo "Hubo un problema con tu envío, intenta de nuevo.";
- }
- /* Información del correo */
- $destinatario = "cristofoliagustina@gmail.com"; // en esta línea va el mail del destinatario.
- $asunto = "Presupuesto"; // acá se puede modificar el asunto del mail
- $from = ""; // cuenta de correo desde la que se van a enviar los mails
- $password = ""; // contraseña de la cuenta de correo desde la que se van a enviar los mails
- function sendMail($host, $from, $password, $destinatario, $asunto, $cuerpo) {
- $mail = new PHPMailer(true);
- $mail->SMTPDebug = 2;
- $mail->isSMTP();
- $mail->SMTPAuth = true;
- $mail->Host = $host;
- $mail->Username = $from;
- $mail->Password = $password;
- $mail->SMTPSecure = 'tls';
- $mail->Port = 587;
- $mail->setFrom($from);
- $mail->addAddress($destinatario);
- $mail->isHTML(false);
- $mail->Subject = $asunto;
- $mail->Body = $cuerpo;
- $mail->send();
- }
- /* Envío de datos */
- $nombre = str_replace(array("\r", "\n"), array(" ", " "), strip_tags(trim($_POST["nombre"])));
- $email = filter_var(trim($_POST["email"]), FILTER_SANITIZE_EMAIL);
- $consulta = trim($_POST["consulta"]);
- if (empty($nombre) or !filter_var($email, FILTER_VALIDATE_EMAIL)) {
- /* Mensaje de Validación */
- http_response_code(400);
- echo "Por favor completa el formulario y vuelve a intentarlo.";
- exit;
- }
- $color = "";
- foreach ($_POST['color'] as $value) {
- $color .= " $value- ";
- }
- /* Contenido del correo */
- $cuerpo = "Nombre y Apellido: $nombre\r\n";
- $cuerpo .= "Email: $email\r\n";
- $cuerpo .= "Lugar: " . $_POST["lugar"] . "\r\n";
- $cuerpo .= "Estilo: " . $_POST["estilo"] . "\r\n";
- $cuerpo .= "Formato: " . $_POST["formato"] . "\r\n";
- $cuerpo .= "Enmarcado: " . $_POST["marco"] . "\r\n";
- $cuerpo .= "Color: " . $color . "\r\n";
- $cuerpo .= "Aclaraciones:\n$consulta";
- /* Encabezados del correo. */
- $headers = "From: $nombre <$email>";
- /* Envía el correo. */
- try {
- sendMail('smtp.gmail.com', $from, $password, $to, $asunto, $cuerpo);
- /* Mensaje de respuesta 200 (correcto). */
- http_response_code(200);
- echo "¡Gracias! Nos pondremos en contacto dentro de las próximas 48 hs";
- } catch (Exception $e) {
- /* Mensaje de respuesta 500 (error interno del servidor). */
- http_response_code(500);
- echo "Oops! Algo salió mal, no pudimos enviar tu mensaje.";
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement