GettyImages 697538583 34e5976bad0a422b836b20a3221376e0

PHP posti () ominaisuus on yksinkertainen, helppokäyttöinen ja toimii hyvin, mutta se on myös erittäin joustamaton. Jos haluat määrittää SMTP-palvelimen skriptille tai käyttää SMTP-todennusta, et ole onnekas. Voit voittaa nämä rajoitukset ja lähettää sähköpostia PHP-skriptistäsi SMTP-todennusta käyttämällä sinun on käännyttävä PHP-luokkaan, kuten PHPmailer tai PEAR Mail -paketti.

Sähköpostin lähettäminen PHP Mail -ominaisuuden avulla

Kun käytät PHP:tä. käytetty posti () ominaisuuden avulla voit lähettää sähköpostia suoraan verkkopalvelimeltasi sähköpostipalvelimen sijaan. Jos sinulla on sähköpostipalvelin verkkoisäntäsi kautta tai jopa sähköpostipalvelin toisen isännän kautta, on yleensä parempi lähettää sähköposti sen kautta. Ongelmana on, että PHP posti () ominaisuus ei tarjoa sisäänrakennettua tapaa lähettää sähköpostia SMTP:n kautta. Jotta voit käyttää tätä toimintoa, sinun on asennettava ylimääräinen PHP-luokka. Tässä on joitain toimivia vaihtoehtoja:

  • PHP-postitus
  • SwiftMailer
  • Lähetä postia
  • XpertMailer
  • PEAR Mail

Näytämme sinulle, kuinka käyttää PEAR Mailia, mutta voit käyttää mitä tahansa SMTP:tä tukevaa luokkaa.

Jos verkkopalvelussasi on jo asennettuna yksi tai useampi näistä luokista, sillä on todennäköisesti tilanteeseesi liittyviä opetusohjelmia. Jos näin on, mene eteenpäin ja käytä luokkaa, johon sinulla on pääsy. Käytä tätä menetelmää vain, jos käytät PHP:tä omien sähköpostilomakkeiden luomiseen. Jos käytät sisällönhallintajärjestelmää (CMS), kuten WordPress, etsi laajennus tai sisäänrakennettu toiminto sähköpostin lähettämiseen SMTP:n kautta oman järjestelmän luomisen sijaan.

Kuinka käyttää PEARia sähköpostin lähettämiseen SMTP:n kautta

  1. Varmista, että toimialueesi osoittaa sähköpostipalvelimesi isännän Mail Exchange (MX) -tietueisiin ja kirjoita sähköpostipalvelimesi nimi muistiin. Tämä voi olla esimerkiksi posti.omaverkkotunnus.net tai smtp.omaverkkotunnus.net.

  2. Tarkista, onko PEAR Mail jo asennettu sähköpostipalvelimellesi.

  3. Jos PEAR Mailia ei ole asennettu, ota yhteyttä webmail-isäntään saadaksesi tarkat ohjeet sen asentamiseen.

  4. Kun PEAR Mail on asennettu, muokkaa yhtä PHP-mallitiedostoista seuraavissa osissa tarpeidesi mukaan.

Esimerkki PEAR Mail PHP-skripti SMTP-sähköpostille

Voit halutessasi luoda oman käsikirjoituksesi tyhjästä tai muokata seuraavaa esimerkkiä mieleiseksesi. Varmista, että kirjoitat verkkosähköpostipalvelimesi nimen isäntämuuttujaan ja käytä verkkosähköpostipalvelimesi kirjautumistietoja käyttäjänimi- ja salasanakenttiin.
request_once «Mail.php»;
$from = «Lähettäjän nimi
$to = «Vastaanottajan nimi
$subject = » Aiherivi tässä: «;
$body = » kaikki haluamasi viestit «;
$host = «omapostipalvelin.com»;
$username = «käyttäjänimesi tai sähköpostiosoitteesi»;
$password = «salasanasi»;
$headers = array(‘From’ => $from,
‘To’ => $to,
‘Aihe’ => $aihe);
$smtp = Mail::factory(‘smtp’,
array(‘host’ => $isäntä,
‘auth’ => totta,
‘username’ => $käyttäjänimi,
‘salasana’ => $salasana));
$posti = $smtp->lähetä($vastaanottaja, $headers, $body);
if (PEAR::isError($mail)) {
kaiku(«

» . $mail->getMessage() .»


} erilainen {
kaiku(«

Viesti lähetetty onnistuneesti!



Esimerkki PEAR Mail PHP -skriptistä SMTP-todennukseen ja SSL-salaukseen

Jos haluat käyttää SMTP-todennusta ja SSL-salausta, sinun on tehtävä muutama muutos edelliseen esimerkkiin. Sinun on osoitettava isäntämuuttuja SSL-sähköpostipalvelimellesi ja määritettävä myös portin numero, kuten 25, 465, 587, 2525 tai 8025. Jos et pysty määrittämään käytettävää porttia, ota yhteyttä webmail-isäntään saadaksesi lisätietoja. käyttää.
request_once «Mail.php»;
$from = «Lähettäjän nimi
$to = «Vastaanottajan nimi
$subject = » Aiherivi tässä: «;
$body = » kaikki haluamasi viestit «;
$host = «ssl://yourmailhost.com»;
$portti = «587»;
$username = «käyttäjänimesi tai sähköpostiosoitteesi»;
$password = «salasanasi»;
$headers = array(‘From’ => $from,
‘To’ => $to,
‘Aihe’ => $aihe);
$smtp = Mail::factory(‘smtp’,
array(‘host’ => $isäntä,
‘portti’ => $portti,
‘auth’ => totta,
‘username’ => $käyttäjänimi,
‘salasana’ => $salasana));
$posti = $smtp->lähetä($vastaanottaja, $headers, $body);
if (PEAR::isError($mail)) {
kaiku(«

» . $mail->getMessage() .»


} erilainen {
kaiku(«

Viesti lähetetty onnistuneesti!



Por Markus