Hvordan sende e-postvedlegg i PHP
Sende e-post fra en nettside er en ganske vanlig oppgave, og ofte sender en vedlagt fil er nødvendig --- kanskje du sender en database dump eller et bilde som en bruker opp. Mens standard PHP biblioteket inneholder funksjonalitet for å sende vanlig, vanlig tekst epost, støtte for mer avanserte e-postfunksjoner (for eksempel HTML og vedlegg) er tilgjengelig, men kan virke komplisert for nybegynneren. Disse funksjonene, men er levert av PEAR :: Mail_Mime pakken, som er fritt tilgjengelig fra PEAR depotet. PEAR er en PHP-komponent distribusjonssystem som inneholder gratis PHP-biblioteker og klasser, og er et ideelt utgangspunkt når gjennomføre en ny oppgave i PHP.
Bruksanvisning
1 Installer PEAR :: Mail_Mime pakken på systemet (både utviklingsplattform og server). (Hvis systemet ikke har PEAR installert, kan du se "Ressurser"). Bruk følgende kommando i en kommandolinjen:
pære installere Mail_Mime
Dette vil installere den nyeste versjonen av Mail_Mime pakken fra PEAR repositories.
2 Åpne din PHP script i en teksteditor / utviklingsmiljø av valget. Dette kan være en eksisterende PHP-script som du har tenkt på å legge til funksjonalitet eller et nytt manus å omfatte postfunksjonene for systemet.
3 Inkluder Mail.php og Mail / mime.php scripts i din php script:
<? Php
omfatte ( 'Mail.php');
inkluderer ( 'Mail / mime.php');
4 Bygg innholdet i meldingen (etter de ovennevnte "inkludere" utsagn) og tilhørende info:
$ MsgText = "Dette er teksten i e-posten Ganske kjedelig, he.?";
$ MsgHtml = "<html> <body> Dette er HTML-e-post - <strong> super kul </ strong> </ body> </ html>";
$ ToAttach = "/path/to/our/file.txt";
$ MsgHeaders = array ( 'From' => '[email protected]', 'emne' => 'Dette er en testmelding Det er mange liker det, men dette er mitt..');
5 Lag Mail_Mime objekt (igjen, under det som ble lagt over):
// Parameteren er valgfri, men vi trenger å sette den til "\ n" siden vi kommer til å sende det
// Via Mail pakke
$ MailMime = ny Mail_Mime ( '\ n');
$ MailMime-> setTXTBody ($ msgText);
$ MailMime-> setHTMLBody ($ msgHtml);
$ MailMime-> addAttachment ($ toAttach, 'text / plain');
6 Bygg Mail objektet som blir brukt til å sende meldingen:
$ MsgBody = $ mailMime-> get ();
$ MsgHeaders = $ mailMime-> overskrifter ($ msgHeaders);
$ MailObject = & Mail :: fabrikk ( 'post');
$ MailObject-> sende ('[email protected] ', $ msgHeaders, $ msgBody);