Ako správne odosielať emaily v PHP

Z Flexi Hosting Wiki

Revízia z 16:16, 15. január 2012; Datasun (Diskusia | príspevky)
(rozdiel) ← Staršia verzia | Aktuálna úprava (rozdiel) | Novšia verzia → (rozdiel)
Prejsť na: navigácia, hľadanie

Emailové správy pozostávajú z dvoch častí - hlavičiek a tela správy. Medzi hlavičkami sa nachádza adresa odosielateľa (From:) a adresa príjemcu (To:). Je to analogické ako pri klasickej papierovej pošte, kde sú adresy odosielateľa a príjemcu uvedené na jednej strane spolu s textom.

K týmto údajom emailový server doplní obálku (envelope information), analogicky ako obálka dopisu pri papierovej pošte. Obsahuje údaje, kto správu odoslal a kam ju treba doručiť. Adresa odosielateľa v hlavičke From: nemusí byť rovnaká ako adresa uvedená v envelope from. Po dosiahnutí cieľa je adresa z envelope from dosadená do hlavičky ako Return-Path a rovnako sú na túto adresu odosielané automaticky generované správy o stave doručenia (delivery status notifications).

Ako správne odosielať emaily

Väčšina našich zákazníkov neuvádza adresu envelope-from v domnení, že nastavenie hlavičky From: je dostačujúce. V takomto prípade sa ako envelope-from použije adresa uvedená v php.ini (štandardne webmaster@vasadomena). Automatické správy informujúce o stave doručenia sú tak odosielané na nesprávnu adresu (v prípade, že táto adresa neexistuje a nemáte nastavený doménový kôš takéto správy nie sú doručované vôbec).

Funkcia mail()

Funkcia mail() má 4 parametre. Príjemca, predmet, samotný text správy, voliteľné hlavičky a voliteľné parametre pre funkciu sendmail. Odosielateľa treba nastaviť parametrom '-f email'.

<?php
mail('nobody@example.com', 'the subject', 'the message', null, '-f webmaster@example.com');
?>

PHPMailer

Osobné nástroje
Menné priestory
Varianty
Zobrazení
Operácie
Navigácia
Nástroje