با استفاده از تابع mail() در PHP می توانید به راحتی ایمیل های متنی ارسال کنید. اما در بیشتر موارد نیاز است که ایمیل ها HTML خوب را به کاربران ارسال کنید . مثل ایمیل ثبت نام و خوش آمد گویی ، ایمیل ارسال موفقیت آمیز ارتباط با ما ، فاکتور و غیره….
ما یک قالب ایمیل خوش آمد گویی ایجاد کردیم . که در این آموزش قصد داریم از آن استفاده کنیم .
کد PHP
ارستفاده از content-type در header یک ضرورت برای ارسال ایمیل های HTML است چونکه در صورت ست نکردن uft8 امکان دارد متن پیام شما به درسی برای کاربر نمایش داده نشود . header های دیگر مثل From , CC , Bcc و غیره به صورت اختیاری می شود استفاده کرد .متغییر $htmlContent محتوای html ایمیل را داخل خود ذخیره کرده است.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 |
<?php $to = 'user@example.com'; $subject = "Beautiful HTML Email using PHP by NetParadis"; $htmlContent = ' <html> <head> <title>Welcome to NetParadis</title> </head> <body> <h1>Thanks you for joining with us!</h1> <table cellspacing="0" style="border: 2px dashed #FB4314; width: 300px; height: 200px;"> <tr> <th>Name:</th><td>NetParadis</td> </tr> <tr style="background-color: #e0e0e0;"> <th>Email:</th><td>info@netparadis.com</td> </tr> <tr> <th>Website:</th><td><a href="http://www.netparadis.com">www.netparadis.com</a></td> </tr> </table> </body> </html>'; // Set content-type header for sending HTML email $headers = "MIME-Version: 1.0" . "\r\n"; $headers .= "Content-type:text/html;charset=UTF-8" . "\r\n"; // Additional headers $headers .= 'From: NetParadis<sender@example.com>' . "\r\n"; $headers .= 'Cc: welcome@example.com' . "\r\n"; $headers .= 'Bcc: welcome2@example.com' . "\r\n"; // Send email if(mail($to,$subject,$htmlContent,$headers)): $successMsg = 'Email has sent successfully.'; else: $errorMsg = 'Email sending fail.'; endif; ?> |
برای کپی صحیح و کامل کدها ، دابل کلیک کرده تا وارد محیط سفید و کپی شوید در غیر اینصورت امکان دارد اجرای کدها با مشکل روبرو شود
اگر قصد اضافه کردن حجم زیادی از محتوای HTML را دارید ، بهتر است آن را داخل یک فایل (email_template.html) ذخیره و محتوای آن را توسط file_get_contents() دریافت کنید.
1 |
$htmlContent = file_get_contents("email_template.html"); |
امیدوارم از این آموزش ” ارسال ایمیل های HTML ” کوتاه و کاربردی نهایت استفاده را برده باشید . همانطور که دیدید نکته کلیدی این آموزش و روش استفاده درست از header ها و content-type ها بود.
برای دانلود سورس کد ارسال ایمیل HTML زیبا توسط PHP از قسمت زیر اقدام کنید
موفق باشید.
خیلی نوشته ارزنده ای نوشتید. مرسی از شما
سلام عالی بود خیلی ممنونم.
سلام. خوشحالیم که مفید واقع شده.
موفق باشید.
این کدهایی که نوشتین یوزر پسورد ایمیل رو مشخص نکردین. چجور از یک ایمیل به چند ایمیل ارسال ایمیل میشه بدون اینکه لاگ این کنی؟ بعد روی لوکال هاست جواب میده؟ لطفا جوابو به ایمیلم ارسال کنید
سلام. تابع mail() در php از پروتکل SMTP از پیش تنظیم شده هاست استفاده می کنه که نیازی به مشخص کردن پسورد و موارد غیره نداره کافیه تابع رو با مقادیر مشخصی صدا بزنید و ایمیل ارسال بشه.
اگر قصد دارید از سرور های SMTP پولی یا خود gmail استفاده کنید نیاز است یورز و پسورد را وارد کنید و یا کلید اختصاصی را استفاده کنید.
ارسال ایمیل با GMAIL در PHP
موفق باشید.