Ver Mensaje Individual
  #2 (permalink)  
Antiguo 25/11/2008, 18:27
franco190453
 
Fecha de Ingreso: abril-2006
Mensajes: 1.128
Antigüedad: 18 años
Puntos: 33
Respuesta: Archivos adjuntos con IMAP en PHP

eduardkorn:
estre script lo utilizo para ver los detalles de un correo:
<?php
//if($mensaje->parts[1]->ifdisposition = "1" and $mensaje->parts[1]->disposition = "attachment"){Hacer lo de attachments}
$imap = imap_open("{mail.tusitio.com:143}INBOX","usuario", "contraseña");
//Escoger un mensaje especifico
$message = 1;
//Mostrar todas las propiedades del mensaje
echo "<pre>\n\n";
print_r(imap_fetchstructure($imap, $message));
echo "\n\n</pre>";
$mensaje = imap_fetchstructure($imap, $message);
$partes = count($mensaje->parts);
$partesreales = $partes-1;
if(!$partes) {
echo "El Mensaje No Tiene Archivos Adjuntos<br>";
}
echo "$partes<br>";
echo "El Mensaje Tiene $partesreales Archivos Adjunto(s)!<br>";
echo "Detalles del Archivo Adjunto #1<br>";
$analisar = $mensaje->parts[1];
echo "Este es un Array : $analisar->parameters<br>"; //Array
$seguimos = $analisar->dparameters[0];
echo "Nombre Del Archivo Adjunto: $seguimos->value<br>"; //nuevo.gif
$final = $mensaje->parts[1]->dparameters[0]->value;
$final = trim($final, "=,?"); //Elimina ? y = del inicio o final del nombre.
echo "Nombre Del Archivo Adjunto: $final<br>";
$tamano = $mensaje->parts[1]->bytes;
$tipo = $mensaje->parts[1]->subtype;
echo "El Archivo Adjunto Tiene $tamano bytes!<br>";
echo "El Archivo Adjunto es un Archivo $tipo<br>";
imap_close($imap);
?>
Una vez que logras identificar el archivo adjunto debes de decodificarlo
ya que viene codificado y tratar de guardarlo en algun directorio.
Saludos
Y espero te ayude
franco