Imap attachment php opslaan

Status
Niet open voor verdere reacties.

kenikavanbis

Terugkerende gebruiker
Lid geworden
22 mei 2007
Berichten
2.196
Hoe werkt het om emails attachments in te lezen en op te slaan om er vervolgens mee te werken
een bewerkt sample maar doet niet veel let op er is ook een imap_open() geimplementeert
PHP:
       public function getattachmentof($msgNR,$messageid){
            print $msgNR;
            $structure = imap_fetchstructure($this->msgbox, $msgNR , FT_UID);
            $parts = $structure->parts;
            $fpos=1;
            for($i = 1; $i < count($parts); $i++) {
                $message["pid"][$i] = ($i);
                $part = $parts[$i];
                if($part->disposition == "ATTACHMENT"){
                    $message["type"][$i] = $message["attachment"]["type"][$part->type] . "/" . strtolower($part->subtype);
                    $message["subtype"][$i] = strtolower($part->subtype);
                    $ext=$part->subtype;
                    $params = $part->dparameters;
                    $filename=$part->dparameters[0]->value;
                    $mege="";
                    $data="";
                    $data = imap_fetchbody($this->msgbox,$msgNR,$fpos);
                    $filename="$filename";
                    $fp=fopen($this->placetosave.$filename,"w");
                    $this->decode($data,$part->type);
                    //print_r($data);
                    
                    //fputs($fp,$data);
                    fclose($fp);
                    $fpos+=1;
                }
            }
       }

evolutie is ik kan het aantal attachements lezen maar het juiste nog niet opslaan iemand?
PHP:
       public function getattachmentofB($msgNR,$messageid){
        	//print_r(imap_errors());       	
    		$info = imap_fetchstructure($this->msgbox,$msgNR);
    		$i=0;
    			foreach ($info->parts as $part){
		            print "[part]"+$i;
    				if(isset($part->disposition)&&$part->disposition == "attachment"){
    					$i++;
    					echo $i." Attachment/s found!\n\n";
    					echo 'F:\out\\' . $part->dparameters[0]->value . "\n";
    					//imap_savebody($this->msgbox , "F:\\out\\" . $part->dparameters[0]->value , $msgNR, $i); 
    					exit();
					}
				}
       }
 
Laatst bewerkt door een moderator:
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan