M∙₧e se stßt, ₧e budeme pot°ebovat zaslat sv²m zßkaznφk∙m informaΦnφ e-mail, ve kterΘm mohou b²t uvedeny nap°φklad kni₧nφ novinky. Maily m∙₧eme jednoduÜe zasφlat pomocφ mail serveru, kter² zajistφ odeslßnφ zprßvy a pot°ebn²ch PHP funkcφ.
Pro zasφlßnφ mail∙ je pot°eba mφt nainstalovßn pat°iΦn² mail server (SMTP server). Pomocφ tohoto serveru m∙₧eme jednoduÜe zasφlat zprßvy podle libosti. Nynφ si ukß₧eme jednotlivΘ kroky, kterΘ povedou k instalaci mail serveru.
Pro naÜe testovacφ ·Φely postaΦφ obyΦejn² mail server, v naÜem p°φpad∞ oblφben² ArGoSoft Mail Server. Tento mail server si m∙₧eme stßhnout na adrese http://www.argosoft.com/applications/mailserver/download.asp nebo v sekci Download.
Po ·sp∞ÜnΘm sta₧enφ, nainstalovßnφ a spuÜt∞nφ p°ejdeme do zßlo₧ky Options (CTRL + O), kde nastavφme do pole DNS Server adresu 127.0.0.1 (localhost).
Nynφ je pot°eba v zßlo₧ce Local Domains nastavit vlastnφ domΘnu. Do pole tedy napφÜeme nap°φklad test.cz a klikneme na tlaΦφtko Add.
Nynφ ji₧ zb²va jen p°idat jednotlivΘ u₧ivatelskΘ ·Φty do naÜφ domΘny test.cz. V zßlo₧ce Users (CTRL + U) kliknutφm na ikonu Add New User.
Nakonec jeÜt∞ musφme nastavit v php.ini v sekci [mail function] nastavit volby:
Pro zasφlßnφ mail∙ v PHP m∙₧eme vyu₧φt funkce:
P°φklady:
<? // ZaÜle mail na adresu "test@test.cz" s uveden²m p°edm∞tem a textem. mail("test@test.cz", "Testovaci zprava", "Ahoj, toto je testovaci zprava"); ?>
<? // ZaÜle mail na adresu "test@test.cz" s uveden²m p°edm∞tem, textem a hlaviΦkami. mail("test@test.cz", "Testovaci zprava", "Ahoj, toto je testovaci zprava", "From: admin@test.cz"); ?>
<? // Sestavφme hlaviΦky $hlavicky = "From: admin@test.cz\r\n"; // od koho e-mail posφlßme $hlavicky .= "X-Priority: 3\r\n"; // priorita 1 (nejvyÜÜφ), 3, 5 (nejni₧Üφ) $hlavicky .= "X-Mailer: moje PHP\r\n"; // informace o zp∙sobu odeslßnφ $hlavicky .= "Return-Path: <admin@test.cz>\r\n"; // zpßteΦnφ mailovß adresa // ZaÜle mail na adresu "test@test.cz" s uveden²m p°edm∞tem, textem a hlaviΦkami. mail("test@test.cz", "Testovaci zprava", "Ahoj, toto je testovaci zprava", $hlavicky); ?>
K zasφlßnφ HTML mail∙ m∙₧eme takΘ vyu₧φt funkce Mail, kdy p°idßme dalÜφ nutnΘ hlaviΦky.
<? // Sestavφme hlaviΦky $hlavicky = "From: admin@test.cz\r\n"; // od koho e-mail posφlßme $hlavicky .= "X-Priority: 3\r\n"; // priorita 1 (nejvyÜÜφ), 3, 5 (nejni₧Üφ) $hlavicky .= "X-Mailer: moje PHP\r\n"; // informace o zp∙sobu odeslßnφ $hlavicky .= "Return-Path: <admin@test.cz>\r\n"; // zpßteΦnφ mailovß adresa $hlavicky .= "MIME-Version: 1.0\r\n"; $hlavicky .= "Content-type: text/html; charset=iso-8859-2\r\n"; // k≤dovßnφ, m∙₧eme takΘ dosadit windows-1250 $zprava = '<html> <head> <title>Testovacφ e-mail</title> </head> <body> <p><b>Testovacφ HTML e-mail</b></p> </body> </html>'; // ZaÜle mail na adresu "test@test.cz" s uveden²m p°edm∞tem, textem a hlaviΦkami. mail("test@test.cz", "Testovaci zprava", $zprava, $hlavicky); ?>
Pro tento dφl to bude vÜe. V p°φÜtφm dφle budeme dßle pokraΦovat v poznßvßnφ jazyka PHP.