PHP Email Sending

Introduction to PHP Email Sending

PHP आपको कई महत्वपूर्ण features provide करती है। PHP का एक ऐसा ही महत्वपूर्ण feature ये है की आप PHP के द्वारा emails भी send कर सकते है। Email customers से interact करने का एक सरल और प्रभावशाली माध्यम है।

Email के द्वारा brands और organizations किसी customer से personally connect रहते है। साथ ही email किसी भी प्रकार की information directly संबधित व्यक्ति तक भेजने के लिए उपयोग किये जाते है।

PHP का ये feature बहुत ही उपयोगी है। आप इसे कई प्रकार से use कर सकते है। उदाहरण के लिए आप अपनी website में एक form create करते है जो दूसरी अन्य information के साथ users से उनकी email id भी प्राप्त करता है। User के form को submit करने के बाद आप dynamically PHP द्वारा एक email send कर सकते है जिसमे user को उनकी information प्रदान करने के लिए धन्यवाद कहा जा सकता है।

इसी प्रकार मान लीजिये आपके पास 10000 से ज्यादा customers का data है। आपकी organization ने कोई नया product launch किया है आप सभी customers को इस product के बारे में email द्वारा बताना चाहते है। इसके लिए आपको हर customer को अलग से email send करने की आवश्यकता नहीं है आप PHP द्वारा सभी customers की email id database से access करके एक ही बार में email भेज सकते है।

PHP के द्वारा आप text email ही नहीं बल्कि HTML emails भी send कर सकते है। HTML emails में emails को attractive बनाने के लिए HTML code का प्रयोग किया जाता है। इस प्रकार के emails आपके inbox में किसी webpage की तरह show होते है।

PHP द्वारा email send करने के लिए एक live server की आवश्यकता होती है। आप local host से email send नहीं कर सकते है। Email send करने से पहले आपको ये भी check कर लेना चाहिए की आपकी php.ini file emails send करने के लिए configured है या नहीं।

Email भेजने के लिए php.ini file के [mail function] section में SMTP server और sendmail_from attributes set होने चाहिए। SMTP server आपके email server को बताता है और sendmail_from उस email id को बताता है जिससे emails send किये जाएंगे।

इन attributes को आप ini_set() function द्वारा set कर सकते है। इस function में दो arguments pass किये जाते है पहला argument attribute का नाम होता है और दूसरा argument उसकी value होती है। इस function द्वारा sendmail_from attribute को set करने का उदाहरण निचे दिया जा रहा है।

ini_set("sendmail_from","[email protected]");

PHP mail() Function

Emails send करने के लिए PHP आपको built in mail() function provide करती है। इस function का general syntax निचे दिया जा रहा है।

bool mail(string $to, string $subject, string $message, string $additional_header, string $additional parameters)

जैसा की आप ऊपर दिए गए syntax में देख सकते है mail() function एक bool value return करता है। इसे आप if statement में use कर सकते है और पता लगा सकते है की mail send हुआ या नहीं।

PHP mail() function में 5 arguments pass किये जाते है। इन arguments को आप directly भी mail () function में pass कर सकते है या फिर इन्हे variables में store करवाके variables को भी mail() function में pass किया जा सकता है।

PHP mail() function में pass किये जाने वाले arguments के बारे में निचे बताया जा रहा है।

to

यह receiver की email id होती है जिसे mail send किया जा रहा है।

subject

यह भेजे जाने वाले email का subject होता है।

message

यह वह message होता है जो आप email द्वारा send करना चाहते है।

additional_headers (optional)

यह argument extra headers add करने के लिए use किया जाता है। Additional headers email header के निचे show होती है। Additional headers द्वारा आप From, CC और BCC जैसी information pass करते है।

additional_parameters (optional)

इस argument द्वारा mail send करने वाले program को additional flags pass किये जाते है।

Example

PHP द्वारा email send करने का simple उदाहरण निचे दिया जा रहा है।

example.php:

<html>
<head>
<title>PHP Email Sending Demo</title>
</head>

<body>

<h2>PHP Email Sending Demo</title>

<form action="file1.php" method="post">
From : <input type="text" name="From"><br /> <br />
To : <input type="text" name="To"><br /> <br />
Subject : <input type="text" name="Subject"> <br /> <br />
Message : <textarea name="Message" rows="4" cols="30"></textarea><br /> <br />
<input type="submit" value="Submit">
</form>

</body>
</html>

file1.php:

<?php

$from = $_POST['From'];
$to = $_POST['To'];
$subject = $_POST['Subject'];
$message = $_POST['Message'];

ini_set("sendmail_from",$from);

if(mail($to,$subject,$message))
{
      echo "Mail sent successfully.";
}
else
{
      echo "Unable to send email. Some error occurred.";
}

?>

ऊपर दिए गए उदाहरण में mail() function को if statement में call किया गया है। इस उदाहरण में mail() function में directly values ना pass करके variables को pass किया गया है। इन variables में values होंगी जो user form में भरेगा।

यदि आप local host से email send करने का प्रयास करेंगे तो आपको failed to connect mail server error show होगी। जैसा की मैने आपको पहले बताया email send करने के लिए live server की आवश्यकता होती है। इसलिए आपको PHP से email send करने के लिए live server की आवश्यकता होगी।

यदि live server से connect होने के बाद भी किसी error की वजह से email नहीं send होगा तो else part का echo statement execute होगा नहीं तो if part का echo statement execute होगा।

PHP email sending in Hindi PHP email sending