آموزش ارسال ایمیل ( Email ) به وسیله PHP
مقدمه :
یکی از نیازهای اساسی کاربران در برنامه های تحت وب ، امکان ارسال ایمیل از طریق فرم
ها یا صفحات وب است .
برای مثال شما در سایت خود قصد دارید تا فرمی طراحی نمایید ، تا کاربران بتوانند نظرات
و یا درخواست های خود در فرم مربوطه وارد کرده و سپس اطلاعات آن ها را به وسیله ایمیل
برای شما ارسال نمایند . همانند آنچه شما می توانید در فرم های
تماس با ما در سایت ما انجام دهید .
زبان PHP به صورت کامل از ارسال ایمیل در صفحات وب پشتیبانی می نماید .
تابع ( mail ، در PHP وظیفه ارسال ایمیل را بر عهده دارد . در این بخش قصد داریم
تا به کمک تابع ( ) mail ، نحوه ارسال ایمیل را در PHP به شما آموزش دهیم .
تابع ( ) mail :
گفتیم که تابع ( ) mail در PHP ، وظیفه ارسال ایمیل را بر عهده دارد . اما این تابع
چگونه کار می کند ؟
تابع ( ) mail ، به وسیله پارامترهایی که برای آن تعریف شده است ، آدرس ایمیل گیرنده
و فرستنده ، موضوع و متن پیام و سایر خصوصیات یک ایمیل را دریافت کرده و سپس آنها را
به مقصد ارسال می کند .
شکل کلی استفاده از این تابع به صورت زیر است :
|
Syntax
|
mail ( to , subject , message , headers ) ;
|
همانطور که در ساختار ارائه شده ، مشاهده می نمایید ، تابع ( ) mail ، دارای پارامترهای
گوناگونی است که هر کدام یکی از موارد لازم یک ایمیل را دریافت می کنند . در جدول زیر
به تشریح هر یک از پارامترهای فوق می پردازیم :
|
توضیح
|
این پارامتر آدرس ایمیل گیرنده یا گیرندگان نامه را دریافت می کند .
استفاده از این پارامتر اجباری است .
|
این پارامتر از نوع متن بوده و عنوان نامه را تعیین می نماید . این پارامتر نمی تواند
بیش از یک خط باشد .
استفاده از این پارامتر اجباری است .
|
این پارامتر از نوع متن بوده و متن نامه را تعیین می کند . هر خط در این متن باید با
یک کاراکتر ( \n ) از خط قبلی و یا بعدی جدا شود . همچنین تعداد کاراکتر هر خط نباید
از 70 کاراکتر بیشتر باشد .
استفاده از این پارامتر اجباری است .
|
این پارامتر از نوع متن بوده و تعیین کننده خواصی مثل From و یا CC ( رونوشت ) است
. هر خط در این متن باید با یک کاراکتر ( \r\n ) از خط قبلی و یا بعدی جدا شود .
استفاده از این پارامتر اختیاری است .
|
پس از اینکه شما را با نحوه کار تابع ( ) mail و پارامترهای آن آشنا کردیم ، در چند
مثال نحوه استفاده عملی از این تابع را به شما نشان می دهیم .
ارسال یک ایمیل ساده به وسیله تابع ( ) mail :
مثال 1 : در مثال زیر یک ایمیل ساده را به وسیله تابع ( ) mail
، ارسال کرده ایم . در این مثال هر کدام از خصوصیات ایمیل را به صورت از قبل تعیین
شده در یک متغیر ذخیره کرده ایم . سپس متغیر ها را به عنوان پارامتر به تابع ( ) mail
ارسال کرده ایم . این تابع نیز ایمیل را ارسال کرده و یک پیام تایید به کاربر نمایش
می دهد .
توجه داشته باشید که این مثال فقط برای نمایش نحوه عملکرد تابع ( ) mail است و اینگونه
ایمیل فرستادن بعید به نظر میاد . در مثال بعدی نحوه ارسال یک ایمیل کامل به وسیله
یک فرم HTML را نشان خواهیم داد .
|
مثال
|
< ? php
$to = "someone@example.com";
$subject = "Test mail";
$message = "Hello! This is a simple email message.";
$from = "someonelse@example.com";
$headers = "From:" . $from
mail ( $to , $subject , $message , $headers ) ;
echo "Mail Sent.";
?>
|
ارسال یک ایمیل به وسیله یک فرم HTML :
مثال 2 : در مثال زیر یک فرم HTML برای دریافت نظرات کاربران
سایت طراحی کرده ایم . این فرم دارای تعدادی کادر متن است که مقادیر لازم را از کاربر
دریافت کرده و سپس آنها را در یک متغیر تعیین شده ، ذخیره می نمایند . سپس این متغیرها
را به عنوان پارامتر به تابع ( ) mail ارسال می کنند تا به ایمیل تعیین شده ارسال شوند
:
|
مثال
|
<html>
<body>
<?php
if (isset($_REQUEST['email']))
// دستور بالا در صورتی که کادر ایمیل پر شده باشد ، ایمیل را
ارسال می کند
{
// ارسال ایمیل
$email = $_REQUEST['email'] ;
$subject = $_REQUEST['subject'] ;
$message = $_REQUEST['message'] ;
mail ( "someone@example.com" , $subject
, $message , "From:" . $email) ;
echo "از ارسال ایمیل شما متشکریم";
}
else
// اگر کادر ایمیل پر نشده باشد ، برنامه فرم زیرا را نمایش می
دهد
{
echo " < form method='post' action='mailform.php'
>
Email : < input name='email' type='text' />
<br />
Subject : < input name='subject' type='text'
/> <br />
Message : <br />
< textarea name='message' rows='15' cols='40' >
< /textarea > <br />
< input type='submit' />
< /form >";
}
?>
</body>
</html>
|
راجع این مطلب
سوال یا اشکالی دارید ؟! آن را در انجمن سایت مطرح نمایید ...
>>>>> ورود به انجمن تخصصی
نطر خودتان درباره این صفحه :