Hvordan sende e-postvedlegg i PHP

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);