Necesito la ayuda para resolver este form, el problema que tengo es que no me esta asiendo el Attachament.
Les comento, el form esta construido en aspx (HTML), el valida y envia las variables con Jquery y AJAX, y el envio al correo lo hace con PHPmailer.
Codigo HTML:
Código HTML:
<form id="form1" runat="server"> <div id="sitio"> <div id="formulario"> <div id="notification"> <!-- Notificacion de Envio - Inicio --> <div id="notification-box"> <div id="notification-box-fondo"> <span id="notification-box-message"></span> <a id="notification-box-button" href="javascript:void(0);" onclick="javascript:closeNotification();">Ok</a> </div> </div> </div> <div class="cuadro-titulo-producto"> <div class="titulo-formulario"> Formulario de Reclamos</div> <div class="titulo-producto"> Datos del Cliente</div> </div> <div class="cuadro1"> <div class="box1"> <div class="titulo1"> <span class="titulos-style">Nombre completo:</span> </div> <div class="inputtext1"> <div class="input-field-fondo-name"> <input id="name" name="name" class="input-field-main required info" type="text"/> </div> <span class="error">*</span> </div> </div> <div class="box1"> <div class="titulo1"> <span class="titulos-style">Teléfono:</span> </div> <div class="inputtext1"> <div class="input-field-fondo-phone"> <input id="phone" name="phone" class="input-field-main required solo-numero info" onkeydown="return ( event.ctrlKey || event.altKey || (47<event.keyCode && event.keyCode<58 && event.shiftKey==false) || (95<event.keyCode && event.keyCode<106)|| (event.keyCode==8) || (event.keyCode==9) || (event.keyCode>34 && event.keyCode<40) || (event.keyCode==46) )" type="text"/></div> <span class="error">*</span> </div> </div> <div class="box2"> <div class="titulo2"> <span class="titulos-style">E-mail:</span> </div> <div class="inputtext2"> <div class="input-field-fondo-email"> <input id="email" name="email" class="input-field-main info required mail" type="text"/></div> <span class="error">*</span> </div> </div> </div> <div class="cuadro1"> <div class="box1"> <div class="titulo1"> <span class="titulos-style">Número de Factura:</span> </div> <div class="inputtext1"> <div class="input-field-fondo-name"> <input id="company" name="company" class="input-field-main required info" type="text"/> </div> <span class="error">*</span> </div> </div> <div class="box4"> <div class="titulo4"> <span class="titulos-style">Número de Factura:</span> </div> <div class="inputtext4"> <div class="input-field-fondo-browse"> <input type="file" name="adjunto" id="adjunto"/> <div class="hidden"> <img alt="" height="20" src="images/formulario-btn-buscar-over.png" width="61" /></div> </div> <span class="error">*</span> </div> </div> </div> <div class="cuadro2"> <div class="box3"> <div class="titulo3"> <span class="titulos-style">Detalles del reclamo:</span> </div> <div class="inputtext3"> <div class="textarea-fondo"> <textarea rows="10" id="comments" name="comments" class="info required" cols="20"></textarea> </div> <span class="error">*</span> </div> </div> </div> <div class="cuadro3"> <div id="error-respuesta"> <span id="error-summary">Falta información requerida.</span> </div> <div class="main-botton"> <div id="send"> <div id="button-send"> <a id="btnenvio" href="javascript:void(0);" onclick="javascript:sendForm();">Enviar</a> </div> </div> </div> </div> </div> </div> <div id="loading"> </div> </form>
Código:
Codigo PHP://Validacion function validateRequired(){ var isValid = true; $('.required').each(function(index, elemt){ if($(elemt).val() == ''){ isValid = false; $(elemt).parent().siblings('span.error').css('display','block'); } else{ $(elemt).parent().siblings("span.error").css('display','none'); } }); $('.required-dda').each(function (index, elemt) { if ($(elemt).val() == '') { isValid = false; $(elemt).parent().parent().siblings('span.error').css('display', 'block'); } else { $(elemt).parent().parent().siblings("span.error").css('display', 'none'); } }); return isValid; } //Validacion de E-mail function validateMail(){ var emailreg = /^[a-zA-Z0-9_\.\-]+@[a-zA-Z0-9\-]+\.[a-zA-Z0-9\-\.]+$/; var isValid = true; $('.mail').each(function (index, elemt){ if( $(elemt).val() != "" && !emailreg.test($(elemt).val())){ isValid = false; $(elemt).parent().siblings('span.error').css('display','block'); } }); return isValid; } //Validacion CheckBox function validateSub1() { var isValid = false; $('.input-field-sub1').each(function (index, elemt) { if ($(elemt).is(':checked')) { isValid = true; } }); if (isValid) { $('#error-sub1').css('display', 'none'); } else { $('#error-sub1').css('display', 'block'); } return isValid; } //Envio del Correo function sendForm(){ var isValid = validateRequired(); //Variables de cada Input, Drop Down var name = $('#name').val(); var email = $('#email').val(); var company = $('#company').val(); //var account = $('#account').val(); var phone = $('#phone').val(); var comments = $('#comments').val(); //var adjunto = $_FILES['adjunto']; var param = { name: name, email: email, company: company, phone: phone, comments: comments }; //if (!validateMail() + !validateSub1()) { if (!validateMail()) { isValid = false; } if(isValid){ var request = $.ajax({ type: "POST", url: "scripts/form-sender-dd.php", data: param, enctype: 'multipart/form-data', }); $('#error-summary').hide(); //Mensaje de correo enviado correctamente request.done(function (msg){ openNotification('Su solicitud de envío a sido recibida.'); }); //Mensaje de correo enviado fallido request.fail(function (jqXHR, textStatus) { openNotification('Error al enviar su solicitud.'); }); } else { $('#error-summary').show(); } }
Código PHP:
<?php
header('Content-Type: text/html; charset=utf-8');
require_once('includes/class.phpmailer.php');
$mail = new PHPMailer();
// Server
// Enables SMTP debug information (for testing)
// 0 = off
// 1 = errors and messages
// 2 = messages only
$mail->IsSMTP();
$mail->SMTPAuth = true;
$mail->SMTPSecure = "tls";
$mail->Host = "xxxxxx";
$mail->Username = "xxxxx";
$mail->Password = "xxxx";
$mail->Port = 587;
$mail->SMTPDebug = 0;
// Sender Variables (debe de ir antes de las variables de envio)
$name=$_POST['name'];
$email=$_POST['email'];
$subject=$_POST['name'];
$adjunto = $_FILES['adjunto'];
// $subject=$name=$_POST['name'];
$mail->From = "xxxx";
$mail->FromName = $name;
$mail->AddReplyTo($email);
$mail->Subject = $subject;
$mail->AddAddress('xxxxxxx');
$mail->ContentType = "text/html";
$mail->CharSet = "iso-8859-1";
$mail->IsHTML(true);
$mail->WordWrap = 50;
$mail->AddAttachment($adjunto['tmp_id'], $adjunto['id']);
if($_POST)
{
//$account=$_POST['account'];
$company=$_POST['company'];
$phone=$_POST['phone'];
$comments=$_POST['comments'];
$mail->Body = '<style type="text/css">
<!--
.Estilo1 {
font-family: Arial;
font-size: 12px;
}
.Tabla_Contacto td {
border: 1px solid #CCCCCC;
padding: 5px 5px 10px 5px;
}
.Estilo2 {
color: #E2020D;
font-weight: bold;
}
.tr-size {
font-family: Arial;
font-size: 12px;
width: 130px;
}
-->
</style>
<table width="900" border="0" cellspacing="0" cellpadding="0" class="Tabla_Contacto">
<tr>
<td class="tr-size"><strong>Nombre:</strong></td>
<td class="Estilo1">' . $name . '</td>
</tr>
<tr>
<td class="tr-size"><strong>E-mail:</strong></td>
<td class="Estilo1">' . $email . '</td>
</tr>
<tr>
<td class="tr-size"><strong>Telefono:</strong></td>
<td class="Estilo1">' . $phone . '</td>
</tr>
<tr>
<td class="tr-size"><strong>Numero Factura:</strong></td>
<td class="Estilo1">' . $company . '</td>
</tr>
</table>
<table width="900" border="0" cellspacing="0" cellpadding="0" class="Tabla_Contacto">
<tr>
<td class="tr-size"><strong>Comentarios:</strong></td>
<td colspan="2" class="Estilo1">' . nl2br(stripslashes($comments)) . '</td>
</tr>
</table>';
$mail->Send();
}
else{
}
?>
AYUDAAAAAAAAAAAAAAAAAAAAAAAAAAAA