estoy tratando de enviar una notificacion por mail con un archivo que previamente se ha subido a mi servidor, pero no logro hacer que el archivo quede adjunto en el correo...
Este es el Script que estoy usando...
Código PHP:
$usuario= 'ElUsuario';
$Matriz = urldecode($_GET[matriz]);
$To = '[email protected]';
$hoy = date("F j, Y, g:i a");
$archivo = "http://midiminio.com/upl/CAPACITACIONES.csv"; //Esta es la ubicación de mi archivo
$file = fopen($archivo, "r");
$contenido = fread($file, filesize($archivo));
$encoded_attach = chunk_split(base64_encode($contenido));
fclose($file);
$email="[email protected]";
$mensaje='Se ha subido la Matriz '.$Matriz.' Por el usuario: '.$usuario.', El: '.$hoy;
$cabeceras = "From: [email protected]\n";
$cabeceras .= "Reply-To: $email\n";
$cabeceras .= "MIME-version: 1.0\n";
$cabeceras .= "Content-type: multipart/mixed; ";
$cabeceras .= "boundary=\"Message-Boundary\"\n";
$cabeceras .= "Content-transfer-encoding: 7BIT\n";
$cabeceras .= "X-attachments: CAPACITACIONES.csv";
$body_top = "--Message-Boundary\n";
$body_top .= "Content-type: text/plain; charset=US-ASCII\n";
$body_top .= "Content-transfer-encoding: 7BIT\n";
$body_top .= "Content-description: Mail message body\n\n";
$cuerpo = $body_top.$mensaje;
$nombref = "CAPACITACIONES.csv";
$cuerpo .= "\n\n--Message-Boundary\n";
$cuerpo .= "Content-type: Binary; name=\"$nombref\"\n";
$cuerpo .= "Content-Transfer-Encoding: BASE64\n";
$cuerpo .= "Content-disposition: attachment; filename=\"$nombref\"\n\n";
$cuerpo .= "$encoded_attach\n";
$cuerpo .= "--Message-Boundary--\n";
echo '
<div style="border:solid 1px #369; padding:10px; box-shadow:0px 0px 10px #f00; margin:10px;" width="710">
<h1 style="text-align: center;">
</h1>
<h1 style="text-align: center;">
La Matriz <br>'.$Matriz.'<br> Se ha subido con éxito
</h1>
<p>
</p>
</div>
';
mail($To,'Matriz Subida',$cuerpo, $cabeceras);