Pergunta : Problemas using funções do imap

Eu estou tentando construir um parser do mensagem de correio electrónico para nosso local. O que eu estou indo eventualmente fazer é iterar através das mensagens que têm acessórios e excepto o acessório se a mensagem vem de um email address particular. o
This é apenas o teste inicial, entretanto, mim está funcionando em problemas, considera o class= " lineNumbers " >
1 do >

 \ n”;
  $mailuser= " [email protected] ";
  
  eco “User=$mailuser”. “
\ n”; ; $mailpass= " mypassword "; eco “Pass=$mailpass”. “
\ n”; // teve que usar este porque nós temos o SSL no local e o porto regular 110 não trabalhou $mailhost= " {localhost: 995/pop3/ssl/novalidate-cert} “; eco “Host=$mailhost”. “
\ n”; $mailbox=imap_open ($mailhost, $mailuser, $mailpass) ou morrem (“
\ nFAILLED! ” .imap_last_error ()); $check = imap_check ($mailbox); a última mensagem de // analisada gramaticalmente será armazenada na lima msgcounter.dat $firstmsg = file_get_contents (“msgcounter.dat ") + 1; $lastmsg = $firstmsg+$check->Recent; // deve ser índice dos msg do == último + contagem das mensagens as mais atrasadas ecoar “primeiramente: ”. $firstmsg. “- Último: ”. $lastmsg. “
”; $result = imap_fetch_overview ($mailbox, “$firstmsg: $lastmsg”); print_r ($result); os retornos de // esvaziam a disposição foreach ($result como $overview) { // nunca incorpora este laço. eco “# {$overview->msgno} ({$overview->date}) - de: {$overview->from} } {de $overview->subject \ n "; } // que a seguinte aproximação não trabalhou tampouco, mantido começ avisos aproximadamente Número de mensagem mau de // // // algumas mensagens na seqüência foi suprimido. /* para ($index = $firstmsg-1; <= de $index ($lastmsg); $index++) { se (strlen (guarnição (imap_fetchheader ($mailbox, $index))) > 0) { eco “no laço do índice da mensagem: ”. $index; } } * imap_close ($mailbox); eco “terminado.”. “
\ n”; ; ? class= > " desobstruído " de >
class= do

Resposta : Problemas using funções do imap

A APROVAÇÃO, é aqui a resposta a meu problema…
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
45:
46:
47:
48:
49:
50:
51:
52:
53:
54:
55:
56:
57:
58:
59:
60:
61:
62:
63:
64:
65:
66:
67:
68:
69:
70:
71:
72:
73:
74:
75:
76:
77:
\nFAILLED! ".imap_last_error());

  // The IMAP.xml file contains the email address and user_id of the users that we accept 
  // their files via email 
  $xml = simplexml_load_string(file_get_contents('IMAP.xml'));
  $result = $xml->xpath (“artigo ");
  quando (lista (, $node) = cada um ($result)) {
    $email   = $node->LI_email;
    $user_id = $node->LI_user_id;
    $SEARCH  = “DE DESPERCEBIDO \ “$EMAIL \ "";
    $result2 = imap_search ($mailbox, $search);
    se ($result2) {
      $index = $result2 [0];
      $structure = imap_fetchstructure ($mailbox, $index);
      
      $attachments = disposição ();
      se (contagem do && do isset ($structure->parts) ($structure->parts)) {
        para ($i = 0; peças < count="">de $i); $i++) {
          $attachments [$i] = disposição (
            => do “is_attachment” falso,
            “nome de arquivo” => '',
            “nome” => '',
            “acessório” => '');
          
          se ($structure->parts [$i] - >ifdparameters) {
            foreach ($structure->parts [$i] - >dparameters como $object) {
              se (nome de arquivo do == do strtolower ($object->attribute) “") {
                $attachments [$i] [“is_attachment”] = retificam;
                $attachments [$i] [“nome de arquivo”] = $object->value;
              }
            }
          }
          
          se ($structure->parts [$i] - >ifparameters) {
            foreach ($structure->parts [$i] - >parameters como $object) {
              se (nome do == do strtolower ($object->attribute) “") {
                $attachments [$i] [“is_attachment”] = retificam;
                $attachments [$i] [“nome”] = $object->value;
              }
            }
          }
          
          se ($attachments [$i] [“is_attachment”]) {
            $attachments [$i] [“acessório”] = imap_fetchbody ($mailbox, $index, $i+1, FT_PEEK);
            se ($structure->parts [$i] - == >encoding 3) {// 3 = BASE64
              $attachments [$i] [“acessório”] = base64_decode ($attachments [$i] [“acessório”]);
            }
            elseif ($structure->parts [$i] - == >encoding 4) {// 4 = QUOTED-PRINTABLE
              $attachments [$i] [“acessório”] = quoted_printable_decode ($attachments [$i] [“acessório”]);
            }
          } // se ($attachments [$i] [“is_attachment”])
        } // para ($i = 0; peças < count="">de $i); $i++)
      } // se (contagem do && do isset ($structure->parts) ($structure->parts))

      para ($i = 0; $i < count=""> 0) {
          $path_parts = pathinfo ($attachments [$i] [“nome de arquivo”]);
          se (strtolower ($path_parts [fecho de correr do == da “extensão”]) “") {
            // eu estou indo fazer algo diferente com limas ziped
          } mais {
            $filename = “file_uploads/”. $user_id. “_”. $path_parts [“nome de arquivo”]. “_” .date (“m_d_Y "). “.”. $path_parts [“extensão”];
            $fp = fopen ($filename, “x”);
            fwrite ($fp, $attachments [$i] [“acessório”]);
            fclose ($fp);
          } // se (strtolower ($path_parts [fecho de correr do == da “extensão”]) “")
        } // se (strlen (guarnição ($attachments [o “nome”])) > 0
      } // para ($i = 0; $i  < count="">
Outras soluções  
 
programming4us programming4us