[Suche] Script um Emailanhang abzuspeichern

Dieses Thema im Forum "Programmierung & Entwicklung" wurde erstellt von thug-life, 17. Dezember 2013 .

Schlagworte:
Status des Themas:
Es sind keine weiteren Antworten möglich.
  1. Diese Seite verwendet Cookies. Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies. Weitere Informationen
  1. #1 17. Dezember 2013
    Hallo Zusammen,

    ich suche ein Script, welches sich zu einem Postfach verbindet, schaut ob neue
    Mails da sind und anschließend die Mailanhänge in ein Verzeichnis ablegt.

    Der Datenanhang wird Excel sein, soll auch nur Excel abspeichern.
    Sollte auf einem Linux System laufen.

    Kennt da jemand schon vielleicht was ?

    Gruß
    thug-life
     

  2. Anzeige
  3. #2 18. Dezember 2013
  4. #3 19. Dezember 2013
    AW: [Suche] Script um Emailanhang abzuspeichern

    Vielen Dank für die Rückmeldung.
    Ich werde mir das heute ansehen und eine Rückmeldung geben.

    Gruß
    thug-life
     
  5. #4 20. Dezember 2013
    AW: [Suche] Script um Emailanhang abzuspeichern

    Leider nicht das was ich suche.

    Folgendes soll getan werden:

    Emails sollen von einem MS Exchange Postfach über ein Script (solange es unter
    Linux läuft auch egal was für eins) in einem Postfach geprüft werden, sobald eine
    neue Email entdeckt wird, soll anschließend der Datenanhang dieser Mail auf einen
    definierbaren Pfad gesichert werden können. Die Email kann anschließend gelöscht
    werden.

    Gruß
    thug-life
     
  6. #5 15. Januar 2014
    AW: [Suche] Script um Emailanhang abzuspeichern

    Hallo Zusammen,

    nun habe ich folgendes Script:

    get.php
    Code:
    <?
    require_once("attachmentread.class.php");
    $host="{mailserverIP:110/pop3}";
    $login="username"; // 
    $password="passwort";
    //$savedirpath="\\server1.home.local@user:passwort\hier\kommt\ein\verzeichniss" ;
    $savedirpath="/var/www/getemail/";
    $jk=new readattachment(); 
    $jk->getdata($host,$login,$password,$savedirpath);
    ?>
    
    attachmentread.class.php

    Code:
    <?
    class readattachment
    {
     
     function getdecodevalue($message,$coding)
     {
     if ($coding == 0) 
     { 
     $message = imap_8bit($message); 
     } 
     elseif ($coding == 1) 
     { 
     $message = imap_8bit($message); 
     } 
     elseif ($coding == 2) 
     { 
     $message = imap_binary($message); 
     } 
     elseif ($coding == 3) 
     { 
     $message=imap_base64($message); 
     } 
     elseif ($coding == 4) 
     { 
     $message = imap_qprint($message); 
     } 
     elseif ($coding == 5) 
     { 
     $message = imap_base64($message); 
     } 
     return $message;
     }
    
     function getdata($host,$login,$password,$savedirpath)
     {
     $mbox = imap_open ($host, $login, $password) or die("can't connect: " . imap_last_error());
     $message = array();
     $message["attachment"]["type"][0] = "text";
     $message["attachment"]["type"][1] = "multipart";
     $message["attachment"]["type"][2] = "message";
     $message["attachment"]["type"][3] = "application";
     $message["attachment"]["type"][4] = "audio";
     $message["attachment"]["type"][5] = "image";
     $message["attachment"]["type"][6] = "video";
     $message["attachment"]["type"][7] = "other";
     
     for ($jk = 1; $jk <= imap_num_msg($mbox); $jk++)
     {
     $structure = imap_fetchstructure($mbox, $jk , FT_UID); 
     $parts = $structure->parts;
     $fpos=2;
     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="";
     $mege = imap_fetchbody($mbox,$jk,$fpos); 
     $filename="$filename";
     $fp=fopen($filename,w);
     $data=$this->getdecodevalue($mege,$part->type); 
     fputs($fp,$data);
     fclose($fp);
     $fpos+=1;
     
     
     
     }
     
     }
    //imap_delete tags a message for deletion
     //imap_delete($mbox,$jk);
     
     }
    // imap_expunge deletes all tagged messages
     //imap_expunge($mbox);
     imap_close($mbox);
     }
    }
    
    
    ?>
    
    
    Folgendes funktioniert:
    - er holt die Anhänge ab
    - Speichert diese ab

    Problem:
    - er speichert die Anhänge egal was ich in die Variable schreibe immer dort wo die .php Datein sind

    Ich würde gerne die Datein auf einen anderen Server (Freigabe auf einem Windows Server) abspeichern.

    Kann mir hier jemand helfen ?

    gruß
    thug-life
     

  7. Videos zum Thema
Die Seite wird geladen...
Similar Threads - Script Emailanhang abzuspeichern
  1. Antworten:
    0
    Aufrufe:
    3.526
  2. Antworten:
    6
    Aufrufe:
    2.762
  3. Antworten:
    3
    Aufrufe:
    1.090
  4. Antworten:
    4
    Aufrufe:
    597
  5. Antworten:
    0
    Aufrufe:
    858