Formulario de contacto con adjunto
Buenas,
Como puedo hacer que este formulario que tengo creado me envie el adjunto al correo?
empleo.php
Como puedo hacer que este formulario que tengo creado me envie el adjunto al correo?
empleo.php
<?php ob_start('compress_page'); require_once('conexion.php'); include('seguridad.php'); $menu='empleo'; if (isset($_POST['nombre']) && ($_POST['email']!='') && ($_POST['telefono']!='') && ($_POST['municipio']!='') && ($_POST['provincia']!='') && ($_POST['comentario']!='')){ //enviar contacto // Llamando a los campos $nombre = $_POST['nombre']; $correo = $_POST['email']; $telefono = $_POST['telefono']; $municipio = $_POST['municipio']; $provincia = $_POST['provincia']; $mensaje = $_POST['comentario']; // Datos para el correo $para = $correo; $titulo = "CV desde la web de GNELEC MONTAJES del usuario $nombre"; $mensaje = htmlentities($mensaje); // Cabeceras $cabeceras = 'MIME-Version: 1.0' . "\r\n"; $cabeceras .= 'Content-type: text/html; charset=utf-8' . "\r\n"; $cabeceras .= 'From: Gnelec Montajes <"noreply@gnelec.es">' . "\r\n"; $cabeceras .= 'Reply-To: '.$correo. "\r\n"; $carta = '<html> <head> <title>' . $titulo . '</title> </head> <body> <h1>Has recibido un CV desde la web https://www.gnelec.es/</h1> <p>' . $nombre . ' vive en ' . $municipio. ' provincia de' . $provincia . ' <br> <br> Mensaje: ' . $mensaje . ' <br><br> Puedes ponerte en contacto al email: ' . $correo . ', o en el teléfono: '.$telefono.'</p> <hr> <p>Este mensaje y sus archivos adjuntos van dirigidos exclusivamente a su destinatario, pudiendo contener información confidencial sometida a secreto profesional. No está permitida su reproducción o distribución sin la autorización expresa de Gnelec Montajes Sl. Si usted no es el destinatario final por favor elimínelo e infórmenos por esta v&oicute;a.</p> <p>De acuerdo con la La Ley Orgánica de Protección de Datos de Carácter Personal, (LOPD), le informamos que sus datos personales y dirección de correo electrónico forman parte de un fichero, cuyo responsable es GNELEC MONTAJES SL, siendo la finalidad del fichero: la gestión de carácter comercial y el envío de comunicaciones comerciales sobre nuestros productos y/o servicios.</p> <p>Si lo desea, podrá usted ejercitar los derechos de acceso, rectificación, cancelación y oposición de sus datos enviando un mensaje a la siguiente dirección de correo electrónico a gnelec@gnelec.es indicando en la línea de Asunto el derecho que desea ejercitar.</p> <hr> <p><strong>Este mensaje ha sido generado automáticamente desde https://www.gnelec.es/</strong></p> <body </html>'; // Enviando Mensaje mail($para, $titulo, utf8_decode($carta), $cabeceras); $copiaEnvio = mail($dato[1],$titulo,utf8_decode($carta),$cabeceras); header('Location:'.$_SERVER['PHP_SELF'].'?enviado'); } ?> <!DOCTYPE html> <html lang="es"> <head> <meta charset="UTF-8"> <title> <?php echo $dato[2]; ?> </title> <?php include("inc/head.php"); ?> </head> <body> <?php include("inc/header.php"); ?> <div class="container margen-arriba"> <div class="row"> <div class="col-md-3"> <?php include('inc/menu.php'); ?> </div> <div class="col-md-9"> <main class="formulario"> <h3 class="formulario__titulo">Trabaja con nosotros y se parte de nuestro equipo</h3> <p class="formulario__texto">Comunicate en el siguiente teléfono/mail o completa el formulario</p> <div class="row justify-content-center text-center"> <div class="col-3"> <h3 class="borde-abajo">Teléfono:</h3> <i class="fas fa-phone-volume"></i><span class="telefono"></span> </div> <div class="col-3"> <h3 class="borde-abajo">E-mail: </h3> <i class="fas fa-envelope"></i><a href="mailto:gnelec@gnelec.es"><span class="correo"></span></a> </div> </div> <?php if(!isset($_GET['enviado'])){ ?> <form method="post" class="formulario" id="form_contacto" onsubmit="return trabaja_ajax(names.value, email.value, phone.value, municipio.value, provincia.value, comentario.value, palabra.value, acepto_chk.value)"> <h3 class="formulario__titulo"> </h3> <input type="text" name="nombre" id="names" class="formulario__input"> <label for="" class="formulario__label">Nombre</label> <div class="row"> <div class="col-md-6"> <input type="email" name="email" id="email" class="formulario__input"> <label for="" class="formulario__label">Email</label> </div> <div class="col-md-6"> <input type="tel" name="telefono" id="phone" class="formulario__input"> <label for="" class="formulario__label">Teléfono</label> </div> </div> <div class="row"> <div class="col-md-6"> <input type="text" name="municipio" id="municipio" class="formulario__input"> <label for="" class="formulario__label">Municipio</label> </div> <div class="col-md-6"> <input type="text" name="provincia" id="provincia" class="formulario__input"> <label for="" class="formulario__label">Provincia</label> </div> </div> <div class="row py-3"> <div class="col-md-6"> <div class="recaptcha"> <span id="aleatorio"><?php include('inc/aleatorio.php'); ?></span> </div> <a class="cambiar_c text-center" onclick="cambiar_captcha();">Cambiar</a> </div> <div class="col-md-6"> <input type="text" name="palabra" id="palabra" class="formulario__input"> <label for="" class="formulario__label">Recaptcha</label> </div> </div> <input type="file" name="adjunto" id="archivo-adjunto" class="formulario__input"> <textarea name="comentario" id="comentario" class="formulario__textarea"></textarea> <label for="" class="formulario__label">Introduzca el mensaje deseado</label> <div class="formulario__check acepto_chk text-center"> <input type="checkbox" name="acepto_chk" id="acepto_chk"> <span>He leído y acepto el <a href="<?php echo $dato[0]; ?>aviso-legal">aviso Legal</a></span> </div> <div class="form-group oculto" id="empleo-error"> <div class="alert alert-danger form-control form-control-sm" id="empleo-mensaje" role="alert"> <strong>Error</strong> </div> </div> <div class="row margen-abajo"> <div class="col-md-6"> <input type="submit" class="formulario__submit" value="Enviar consulta"> </div> <div class="col-md-6"> <input type="reset" class="formulario__submit" value="Borrar Datos"> </div> </div> <p class="LOPD"> De acuerdo con la LOPD, le informamos que sus datos personales y dirección de correo electrónico forman parte de un fichero, cuyo responsable es Gnelec Montajes Sl, siendo la finalidad del fichero: la gestión de carácter comercial y el envío de comunicaciones comerciales sobre nuestros productos y/o servicios. Si lo desea, podrá usted ejercitar los derechos de acceso, rectificación, cancelación y oposición de sus datos enviando un mensaje a la siguiente dirección de correo electrónico a <a href="mailto:gnelec@gnelec.es">gnelec@gnelec.es</a> indicando en la línea de “Asunto” el derecho que desea ejercitar. </p> </form> <?php } else { ?> <div class="contacto-ok margen-arriba"> <div class="form-group align-self-center"> <div class="alert alert-success form-control form-control-sm" role="alert"> <strong>El mensaje se ha enviado correctamente, se mandará una copia del mensaje a su correo</strong> </div> </div> </div> <?php }?> </main> </div> </div> </div> <?php include("inc/footer.php"); ?> </body> </html> <?php ob_end_flush(); function compress_page($buffer) { $search = array('/\>[^\S ]+/s','/[^\S ]+\</s','/(\s)+/s'); $replace = array('>','<','\\1'); return preg_replace($search, $replace, $buffer); } ?>efectos.js
function trabaja_ajax(names,email,phone,municipio,provincia,comentario,palabra,acepto_chk) { var capturarpalabra=$('#aleatorio').text(); if(limpiar(names)!='' && limpiar(email)!='' && limpiar(phone)!='' && limpiar(municipio)!='' && limpiar(provincia)!='' && limpiar(comentario)!='' && limpiar(palabra)!='' && limpiar(palabra)==limpiar(capturarpalabra) && (document.getElementById("acepto_chk").checked==true)){ //ok return true; } else { $('#empleo-error').fadeIn(500); $('#empleo-mensaje').text('Complete los campos o Acepta los terminos y condiciones'); cambiar_captcha(); $('#palabra').val(''); return false; } }
Respuesta #1
hola buenas, primero necesitas agregar a tu formulario enctype="multipart/form-data" para que a parte de enviar los valores envíe los ficheros que cargas en el form.
cambias esto:
cambias esto:
<form method="post" class="formulario" id="form_contacto" onsubmit="return trabaja_ajax(names.value, email.value, phone.value, municipio.value, provincia.value, comentario.value, palabra.value, acepto_chk.value)">por esto:
<form method="post" class="formulario" id="form_contacto" enctype="multipart/form-data" onsubmit="return trabaja_ajax(names.value, email.value, phone.value, municipio.value, provincia.value, comentario.value, palabra.value, acepto_chk.value)">
0
Puntos
Puntos
Por alber hace 70 meses
Administrador
Respuesta #2
luego para enviar el fichero como tal es algo mas complejo pero puedes usar la librería PHPMailer para hacer mucho mas fácil, con algo así:
slds
$file_to_attach = 'PATH_OF_YOUR_FILE_HERE'; $email->AddAttachment( $file_to_attach , 'NameOfFile.pdf' );te voy a pasar una guía completa de como usar phpmailer de una manera muy fácil y práctica, solo tienes que agregarle las lineas que te eh pasado antes para añadir ficheros al envío, así de sencillo ;)
slds
0
Puntos
Puntos
Por alber hace 70 meses
Administrador