ugrás a tartalomhoz

MMS-t nem tölti le rendesen

morc26 · 2006. Ápr. 6. (Cs), 14.56
Sziasztok. Nekem egy olyan problémám lenne van egy pop3 leszedőm ami kiszedi az emailből az attachmen részt és lementi a szerverre 1 mappába. Ez mind oké,és működik is, de amit mobilról küldenek mms-ben azt istenért nem akarja leszedni. Tudja,hogy ott van,és lehúzza mert eltünik a postafiókból viszont a mappában nincs, logolásnál is csk egy üres részt hagy a fájlnak,hogy valami van ott! Tud valaki segíeni? Csak a mobilról küdött levelekel csinálja ezt. Ő így néz ki.
  1. <?php  
  2. class readattachment  
  3. {  
  4.       
  5.         function getdecodevalue($message,$coding)  
  6.         {  
  7.         if ($coding == 0)   
  8.         {   
  9.            $message = imap_8bit($message);   
  10.         }   
  11.         elseif ($coding == 1)   
  12.         {   
  13.           $message = imap_8bit($message);   
  14.         }   
  15.         elseif ($coding == 2)   
  16.         {   
  17.            $message = imap_binary($message);   
  18.         }   
  19.         elseif ($coding == 3)   
  20.         {   
  21.        $message=imap_base64($message);   
  22.        }   
  23.         elseif ($coding == 4)   
  24.         {   
  25.            $message = imap_qprint($message);   
  26.         }   
  27.         elseif ($coding == 5)   
  28.         {   
  29.          $message = imap_base64($message);   
  30.         }   
  31.         return $message;  
  32.         }  
  33.   
  34.             function getdata($host,$login,$password,$savedirpath)  
  35.             {  
  36.             $mbox = imap_open ($host,  $login$passwordor die("can't connect: " . imap_last_error());  
  37.             $message = array();  
  38.             $message["attachment"]["type"][0] = "text";  
  39.             $message["attachment"]["type"][1] = "multipart";  
  40.             $message["attachment"]["type"][2] = "message";  
  41.             $message["attachment"]["type"][3] = "application";  
  42.             $message["attachment"]["type"][4] = "audio";  
  43.             $message["attachment"]["type"][5] = "image";  
  44.             $message["attachment"]["type"][6] = "video";  
  45.             $message["attachment"]["type"][7] = "other";  
  46.               
  47.             for ($jk = 1; $jk <= imap_num_msg($mbox); $jk++)  
  48.             {  
  49.             $structure = imap_fetchstructure($mbox$jk , FT_UID);      
  50.             $parts = $structure->parts;  
  51.             $fpos=2;  
  52.                     for($i = 1; $i < count($parts); $i++)  
  53.                        {  
  54.                         $message["pid"][$i] = ($i);  
  55.                         $part = $parts[$i];  
  56.   
  57.                         if($part->disposition == "ATTACHMENT")   
  58.                             {  
  59.                               
  60.                             $message["type"][$i] = $message["attachment"]["type"][$part->type] . "/" . strtolower($part->subtype);  
  61.                             $message["subtype"][$i] = strtolower($part->subtype);  
  62.                             $ext=$part->subtype;  
  63.                             $params = $part->dparameters;  
  64.                             $filename=$part->dparameters[0]->value;  
  65. ?>  
 
1

Dump?

janoszen · 2006. Ápr. 6. (Cs), 17.48
Próbáld meg kidumpolni egy MMS raw adatait és összehasonlítani egy e-mail raw adataival ill. tedd föl valahová, hogy megnézhessük. Talán rájövünk.
2

attach

morc26 · 2006. Ápr. 6. (Cs), 18.53
Így jön le a kettő.

MMS mail:

Content-Type: image/jpeg; name=DSCF1422.JPG
Content-Transfer-Encoding: base64
X-Attachment-Id: 0.1
Content-Disposition: attachment;
filename="DSCF1422.JPG"

Normál ami jó:

Content-Type: image/jpeg;
name="P1030649.JPG"
Content-Transfer-Encoding: base64
Content-Disposition: attachment;
filename="P1030649.JPG"


csak ez a X-Attachment-Id: 0.1 a különbség a két mail között.
3

Nem egészen...

janoszen · 2006. Ápr. 6. (Cs), 20.36
Nem egészen, mert a name pontosvessző után van. Lehet, hogy ez a hiba? Elképzelhető, hogy nem annyira okos az értelmező és nem tudja a pontosvesszős szintaktikát és ezért nem ismeri a mime type-ot.

Mert az X-Attachment-Id extension header, elvileg figyelmen kívül kellene hagyni.

Ezeket ellenőrizd le sztem és ha nem mész semmire, akkor nem marad más, mint a hosszú és kínkeserves debug, amiben szívesen segítek egyébként.
4

attach

morc26 · 2006. Ápr. 8. (Szo), 04.16
Semmi változás nem történt a " elhagyásával. debug dolgot én nagyon nem vágom