Ver Mensaje Individual
  #1 (permalink)  
Antiguo 26/05/2011, 09:26
chemon
 
Fecha de Ingreso: agosto-2004
Mensajes: 312
Antigüedad: 20 años, 3 meses
Puntos: 0
Enviar mail con adjunto en php

Saludos a todos
Estoy tratando de enviar un email con contenido adjunto
Después de varios quebraderos de cabeza encontré entre mis apuntes un código que me permitia enviarlo.
El problema es que me envía el archivo adjunto pero no consigo que muestre el texto del mensaje.
Ya he comprobado que el texto del mensaje si que se carga bien en el código. Y no puedo utilizar una de las librerias que permiten gestionar el envío de correos ya que mi cliente trabaja con PHP4.2 y no he conseguido hacer funcionar ninguna de las que he probado

Os adjunto el código por si alguien ve algo que a mi se me pasa

Código PHP:
Ver original
  1. $mi_fichero = $_FILES['fichero']['tmp_name'];
  2.             $tamanio_fichero = filesize($mi_fichero);
  3.             $puntero = fopen($mi_fichero, "r");
  4.             $contenido = fread($puntero, $tamanio_fichero);
  5.             fclose($puntero);
  6.            
  7.             $contenido_codificado = chunk_split(base64_encode($contenido));
  8.            
  9.             $cabecera = "From: [email protected]\n";
  10.             //$cabecera .= "Reply-To: [email protected]\n";
  11.             $cabecera .= "MIME-version: 1.0\n";
  12.             $cabecera .= "Content-type: multipart/mixed; boundary=\"Mi-Separador\"\n";
  13.             $cabecera .= "Content-transfer-encodign: 7BIT";
  14.            
  15.             $separador_inicial="--Mi-Separador";
  16.             $cabecera_mensaje = "Content-type: text/plain; charset=US-ASCII\n";
  17.             $cabecera_mensaje .= "Content-transfer-encoding: 7BIT \n\n";
  18.            
  19.             $separador = "\n\n--Mi-Separador\n";
  20.             $cabecera_anexo = "Content-type:".$_FILES['fichero']['type']."; name=\"".$_FILES['fichero']['name']."\"\n";
  21.             $cabecera_anexo .= "Content-Transfer-Encoding: BASE64\n";
  22.             $cabecera_anexo .= "Content-disposition: attachment; filename=\"".$_FILES['fichero']['name']."\"\n\n";
  23.            
  24.             $cuerpo = $separador_inicial;
  25.             $cuerpo .= $cabecera_mensaje;
  26.             $cuerpo .= "AQui texto del mensaje:<br>".$texto."<br />FIN msg";
  27.             $cuerpo .= $separador;
  28.             $cuerpo .= $cabecera_anexo;
  29.             $cuerpo .= $contenido_codificado;
  30.             $cuerpo .= "\n".$separador_inicial."--\n";

Muchas gracias por adelantado