Сохранить аттач из письма в файл.

  • Автор темы mixer76
  • Дата начала

mixer76

Guest
Сохранить аттач из письма в файл.

Через imap_fetchbody получил картинку в качестве строки. Размер строки (через sizeof) равняется 1. если вывести это строку через echo, то нормально выводиться картинка. А если через ImageGif, то не выводиться, т.е. я даже размеры картинки не могу узнать.
Что делать ?

Вот пример кода.

for ($msgid = 1; $msgid <= $num_messages; $msgid++){
echo "message = ".($msgid)."<br/>\n";
$structure = imap_fetchstructure($mbox,$msgid);

if ($structure){

$parts = $structure->parts;
$partnumber=0;
foreach ($structure->parts as $part ){
if (strtoupper($part->disposition) == "ATTACHMENT"){
echo "partnumber=$partnumber<br/>\n";
echo "part->encoding = ".$part->encoding."<br/>\n";
$atype = $part->subtype;

if ($atype =="GIF" || $atype=="JPEG"){

$img = imap_fetchbody($mbox,$msgid, $partnumber+1);
if ($part->encoding == 3)
$img = base64_decode($img);
elseif ($transfer == 4)
$img = imap_qprint($img);
if ($atype =="GIF")
ImageGIF($img,"temp.gif");
else
ImageJPEG($img,"temp.jpg");
// echo img;
} // is gif or jpeg
} // "ATTACHMENT"
$partnumber++;
} //foreach
} // if ($structure)
} // for
 

SiMM

Новичок
> Размер строки (через sizeof) равняется 1
[m]sizeof[/m], и больше не пиши подобную чушь.
> если вывести это строку через echo, то нормально выводиться картинка
[m]filesystem[/m]
> А если через ImageGif
[m]imagegif[/m], и больше не пиши такую чушь.
 

mixer76

Guest
Спасибо, конечно что дал мне ссылки на imagegif, которую я уже просмотрел много раз, а теперь ну не получается у меня с ImageGIF ее воспользоваться в ДАННОМ случае. В чем дело не могу понять. Я понимаю если бы я написал в раздел форума профессионалов. Так в чем моя ошибка работы с ImageGIF в ДАННОМ случае.
 
Сверху