Foros del Web » Programando para Internet » PHP »

Mail con archivo adjunto

Estas en el tema de Mail con archivo adjunto en el foro de PHP en Foros del Web. Pues bien antes de que me regañen decirles que mi pregunta no es como lo hago, de hecho buscando en le foro he encontrado qeu ...
  #1 (permalink)  
Antiguo 09/11/2005, 18:56
Avatar de mafima  
Fecha de Ingreso: abril-2003
Ubicación: Medellin-Colombia
Mensajes: 1.109
Antigüedad: 14 años, 8 meses
Puntos: 24
Mail con archivo adjunto

Pues bien antes de que me regañen decirles que mi pregunta no es como lo hago, de hecho buscando en le foro he encontrado qeu hemos obtado por dar una respuesta facil: "Existe la siguiente clase que ya esta hecha, la puedes utilizar facilmente"

Sin embargo me vi intrigado un poco y quise saber como se hacian las cosas, entonces recurri a una de las grandes guias que me ha ayudado a entender mucho de PHP, alli despues de una breve explicacion de las diferentes estructuras MIME, hacen alusion a como se envia el mail con ficheros adjuntos.

para ello veo que despues de nombrar el archivo que se pretende adjuntar hacen una lectura del mismo al parecer para codificarlo, pero la verdad no estoy seguro.

me gustaria uqe me ayudarna a entender para que se hace esta lectura del archivo antes de ser adjuntado


Código PHP:
$adj2 .="Content-Type: application/octet-stream; name=\"winzip90.exe\"".$UN_SALTO;
$adj2 .="Content-Disposition: attachment; filename=\"winzip90.exe\"".$UN_SALTO;
$adj2 .="Content-Transfer-Encoding: base64".$DOS_SALTOS


//esto es loq eu les digo que pasa mire que lo abren y lo leen
      
$fp fopen("winzip90.exe""r");
         
$buff fread($fpfilesize("winzip90.exe"));
      
fclose($fp); 
// aca termina

$adj2 .=chunk_split(base64_encode($buff)); 


$adj2 .=$UN_SALTO."--$separador".$UN_SALTO

veran que es algo raro, no se conq ue fun se codifica ni si si es para ello que lo leemos.

tambein quiciera saber si con esa cabecera, tambien se puede enviar archivos .doc es decir de word en vista de que pudiera exitir una mas concreta como lo hay para las imagenes
[php]
Content-Type: application/octet-stream
[php]

Desde ya muchas gracias
__________________
SEO en Medellin
  #2 (permalink)  
Antiguo 09/11/2005, 22:24
Avatar de Vaalegk  
Fecha de Ingreso: abril-2005
Mensajes: 154
Antigüedad: 12 años, 8 meses
Puntos: 2
Bueno ai va:
1. Para que se hace esta lectura del archivo antes de ser adjuntado?

Bueno para eso mismo, para adjuntarlo, en realidad los famosos datos adjuntos en los mensajes de correo son parte del correo en si, es decir en tu mailserver nunca veras un archivo(correo) con los adjuntos aparte. por eso, los mensajes de correo tienen delimitadores(al principio y al final de cada seccion, son los que aparecen en el codigo como "--$separador") los cuales establecen el contenido del mismo(texto, adjuntos), cada parte tiene un tipo MIME y demas informacion. Lo de la codificacion es porque la mas comun la de base 64 y todo cliente de correo la entiende.

2. tambein quiciera saber si con esa cabecera, tambien se puede enviar archivos .doc?

bueno solo es cuestion de saber el tipo mime asociado al documento a adjuntar. ejem: application/msword
para una lista completa:
http://www.uiowa.edu/~uiweb/mime-types.html


bueno se que no fue la explicacion asi como que detallada pero espero haberte ayudado un poco
  #3 (permalink)  
Antiguo 10/11/2005, 11:54
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
Yo uso la classe:

PHP Mailer
http://phpmailer.sourceforge.net

Es decir ... voy a lo "práctico" .. no obstante no está de más conocer como se compone un e-mail.

Un saludo,
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 02:29.