PHP - AYUDA CON CORREO ARCHIVO ADJUNTO

 
Vista:
sin imagen de perfil
Val: 7
Ha aumentado su posición en 23 puestos en PHP (en relación al último mes)
Gráfica de PHP

AYUDA CON CORREO ARCHIVO ADJUNTO

Publicado por Juan Enrique (3 intervenciones) el 26/09/2018 22:03:32
usando PHPMAILER para en el envio de correos

1
$mail->AddAttachment($_FILES['archivo']['tmp_name']);

en esa linea utilizo dentro de enviar-cv.php
si lo dejo tal cual me envia un temporal con mi archivo, pero quiero que envie un archivo no un temporal
el problema es que si remplazo tmp_name por name el programa me envia el siguiente error


Fatal error: Uncaught exception 'phpmailerException' with message 'Could not access file: check-rojo.png' in C:\xampp\htdocs\dynfra.com.mxC\phpmailer.php:1347 Stack trace: #0 C:\xampp\htdocs\dynfra.com.mxC\enviar-cv.php(38): PHPMailer->AddAttachment('check-rojo.png') #1 {main} thrown in C:\xampp\htdocs\dynfra.com.mxC\phpmailer.php on line 1347


el codigo donde lleno el formulario es
1
2
3
<p style=" font-family: sans-serif; font-size:15px; " >Adjuntar CV:</p>
 
<input type='file' name='archivo' >
mi form tiene las propiedades <form name='formulario' id='formulario' method='post' action='enviar-cv.php' target='_self' enctype="multipart/form-data">

no se si me falta un dato o si es cambiando una palabra por otra o agregar un parametro etc. si alquien me puede ayuda, se lo agradeceria de corazon, soy nuevo en esto de php y quiero aprender
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de santi
Val: 588
Bronce
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

AYUDA CON CORREO ARCHIVO ADJUNTO

Publicado por santi (204 intervenciones) el 26/09/2018 23:50:19
Hola,

no he hecho la prueba pero puede que debas asignarle un nombre al archivo adjunto:

1
$mail->AddAttachment($_FILES['archivo']['tmp_name'], 'mi_archivo.png');

Si es el caso deberás saber la extensión del archivo para poder renombrarlo, pero haz la prueba primero con un archivo con la misma extensión que añadas a ver que pasa...

Sino, tengo un tutorial que explica cómo enviar un email con archivo adjunto com php --> http://www.webcamp.es/enviar-email-con-archivo-adjunto-con-php/

A ver si te sirve ;)
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 7
Ha aumentado su posición en 23 puestos en PHP (en relación al último mes)
Gráfica de PHP

AYUDA CON CORREO ARCHIVO ADJUNTO

Publicado por Juan Enrique (3 intervenciones) el 02/10/2018 19:40:30
SOLUCIÓN:
ok el tema de como adjuntar el archivo sin ser temporal lo resolvi de la siguiente manera
aclarando que utilizo php 5.6.3 sino me equivoco

dentro del enviarcorreo.php
agrege la siguiente linea
o mas bien
1
$mail->AddAttachment($_FILES['archivo']['tmp_name']);
cambie la linea por lo siguiente, de esta forma me permite enviar el archivo real con su extencion y no un temporal


1
2
3
4
5
6
7
8
//aqui se agrega el archivo adjunto y se envia con formato normal no como temporal
$uploadfile = tempnam(sys_get_temp_dir(), hash('sha256', $_FILES['archivo']['name']));
 
 
$filename = $_FILES["archivo"]["name"]; // add this line of code to auto pick the file name
//$mail->addAttachment($uploadfile, 'My uploaded file'); use the one below instead
 
$mail->addAttachment($uploadfile, $filename);
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar