Vraag : Hoe breng ik dit PHP IMAP manuscript ertoe om het lichaam van e-mail te halen?  Ik kan niet het ertoe brengen om te werken.

… Ik heb uit de gebruikersbenaming en het wachtwoord aan de postserver. natuurlijk verlaten.



function translate_object ($obj) {
terugkeer $obj->mailbox. „@“. $obj->host;

}

/* verbindt met gmail */
$hostname = „{10.2.1.248: 995/pop3/ssl/novalidate-cert} INBOX“;
$username = „getoond niet“;
$password = „getoond niet“;

/* probeert om */
$inbox = imap_open ($hostname, $username, $password) of matrijs („kan met server verbinden niet: “. imap_last_error ());

/* greep e-mail */
$emails = imap_search ($inbox, „ALLEN“);

$headers = @imap_headers ($inbox) of matrijs („kon geen e-mail“ krijgen);

$numEmails = sizeof ($headers);

$num = imap_num_msg ($inbox);

echo „u heeft $numEmails in uw mailbox

“;

$message_count = imap_num_msg ($inbox);

$body = maakt (substr (imap_body ($inbox), 0, 10)) in orde;


for ($i = 1; $i < $numEmails+1; $i++)

{

$mailHeader = @imap_headerinfo ($inbox, $i);

$from = $mailHeader->reply_toaddress;

$subject = strip_tags ($mailHeader->subject);

$date = $mailHeader->date;



echo „From: “ .implode (', ', array_map („translate_object“, $mailHeader->from)). "
Subject: $subject
Date: $date
Message: $body
“;

}

/* sluit de verbinding */
imap_close ($inbox);

? >

Antwoord : Hoe breng ik dit PHP IMAP manuscript ertoe om het lichaam van e-mail te halen?  Ik kan niet het ertoe brengen om te werken.

Hier is hoe ik het in één van mijn manuscripten verscheidene jaren geleden deed.

Dit manuscript werd gebruikt om e-mail van de managers die van de honkballiga te vangen scores via e-mail melden. Het onderwerp moest als dit worden geformatteerd:
Score-221-4-0-42

Betekenend dat dit de score die voor game#221 met score 4-0 met team 42 worden gemeld die de score melden is.
Ik had de spelgegevens een bericht e-mail worden bijgewerkt en worden verzonden naar webmaster, ligavoorzitter en het team die de score die meldde.
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:
78:
79:
80:
81:
82:
83:
84:
85:
86:
87:
88:
89:
90:
91:
92:
93:
94:
95:
96:
97:
98:
99:
100:
101:
102:
103:
104:
105:
106:
107:
108:
109:
110:
111:
112:
113:
114:
115:
116:
117:
118:
119:
120:
121:
122:
123:
124:
125:
");
           print("  ");
           print("    imap_check");
           print("  ");
           print("  ");
           print("    
"); 
           print("      Date most recent message : " . $check->Datum); 
           druk („      
„); druk (het „ type van Verbinding: “. $check->Driver); druk („
„); druk („ Naam van de brievenbus: “. $check->Mailbox); druk („
„); druk („ Aantal berichten: “. $check->Nmsgs); druk („
„); druk („ Aantal recente berichten: “. $check->Recent); druk („
„); druk („
„); } // die gaan moeten van een lus voorzien en de nieuwe berichten vinden die // dat wij nog niet hebben ontleed. sla het laatste bericht num // in een tekstdossier op. // opent het tegendossier en krijgt het laatste bericht gecontroleerd. // toen lijn door de berichten die bij het laatste // gecontroleerde bericht beginnen + 1. $lastmsg = file_get_contents („msgcounter.dat“) + 1; // krijgt kopbal voor bericht voor ($index = $lastmsg-1; $index <>Nmsgs; $index++) {$games = serie (); $recips = serie (); $header = imap_header ($mailbox, $index); als ($debug) {druk (“
„); 
             druk (de „      Datum van de Kopbal: “. $header->Date. „
„); $toname = $header->to [0] - >personal; $toaddress = „<“. $header->to [0] - >mailbox. „@“. $header->to [0] - >host. „>“; druk („Kopbal: “. $toname. „„. $toaddress. “
„); $fromname = $header->from [0] - >personal; $fromaddress = „<“. $header->from [0] - >mailbox. „@“. $header->from [0] - >host. „>“; druk („Kopbal van: “. $fromname. „„. $fromaddress. “
„); druk („ Kopbal CC: “. $header->cc. „
„); druk („ Kopbal ReplyTo: “. $header->ReplyTo. „
„); druk („ Onderworpen Kopbal: “. $header->Subject. „
„); druk (“
„); 
             druk (      htmlspecialchars (quoted_printable_decode (imap_body ($mailbox, $index)))); 
             druk („    
„); } anders {// score-221-4-0-42 lijst ($sub, $gamenum, $visitorscore, $homescore, $teamnum) = verdeelt (“ - „, $header->Subject); // werkt nu de spelenlijst bij SLECHTS als vaiable $sub = als „noteert“ (strcasecmp ($sub, „SCORE“) == 0) {$sql = „updatespelen \ n“; $sql. = „plaats visitorscore =“. $visitorscore. “, homescore = „. $homescore. “ \ n "; $sql. = „waar gamenum =“. $gamenum. „en \ n“; $sql. =“ (\ n "; $sql. = „(homeid =“. $teamnum. „) \ n“; $sql. =“ of \ n "; $sql. = „(visitorid =“. $teamnum. „) \ n“; $sql. =“) \ n "; // doet hier het materiaal… druk van OB ($sql); // voegt aan serie $games voor later rapportering toe array_push ($games, serie ($gamenum, $visitorscore, $homescore)); // voegt de afzender van deze e-mail aan $recips serie // voor recentere het verzenden bevestiging e-mail $fromname toe = $header->from [0] - >personal; $fromaddress = „<>van [0] - >mailbox. „@“. $header->from [0] - >host. „>“; array_push ($recips, $fromname.“ „. $fromaddress); } imap_close ($mailbox); // Opslag het laatste gecontroleerde berichtaantal aan het tegendossier. druk ($index. “ \ n "); //file_put_contents („msgcounter.dat“, $index); als (! $handle = fopen („msgcounter.dat“, „w“)) {de echo „kan dossier („msgcounter.dat“) openen niet“; uitgang; } // schrijft $index aan ons geopend dossier. als (fwrite ($handle, $index) VALSE ===) {de echo „kan aan dossier („msgcounter.dat“) schrijven niet“; uitgang; } fclose ($handle); }} // verzendt nu bevestigingen naar de Afzender van het Bericht, de Voorzitter van de Liga en Webmaster $headers = „nabootsenen-Versie: 1.0 \ n“; $headers. = „Tevreden-Type: tekst/vlakte; charset=iso-8859-1 \ n“; $headers. = „X-Prioriteit: 3 \ n“; $headers. = „X-MSMail-Prioriteit: Normale \ n“; $headers. = „X-Mailer: php \ n“; $headers. = „Van: \ „Geautomatiseerde Scores \“ <>\ n "; $message = de „Score voor dit spel is gemeld: \ n“; voor ($i = 0; $i <>onderwerp, $message, $headers); post ($webmasteremail, „Gemelde Score“ + $header->Subject, $message, $headers); voor ($i = 0; $i <>onderwerp, $message, $headers); }} anders {druk („kan geen brievenbus“ openen); }? >
Andere oplossingen  
 
programming4us programming4us